annotate variant_effect_predictor/Bio/EnsEMBL/Compara/GenomeDB.pm @ 1:d6778b5d8382 draft default tip

Deleted selected files
author willmclaren
date Fri, 03 Aug 2012 10:05:43 -0400
parents 21066c0abaf5
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
1 =head1 LICENSE
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
2
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
3 Copyright (c) 1999-2012 The European Bioinformatics Institute and
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
4 Genome Research Limited. All rights reserved.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
5
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
6 This software is distributed under a modified Apache license.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
7 For license details, please see
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
8
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
9 http://www.ensembl.org/info/about/code_licence.html
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
10
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
11 =head1 CONTACT
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
12
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
13 Please email comments or questions to the public Ensembl
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
14 developers list at <dev@ensembl.org>.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
15
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
16 Questions may also be sent to the Ensembl help desk at
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
17 <helpdesk@ensembl.org>.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
18
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
19 =head1 NAME
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
20
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
21 Bio::EnsEMBL::Compara::GenomeDB - DESCRIPTION of Object
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
22
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
23 =head1 SYNOPSIS
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
24 use Bio::EnsEMBL::Compara::DnaFrag;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
25 my $genome_db = new Bio::EnsEMBL::Compara::GenomeDB();
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
26
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
27 SET VALUES
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
28 $genome_db->dbID(22);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
29 $genome_db->dba($dba);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
30 $genome_db->name("Homo sapiens");
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
31 $genome_db->assembly("NCBI36");
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
32 $genome_db->taxon_id(9606);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
33 $genome_db->taxon($taxon);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
34 $genome_db->genebuild("2006-12-Ensembl");
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
35 $genome_db->assembly_default(1);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
36 $genome_db->locator("Bio::EnsEMBL::DBSQL::DBAdaptor/host=???;port=???;user=???;dbname=homo_sapiens_core_51_36m;species=Homo sapiens;disconnect_when_inactive=1");
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
37
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
38 GET VALUES
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
39 $dbID = $genome_db->dbID;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
40 $genome_db_adaptor = $genome_db->adaptor;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
41 $name = $genome_db->name;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
42 $assembly = $genome_db->assembly;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
43 $taxon_id = $genome_db->taxon_id;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
44 $taxon = $genome_db->taxon;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
45 $genebuild = $genome_db->genebuild;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
46 $assembly_default = $genome_db->assembly_default;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
47 $locator = $genome_db->locator;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
48
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
49
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
50 =head1 DESCRIPTION
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
51
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
52 The GenomeDB object stores information about each species including the taxon_id, species name, assembly, genebuild and the location of the core database.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
53
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
54 =head1 APPENDIX
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
55
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
56 The rest of the documentation details each of the object methods. Internal methods are usually preceded with a _
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
57
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
58 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
59
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
60
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
61 # Let the code begin...
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
62
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
63
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
64 package Bio::EnsEMBL::Compara::GenomeDB;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
65
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
66 use strict;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
67
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
68 use Bio::EnsEMBL::Utils::Exception qw(warning deprecate throw);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
69 use Bio::EnsEMBL::DBLoader;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
70
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
71 =head2 new
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
72
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
73 Example :
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
74 my $genome_db = new Bio::EnsEMBL::Compara::GenomeDB();
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
75 $genome_db->dba($dba);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
76 $genome_db->name("Homo sapiens");
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
77 $genome_db->assembly("NCBI36");
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
78 $genome_db->taxon_id(9606);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
79 $genome_db->dbID(22);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
80 $genome_db->genebuild("2006-12-Ensembl");
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
81
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
82 Description: Creates a new GenomeDB object
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
83 Returntype : Bio::EnsEMBL::Compara::GenomeDB
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
84 Exceptions : none
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
85 Caller : general
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
86 Status : Stable
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
87
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
88 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
89
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
90 sub new {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
91 my($caller, $dba, $name, $assembly, $taxon_id, $dbID, $genebuild) = @_;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
92
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
93 my $class = ref($caller) || $caller;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
94 my $self = bless({}, $class);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
95
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
96 $dba && $self->db_adaptor($dba);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
97 $name && $self->name($name);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
98 $assembly && $self->assembly($assembly);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
99 $taxon_id && $self->taxon_id($taxon_id);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
100 $dbID && $self->dbID($dbID);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
101 $genebuild && $self->genebuild($genebuild);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
102
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
103 return $self;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
104 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
105
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
106 =head2 new_fast
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
107
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
108 Arg [1] : hash reference $hashref
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
109 Example :
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
110 Description: This is an ultra fast constructor which requires knowledge of
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
111 the objects internals to be used.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
112 Returntype : Bio::EnsEMBL::Compara::GenomeDB
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
113 Exceptions : none
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
114 Caller : Bio::EnsEMBL::Compara::DBSQL::GenomeDBAdaptor
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
115 Status : Stable
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
116
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
117 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
118
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
119 sub new_fast {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
120 my $class = shift;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
121 my $hashref = shift;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
122
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
123 return bless $hashref, $class;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
124 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
125
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
126
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
127 =head2 db_adaptor
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
128
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
129 Arg [1] : (optional) Bio::EnsEMBL::DBSQL::DBAdaptor $dba
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
130 The DBAdaptor containing sequence information for the genome
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
131 represented by this object.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
132 Example : $gdb->db_adaptor($dba);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
133 Description: Getter/Setter for the DBAdaptor containing sequence
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
134 information for the genome represented by this object.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
135 Returntype : Bio::EnsEMBL::DBSQL::DBAdaptor
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
136 Caller : general
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
137 Status : Stable
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
138
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
139 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
140
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
141 sub db_adaptor {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
142 my ( $self, $dba ) = @_;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
143
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
144 if($dba) {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
145 $self->{'_db_adaptor'} = ($dba && $dba->isa('Bio::EnsEMBL::DBSQL::DBAdaptor'))
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
146 ? $dba
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
147 : undef;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
148 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
149
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
150 unless($self->{'_db_adaptor'}) {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
151 $self->{'_db_adaptor'} = $self->connect_to_genome_locator;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
152 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
153
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
154 return $self->{'_db_adaptor'};
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
155 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
156
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
157
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
158
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
159 =head2 name
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
160
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
161 Arg [1] : (optional) string $value
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
162 Example : $gdb->name('Homo sapiens');
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
163 Description: Getter setter for the name of this genome database, usually
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
164 just the species name.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
165 Returntype : string
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
166 Exceptions : none
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
167 Caller : general
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
168 Status : Stable
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
169
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
170 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
171
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
172 sub name{
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
173 my ($self,$value) = @_;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
174
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
175 if( defined $value) {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
176 $self->{'name'} = $value;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
177 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
178 return $self->{'name'};
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
179 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
180
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
181
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
182 =head2 short_name
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
183
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
184 Example : $gdb->short_name;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
185 Description: The name of this genome in the Gspe ('G'enera
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
186 'spe'cies) format. Can also handle 'G'enera 's'pecies
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
187 's'ub 's'pecies (Gsss)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
188 Returntype : string
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
189 Exceptions : none
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
190 Caller : general
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
191 Status : Stable
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
192
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
193 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
194
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
195 sub short_name {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
196 my $self = shift;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
197 my $name = $self->name;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
198 $name =~ s/\b(\w)/\U$1/g;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
199 $name =~ s/\_/\ /g;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
200 unless( $name =~ s/(\S)\S*\s(\S)\S*\s(\S)\S*\s(\S).*/$1$2$3$4/ ){
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
201 unless( $name =~ s/(\S)\S*\s(\S)\S*\s(\S{2,2}).*/$1$2$3/ ){
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
202 unless( $name =~ s/(\S)\S*\s(\S{3,3}).*/$1$2/ ){
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
203 $name = substr( $name, 0, 4 );
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
204 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
205 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
206 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
207 return $name;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
208 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
209
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
210 =head2 get_short_name
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
211
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
212 Example : $gdb->get_short_name;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
213 Description: The name of this genome in the Gspe ('G'enera
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
214 'spe'cies) format. Can also handle 'G'enera 's'pecies
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
215 's'ub 's'pecies (Gsss)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
216 Returntype : string
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
217 Exceptions : none
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
218 Caller : general
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
219 Status : Stable
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
220
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
221 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
222
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
223 sub get_short_name {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
224 my $self = shift;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
225 return $self->short_name;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
226 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
227
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
228
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
229 =head2 dbID
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
230
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
231 Arg [1] : (optional) int $value the new value of this objects database
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
232 identifier
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
233 Example : $dbID = $genome_db->dbID;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
234 Description: Getter/Setter for the internal identifier of this GenomeDB
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
235 Returntype : int
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
236 Exceptions : none
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
237 Caller : general
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
238 Status : Stable
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
239
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
240 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
241
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
242 sub dbID{
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
243 my ($self,$value) = @_;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
244 if( defined $value) {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
245 $self->{'dbID'} = $value;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
246 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
247 return $self->{'dbID'};
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
248 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
249
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
250
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
251 =head2 adaptor
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
252
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
253 Arg [1] : (optional) Bio::EnsEMBL::Compara::GenomeDBAdaptor $adaptor
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
254 Example : $adaptor = $GenomeDB->adaptor();
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
255 Description: Getter/Setter for the GenomeDB object adaptor used
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
256 by this GenomeDB for database interaction.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
257 Returntype : Bio::EnsEMBL::Compara::GenomeDBAdaptor
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
258 Exceptions : none
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
259 Caller : general
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
260 Status : Stable
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
261
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
262 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
263
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
264 sub adaptor{
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
265 my ($self,$value) = @_;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
266 if( defined $value) {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
267 $self->{'adaptor'} = $value;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
268 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
269 return $self->{'adaptor'};
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
270 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
271
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
272
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
273 =head2 assembly
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
274
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
275 Arg [1] : (optional) string
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
276 Example : $gdb->assembly('NCBI36');
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
277 Description: Getter/Setter for the assembly type of this genome db.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
278 Returntype : string
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
279 Exceptions : none
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
280 Caller : general
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
281 Status : Stable
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
282
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
283 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
284
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
285 sub assembly {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
286 my $self = shift;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
287 my $assembly = shift;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
288
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
289 if($assembly) {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
290 $self->{'assembly'} = $assembly;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
291 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
292 return $self->{'assembly'};
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
293 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
294
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
295 =head2 assembly_default
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
296
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
297 Arg [1] : (optional) int
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
298 Example : $gdb->assembly_default(1);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
299 Description: Getter/Setter for the assembly_default of this genome db.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
300 Returntype : int
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
301 Exceptions : none
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
302 Caller : general
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
303 Status : Stable
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
304
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
305 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
306
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
307 sub assembly_default {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
308 my $self = shift;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
309 my $boolean = shift;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
310
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
311 if(defined $boolean) {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
312 $self->{'assembly_default'} = $boolean;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
313 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
314 $self->{'assembly_default'}='1' unless(defined($self->{'assembly_default'}));
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
315 return $self->{'assembly_default'};
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
316 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
317
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
318 =head2 genebuild
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
319
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
320 Arg [1] : (optional) string
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
321 Example : $gdb->genebuild('2006-12-Ensembl');
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
322 Description: Getter/Setter for the genebuild type of this genome db.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
323 Returntype : string
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
324 Exceptions : none
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
325 Caller : general
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
326 Status : Stable
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
327
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
328 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
329
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
330 sub genebuild {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
331 my $self = shift;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
332 $self->{'genebuild'} = shift if (@_);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
333 $self->{'genebuild'}='' unless(defined($self->{'genebuild'}));
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
334 return $self->{'genebuild'};
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
335 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
336
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
337
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
338 =head2 taxon_id
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
339
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
340 Arg [1] : (optional) int
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
341 Example : $gdb->taxon_id(9606);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
342 Description: Getter/Setter for the taxon id of the contained genome db
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
343 Returntype : int
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
344 Exceptions : none
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
345 Caller : general
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
346 Status : Stable
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
347
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
348 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
349
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
350 sub taxon_id {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
351 my $self = shift;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
352 my $taxon_id = shift;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
353
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
354 if(defined $taxon_id) {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
355 $self->{'taxon_id'} = $taxon_id;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
356 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
357 return $self->{'taxon_id'};
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
358 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
359
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
360 =head2 taxon
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
361
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
362 Description: uses taxon_id to fetch the NCBITaxon object
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
363 Returntype : Bio::EnsEMBL::Compara::NCBITaxon object
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
364 Exceptions : if taxon_id or adaptor not defined
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
365 Caller : general
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
366 Status : Stable
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
367
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
368 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
369
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
370 sub taxon {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
371 my $self = shift;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
372
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
373 return $self->{'_taxon'} if(defined $self->{'_taxon'});
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
374
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
375 unless (defined $self->taxon_id and $self->adaptor) {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
376 throw("can't fetch Taxon without a taxon_id and an adaptor");
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
377 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
378 my $ncbi_taxon_adaptor = $self->adaptor->db->get_NCBITaxonAdaptor;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
379 $self->{'_taxon'} = $ncbi_taxon_adaptor->fetch_node_by_taxon_id($self->{'taxon_id'});
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
380 return $self->{'_taxon'};
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
381 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
382
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
383
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
384 =head2 locator
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
385
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
386 Arg [1] : string
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
387 Description: Returns a string which describes where the external genome (ensembl core)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
388 database base is located. Locator format is:
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
389 "Bio::EnsEMBL::DBSQL::DBAdaptor/host=ecs4port=3351;user=ensro;dbname=mus_musculus_core_20_32"
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
390 Returntype : string
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
391 Exceptions : none
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
392 Caller : general
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
393 Status : Stable
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
394
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
395 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
396
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
397 sub locator {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
398 my $self = shift;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
399 $self->{'locator'} = shift if (@_);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
400 $self->{'locator'}='' unless(defined($self->{'locator'}));
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
401 return $self->{'locator'};
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
402 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
403
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
404 =head2 connect_to_genome_locator
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
405
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
406 Arg [1] : string
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
407 Description: uses the locator string to connect to the external genome database
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
408 Returntype : DBConnection/DBAdaptor defined in locator string
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
409 (usually a Bio::EnsEMBL::DBSQL::DBAdaptor)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
410 return undef if locator undefined or unable to connect
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
411 Exceptions : none
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
412 Caller : internal private method
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
413 Status : Stable
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
414
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
415 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
416
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
417 sub connect_to_genome_locator {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
418 my $self = shift;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
419
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
420 return undef if($self->locator eq '');
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
421
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
422 my $genomeDBA = undef;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
423 eval {$genomeDBA = Bio::EnsEMBL::DBLoader->new($self->locator); };
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
424 warn "The locator could not be loaded because: $@" if $@;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
425 return $genomeDBA;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
426 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
427
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
428
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
429 =head2 toString
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
430
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
431 Args : (none)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
432 Example : print $dbID->toString()."\n";
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
433 Description: returns a stringified representation of the object
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
434 Returntype : string
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
435
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
436 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
437
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
438 sub toString {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
439 my $self = shift;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
440
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
441 return ref($self).": dbID=".($self->dbID || '?')
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
442 .", name='".$self->name
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
443 ."', assembly='".$self->assembly
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
444 ."', genebuild='".$self->genebuild
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
445 ."', taxon_id='".$self->taxon_id
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
446 ."', locator='".$self->locator
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
447 ."'";
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
448 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
449
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
450
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
451 1;