NAME

Bio::DB::Failover - A Bio::DB::RandomAccessI compliant class which wraps a prioritized list of DBs

SYNOPSIS

$failover = Bio::DB::Failover->new();

$failover->add_database($db);

# fail over Bio::DB::RandomAccessI.pm

# this will check each database in priority, returning when
# the first one succeeds

$seq = $failover->get_Seq_by_id($id);

DESCRIPTION

This module provides fail over access to a set of Bio::DB::RandomAccessI objects.

CONTACT

Ewan Birney <birney@ebi.ac.uk> originally wrote this class.

Reporting Bugs

Report bugs to the Bioperl bug tracking system to help us keep track the bugs and their resolution. Bug reports can be submitted via the web:

http://bugzilla.open-bio.org/

APPENDIX

The rest of the documentation details each of the object methods. Internal methods are usually preceded with a _

add_database

Title   : add_database
Usage   : add_database(%db)
Function: Adds a database to the Failover object
Returns : Count of number of databases
Args    : Array of db resources
Throws  : Not a RandomAccessI exception

get_Seq_by_id

Title   : get_Seq_by_id
Usage   : $seq = $db->get_Seq_by_id('ROA1_HUMAN')
Function: Gets a Bio::Seq object by its name
Returns : a Bio::Seq object
Args    : the id (as a string) of a sequence
Throws  : "no id" exception

get_Seq_by_acc

Title   : get_Seq_by_acc
Usage   : $seq = $db->get_Seq_by_acc('X77802');
Function: Gets a Bio::Seq object by accession number
Returns : A Bio::Seq object
Args    : accession number (as a string)
Throws  : "no id" exception

get_Seq_by_version

Title   : get_Seq_by_version
Usage   : $seq = $db->get_Seq_by_acc('X77802.2');
Function: Gets a Bio::Seq object by versioned accession number
Returns : A Bio::Seq object
Args    : accession number (as a string)
Throws  : "acc does not exist" exception