my $seg = Bio::EnsEMBL::Pipeline::RunnableDB::ProteinAnnotation::PIRSF->
new ( -db => $db,
-input_id => $input_id,
-analysis => $analysis,
);
$seg->fetch_input; # gets sequence from DB
$seg->run;
$seg->write_output; # writes features to to DB
None available.
sub fetch_input
{ my ($self) = @_;
$self->SUPER::fetch_input;
my @query_seqs;
if (ref($self->query) and $self->query->isa("Bio::PrimarySeq")) {
push @query_seqs, $self->query;
} elsif (-e $self->query) {
my $seqio = Bio::SeqIO->new(-format => 'fasta',
-file => $self->query);
while(my $seq = $seqio->next_seq) {
push @query_seqs, $seq;
}
$seqio->close;
} else {
throw($self->query . " is neither an object ref nor a file name\n");
}
foreach my $seq (@query_seqs) {
my $run = Bio::EnsEMBL::Analysis::Runnable::ProteinAnnotation::PIRSF->
new(-query => $seq,
-analysis => $self->analysis,
-database => $self->analysis->db_file,
%{$self->parameters_hash}
);
$self->runnable($run);
} } |