$$database_handle = DBI->connect(map {exists $arguments{$_} ? $arguments{$_} : $caller->database_$_()} qw(data_source_name username password taint)) or die "Could not connect to the database: $DBI::errstr";