Skip to content
Snippets Groups Projects
Commit 108ba996 authored by Andreas Kusalananda Kähäri's avatar Andreas Kusalananda Kähäri
Browse files

Only try to parse release info data if we know we can get to that data.

parent fb021300
No related branches found
No related tags found
No related merge requests found
......@@ -128,25 +128,28 @@ sub run {
print "\t" . $count{$db} . " $db loaded.\n";
}
# Parse the second file that we got. This is assumed to be the HTML
# file that will contain the release information.
my $release;
my $release_io = $self->get_filehandle($release_file);
while ( defined( my $line = $release_io->getline() ) ) {
if ( $line =~ m#<b>(Release [0-9.]+, \S+ \S+ \S+ \S+)</b># ) {
$release = $1;
$release =~ s#</?sup>##g;
last;
if ( defined $release_file ) {
# Parse the second file that we got. This is assumed to be the
# HTML file that will contain the release information.
my $release;
my $release_io = $self->get_filehandle($release_file);
while ( defined( my $line = $release_io->getline() ) ) {
if ( $line =~ m#<b>(Release [0-9.]+, \S+ \S+ \S+ \S+)</b># )
{
$release = $1;
$release =~ s#</?sup>##g;
last;
}
}
}
$release_io->close();
$release_io->close();
if ( defined $release ) {
print "Interpro release is '$release'\n";
$self->set_release( $source_id, $release );
} else {
print "Did not find release info in '$release_file'\n";
if ( defined $release ) {
print "Interpro release is '$release'\n";
$self->set_release( $source_id, $release );
} else {
print "Did not find release info in '$release_file'\n";
}
}
return 0;
......
......@@ -77,34 +77,36 @@ sub run {
return 1;
}
# These two lines are duplicated from the create_xrefs() method
# below...
my $sp_pred_source_id =
$self->get_source_id_for_source_name(
'Uniprot/SWISSPROT_predicted');
my $sptr_pred_source_id =
$self->get_source_id_for_source_name(
'Uniprot/SPTREMBL_predicted');
# Parse Swiss-Prot and SpTrEMBL release info from
# $release_file.
my $release_io = $self->get_filehandle($release_file);
while ( defined( my $line = $release_io->getline() ) ) {
if ( $line =~ m#(UniProtKB/Swiss-Prot Release .*)# ) {
$sp_release = $1;
print "Swiss-Prot release is '$sp_release'\n";
} elsif ( $line =~ m#(UniProtKB/TrEMBL Release .*)# ) {
$sptr_release = $1;
print "SpTrEMBL release is '$sptr_release'\n";
if ( defined $release_file ) {
# These two lines are duplicated from the create_xrefs() method
# below...
my $sp_pred_source_id =
$self->get_source_id_for_source_name(
'Uniprot/SWISSPROT_predicted');
my $sptr_pred_source_id =
$self->get_source_id_for_source_name(
'Uniprot/SPTREMBL_predicted');
# Parse Swiss-Prot and SpTrEMBL release info from
# $release_file.
my $release_io = $self->get_filehandle($release_file);
while ( defined( my $line = $release_io->getline() ) ) {
if ( $line =~ m#(UniProtKB/Swiss-Prot Release .*)# ) {
$sp_release = $1;
print "Swiss-Prot release is '$sp_release'\n";
} elsif ( $line =~ m#(UniProtKB/TrEMBL Release .*)# ) {
$sptr_release = $1;
print "SpTrEMBL release is '$sptr_release'\n";
}
}
}
$release_io->close();
$release_io->close();
# Set releases
$self->set_release( $sp_source_id, $sp_release );
$self->set_release( $sptr_source_id, $sptr_release );
$self->set_release( $sp_pred_source_id, $sp_release );
$self->set_release( $sptr_pred_source_id, $sptr_release );
# Set releases
$self->set_release( $sp_source_id, $sp_release );
$self->set_release( $sptr_source_id, $sptr_release );
$self->set_release( $sp_pred_source_id, $sp_release );
$self->set_release( $sptr_pred_source_id, $sptr_release );
}
return 0; # successfull
......
......@@ -74,15 +74,18 @@ sub run {
$self->upload_xref_object_graphs(\@xrefs);
# Parse and apply the Swiss-Prot release info from $release_file.
my $release_io = $self->get_filehandle($release_file);
while ( defined( my $line = $release_io->getline() ) ) {
if ( $line =~ m#(UniProtKB/Swiss-Prot Release .*)# ) {
print "Swiss-Prot release is '$1'\n";
$self->set_release( $source_id, $1 );
if ( defined $release_file ) {
# Parse and apply the Swiss-Prot release info
# from $release_file.
my $release_io = $self->get_filehandle($release_file);
while ( defined( my $line = $release_io->getline() ) ) {
if ( $line =~ m#(UniProtKB/Swiss-Prot Release .*)# ) {
print "Swiss-Prot release is '$1'\n";
$self->set_release( $source_id, $1 );
}
}
$release_io->close();
}
$release_io->close();
print "Done\n";
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment