~ubuntu-branches/ubuntu/oneiric/bioperl/oneiric

« back to all changes in this revision

Viewing changes to Bio/Factory/ObjectFactoryI.pm

  • Committer: Bazaar Package Importer
  • Author(s): Matt Hope
  • Date: 2004-04-18 14:24:11 UTC
  • mfrom: (1.2.1 upstream) (2.1.1 warty)
  • Revision ID: james.westby@ubuntu.com-20040418142411-gr92uexquw4w8liq
Tags: 1.4-1
* New upstream release
* Examples and working code are installed by default to usr/bin,
  this has been moved to usr/share/doc/bioperl/bin

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
# $Id: ObjectFactoryI.pm,v 1.3 2002/10/22 07:45:14 lapp Exp $
 
2
#
 
3
# BioPerl module for Bio::Factory::ObjectFactoryI
 
4
#
 
5
# Cared for by Jason Stajich <jason@bioperl.org>
 
6
#
 
7
# Copyright Jason Stajich
 
8
#
 
9
# You may distribute this module under the same terms as perl itself
 
10
 
 
11
# POD documentation - main docs before the code
 
12
 
 
13
=head1 NAME
 
14
 
 
15
Bio::Factory::ObjectFactoryI - A General object creator factory
 
16
 
 
17
=head1 SYNOPSIS
 
18
 
 
19
# see the implementations of this interface for details but
 
20
# basically
 
21
 
 
22
    my $obj = $factory->create(%args);
 
23
 
 
24
=head1 DESCRIPTION
 
25
 
 
26
This interface is the basic structure for a factory which creates new
 
27
objects.  In this case it is up to the implementer to check arguments
 
28
and initialize whatever new object the implementing class is designed for.
 
29
 
 
30
=head1 FEEDBACK
 
31
 
 
32
=head2 Mailing Lists
 
33
 
 
34
User feedback is an integral part of the evolution of this and other
 
35
Bioperl modules. Send your comments and suggestions preferably to
 
36
the Bioperl mailing list.  Your participation is much appreciated.
 
37
 
 
38
  bioperl-l@bioperl.org              - General discussion
 
39
  http://bioperl.org/MailList.shtml  - About the mailing lists
 
40
 
 
41
=head2 Reporting Bugs
 
42
 
 
43
Report bugs to the Bioperl bug tracking system to help us keep track
 
44
of the bugs and their resolution. Bug reports can be submitted via
 
45
email or the web:
 
46
 
 
47
  bioperl-bugs@bioperl.org
 
48
  http://bugzilla.bioperl.org/
 
49
 
 
50
=head1 AUTHOR - Jason Stajich
 
51
 
 
52
Email jason@bioperl.org
 
53
 
 
54
Describe contact details here
 
55
 
 
56
=head1 CONTRIBUTORS
 
57
 
 
58
Additional contributors names and emails here
 
59
 
 
60
=head1 APPENDIX
 
61
 
 
62
The rest of the documentation details each of the object methods.
 
63
Internal methods are usually preceded with a _
 
64
 
 
65
=cut
 
66
 
 
67
 
 
68
# Let the code begin...
 
69
 
 
70
 
 
71
package Bio::Factory::ObjectFactoryI;
 
72
use vars qw(@ISA);
 
73
use strict;
 
74
use Carp;
 
75
use Bio::Root::RootI;
 
76
 
 
77
@ISA = qw( Bio::Root::RootI );
 
78
 
 
79
=head2 create
 
80
 
 
81
 Title   : create
 
82
 Usage   : $factory->create(%args)
 
83
 Function: Create a new object  
 
84
 Returns : a new object
 
85
 Args    : hash of initialization parameters
 
86
 
 
87
 
 
88
=cut
 
89
 
 
90
sub create{
 
91
   my ($self,@args) = @_;
 
92
   $self->throw_not_implemented();
 
93
}
 
94
 
 
95
=head2 create_object
 
96
 
 
97
 Title   : create_object
 
98
 Usage   : $obj = $factory->create_object(%args)
 
99
 Function: Create a new object.
 
100
 
 
101
           This is supposed to supercede create(). Right now it only delegates
 
102
           to create().
 
103
 Returns : a new object
 
104
 Args    : hash of initialization parameters
 
105
 
 
106
 
 
107
=cut
 
108
 
 
109
sub create_object{
 
110
   my ($self,@args) = @_;
 
111
   return $self->create(@args);
 
112
}
 
113
 
 
114
1;