small update
[bioperl-live.git] / Bio / DBLinkContainerI.pm
blob1ea3e5ce91c05b452eebea1bad3a46c7ded0dd39
1 # $Id$
3 # BioPerl module for Bio::DBLinkContainerI
5 # Cared for by Heikki Lehvaslaiho <heikki-at-bioperl-dot-org>
7 # Copyright Heikki Lehvaslaiho
9 # You may distribute this module under the same terms as perl itself
11 # POD documentation - main docs before the code
13 =head1 NAME
15 Bio::DBLinkContainerI - Abstract interface for any object wanting to use
16 database cross references
18 =head1 SYNOPSIS
20 # get an objects containing database cross reference
22 foreach $obj ( @objs ) {
23 if( $obj->isa('Bio::DBLinkContainerI') ) {
24 foreach $dblink ( $obj->each_DBLink() ) {
25 # do stuff
30 =head1 DESCRIPTION
32 This interface defines the functions one can expect for any object
33 wanting to use database cross-references. This class does not actually
34 provide any implemention, it just provides the definitions of what
35 methods one can call.
37 The database cross-references are implemented as L<Bio::Annotation::DBLink>
38 objects.
40 =head1 FEEDBACK
42 =head2 Mailing Lists
44 User feedback is an integral part of the evolution of this and other
45 Bioperl modules. Send your comments and suggestions preferably to one
46 of the Bioperl mailing lists. Your participation is much appreciated.
48 bioperl-l@bioperl.org - General discussion
49 http://bioperl.org/wiki/Mailing_lists - About the mailing lists
51 =head2 Reporting Bugs
53 Report bugs to the Bioperl bug tracking system to help us keep track
54 the bugs and their resolution. Bug reports can be submitted via the
55 web:
57 http://bugzilla.open-bio.org/
59 =head1 AUTHOR - Heikki Lehvaslaiho
61 Email: heikki-at-bioperl-dot-org
63 =head1 APPENDIX
65 The rest of the documentation details each of the object
66 methods. Internal methods are usually preceded with a _
68 =cut
70 # Let the code begin...
72 package Bio::DBLinkContainerI;
73 use strict;
75 use Carp;
77 use base qw(Bio::Root::RootI);
79 =head2 each_DBLink
81 Title : each_DBLink
82 Usage : foreach $ref ( $self->each_DBlink() )
83 Function: gets an array of DBlink of objects
84 Example :
85 Returns : an array of Bio::Annotation::DBLink objects
86 Args : none
89 =cut
91 sub each_DBLink{
92 my ($self) = @_;
93 my $class = ref($self) || $self;
94 $self->throw("Class $class did not define method 'each_DBLink' for interface DBLinkContainerI");