annotate variant_effect_predictor/Bio/EnsEMBL/Attribute.pm @ 2:a5976b2dce6f

changing defualt values for ensembl database
author mahtabm
date Thu, 11 Apr 2013 17:15:42 +1000
parents 1f6dce3d34e0
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
1 =head1 LICENSE
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
2
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
3 Copyright (c) 1999-2012 The European Bioinformatics Institute and
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
4 Genome Research Limited. All rights reserved.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
5
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
6 This software is distributed under a modified Apache license.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
7 For license details, please see
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
8
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
9 http://www.ensembl.org/info/about/code_licence.html
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
10
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
11 =head1 CONTACT
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
12
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
13 Please email comments or questions to the public Ensembl
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
14 developers list at <dev@ensembl.org>.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
15
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
16 Questions may also be sent to the Ensembl help desk at
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
17 <helpdesk@ensembl.org>.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
18
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
19 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
20
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
21 =head1 NAME
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
22
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
23 Bio::EnsEMBL::Attribute - A generic Attribute class.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
24
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
25 =head1 SYNOPSIS
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
26
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
27 use Bio::EnsEMBL::Attribute;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
28
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
29 my $attribute = Bio::EnsEMBL::Attribute->new
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
30 (-CODE => 'myCode',
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
31 -NAME => 'My Attribute',
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
32 -DESCRIPTION => 'This is my attribute description.',
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
33 -VALUE => '10023');
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
34
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
35 print $attrib->name(), "\n";
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
36 print $attrib->code(), "\n";
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
37 print $attrib->description(), "\n";
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
38 print $attrib->value(), "\n";
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
39
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
40 =head1 DESCRIPTION
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
41
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
42 This is a generic attribute class used to represent attributes
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
43 associated with seq_regions (and their Slices) and MiscFeatures.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
44
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
45 =head1 SEE ALSO
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
46
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
47 Bio::EnsEMBL::Slice
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
48 Bio::EnsEMBL::MiscFeature
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
49 Bio::EnsEMBL::DBSQL::AttributeAdaptor
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
50
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
51 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
52
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
53 package Bio::EnsEMBL::Attribute;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
54
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
55 use strict;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
56 use warnings;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
57
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
58 use Bio::EnsEMBL::Utils::Argument qw(rearrange);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
59 use Scalar::Util qw(weaken isweak);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
60
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
61 =head2 new
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
62
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
63 Arg [-CODE] : string - the code for this attribute
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
64 Arg [-NAME] : string - a human readable name for this attribute
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
65 Arg [-DESCRIPTION] : string - a description for this attribute
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
66 Arg [-VALUE] : value - the value of this attribute
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
67 Example : my $attribute = Bio::EnsEMBL::Attribute->new
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
68 (-CODE => 'myCode',
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
69 -NAME => 'My Attribute',
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
70 -DESCRIPTION => 'This is my attribute description.',
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
71 -VALUE => '10023');
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
72 Description : Constructor. Instantiates a Bio::EnsEMBL::Attribute object.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
73 Returntype : Bio::EnsEMBL::Attribute
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
74 Exceptions : none
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
75 Caller : general
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
76 Status : Stable
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
77
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
78 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
79
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
80
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
81 sub new {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
82 my $caller = shift;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
83
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
84 # allow to be called as class or object method
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
85 my $class = ref($caller) || $caller;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
86
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
87 my ($code, $name, $desc, $value) =
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
88 rearrange([qw(CODE NAME DESCRIPTION VALUE)], @_);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
89
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
90 return bless {'code' => $code,
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
91 'name' => $name,
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
92 'description' => $desc,
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
93 'value' => $value}, $class;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
94 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
95
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
96 =head2 new_fast
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
97
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
98 Arg [1] : hashref to be blessed
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
99 Description: Construct a new Bio::EnsEMBL::Attribute using the hashref.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
100 Exceptions : none
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
101 Returntype : Bio::EnsEMBL::Attribute
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
102 Caller : general, subclass constructors
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
103 Status : Stable
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
104
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
105 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
106
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
107
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
108 sub new_fast {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
109 my $class = shift;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
110 my $hashref = shift;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
111 my $self = bless $hashref, $class;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
112 weaken($self->{adaptor}) if ( ! isweak($self->{adaptor}) );
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
113 return $self;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
114 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
115
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
116
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
117 =head2 code
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
118
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
119 Arg [1] : string $code (optional)
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
120 Example : $code = $attribute->code();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
121 Description: Getter/Setter for code attribute
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
122 Returntype : string
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
123 Exceptions : none
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
124 Caller : general
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
125 Status : Stable
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
126
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
127 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
128
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
129 sub code {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
130 my $self = shift;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
131 $self->{'code'} = shift if(@_);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
132 return $self->{'code'};
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
133 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
134
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
135
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
136 =head2 name
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
137
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
138 Arg [1] : string $name (optional)
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
139 Example : $name = $attribute->name();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
140 Description: Getter/Setter for name attribute
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
141 Returntype : string
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
142 Exceptions : none
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
143 Caller : general
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
144 Status : Stable
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
145
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
146 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
147
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
148 sub name {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
149 my $self = shift;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
150 $self->{'name'} = shift if(@_);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
151 return $self->{'name'};
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
152 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
153
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
154 =head2 description
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
155
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
156 Arg [1] : string $description (optional)
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
157 Example : $description = $attribute->description();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
158 Description: Getter/Setter for description attribute
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
159 Returntype : string
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
160 Exceptions : none
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
161 Caller : general
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
162 Status : Stable
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
163
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
164 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
165
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
166 sub description {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
167 my $self = shift;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
168 $self->{'description'} = shift if(@_);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
169 return $self->{'description'};
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
170 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
171
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
172
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
173 =head2 value
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
174
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
175 Arg [1] : string $value (optional)
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
176 Example : $value = $attribute->value();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
177 Description: Getter/Setter for value attribute
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
178 Returntype : string
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
179 Exceptions : none
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
180 Caller : general
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
181 Status : Stable
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
182
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
183 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
184
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
185 sub value {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
186 my $self = shift;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
187 $self->{'value'} = shift if(@_);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
188 return $self->{'value'};
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
189 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
190
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
191
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
192 1;