[Bio] / FigKernelPackages / RAST_submission.pm Repository:
ViewVC logotype

Diff of /FigKernelPackages/RAST_submission.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.15, Fri Dec 4 18:24:36 2009 UTC revision 1.16, Mon Dec 14 20:19:27 2009 UTC
# Line 415  Line 415 
415          my $last_mod = $stat[9];          my $last_mod = $stat[9];
416          if (time - $last_mod < $self->max_cache_age)          if (time - $last_mod < $self->max_cache_age)
417          {          {
418                #
419                # Check for bad cached file.
420                #
421                if (open(F, "<", $cached_file))
422                {
423                    my $l = <F>;
424                    close(F);
425                    if ($l =~ /resource is temporarily unavailable/)
426                    {
427                        unlink($cached_file);
428                        print STDERR "Cached file $cached_file contained NCBI error\n";
429                    }
430                    else
431                    {
432              return $cached_file;              return $cached_file;
433          }          }
434      }      }
435            }
436        }
437      my $url = "http://www.ncbi.nlm.nih.gov/sites/entrez?Db=genomeprj&Cmd=Retrieve&list_uids=";      my $url = "http://www.ncbi.nlm.nih.gov/sites/entrez?Db=genomeprj&Cmd=Retrieve&list_uids=";
438      my $res = $self->url_get($url.$project);      my $res = $self->url_get($url.$project);
439      if (!$res->is_success)      if (!$res->is_success)
# Line 466  Line 482 
482      my $resp = $self->url_get($query);      my $resp = $self->url_get($query);
483      if ($resp->is_success())      if ($resp->is_success())
484      {      {
485            if ($resp->content =~ /resource is temporarily unavailable/i)
486            {
487                #
488                # NCBI is timing out; fail.
489                #
490                die "Error retrieving project: " . $resp->content;
491            }
492          open(F, ">", $cached_file) or die "Cannot open $cached_file for writing: $!";          open(F, ">", $cached_file) or die "Cannot open $cached_file for writing: $!";
493          print F $resp->content;          print F $resp->content;
494          close(F);          close(F);
# Line 487  Line 510 
510          my $last_mod = $stat[9];          my $last_mod = $stat[9];
511          if (time - $last_mod < $self->max_cache_age)          if (time - $last_mod < $self->max_cache_age)
512          {          {
513    
514                #
515                # Check for bad cached file.
516                #
517                if (open(F, "<", $cached_file))
518                {
519                    my $l = <F>;
520                    close(F);
521                    if ($l =~ /resource is temporarily unavailable/)
522                    {
523                        unlink($cached_file);
524                        print STDERR "Cached file $cached_file contained NCBI error\n";
525                    }
526                    else
527                    {
528              return $cached_file;              return $cached_file;
529          }          }
530      }      }
531            }
532        }
533    
534      my $query = "http://eutils.ncbi.nlm.nih.gov/entrez/eutils/efetch.fcgi?db=nucleotide&id=" . $contig . "&rettype=gb" ;      my $query = "http://eutils.ncbi.nlm.nih.gov/entrez/eutils/efetch.fcgi?db=nucleotide&id=" . $contig . "&rettype=gb" ;
535      my $resp = $self->url_get($query);      my $resp = $self->url_get($query);
536      if ($resp->is_success())      if ($resp->is_success())
537      {      {
538            if ($resp->content =~ /resource is temporarily unavailable/i)
539            {
540                #
541                # NCBI is timing out; fail.
542                #
543                die "Error retrieving contig: " . $resp->content;
544            }
545    
546          open(F, ">", $cached_file) or die "Cannot open $cached_file for writing: $!";          open(F, ">", $cached_file) or die "Cannot open $cached_file for writing: $!";
547          print F $resp->content;          print F $resp->content;
548          close(F);          close(F);

Legend:
Removed from v.1.15  
changed lines
  Added in v.1.16

MCS Webmaster
ViewVC Help
Powered by ViewVC 1.0.3