[Bio] / Sprout / SproutLoad.pm Repository:
ViewVC logotype

Diff of /Sprout/SproutLoad.pm

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

revision 1.45, Sun Jun 25 07:53:37 2006 UTC revision 1.48, Fri Jul 7 00:24:16 2006 UTC
# Line 375  Line 375 
375                  for my $coupleData (@couplings) {                  for my $coupleData (@couplings) {
376                      my ($peg2, $score) = @{$coupleData};                      my ($peg2, $score) = @{$coupleData};
377                      # Compute the coupling ID.                      # Compute the coupling ID.
378                      my $coupleID = Sprout::CouplingID($peg1, $peg2);                      my $coupleID = $self->{erdb}->CouplingID($peg1, $peg2);
379                      if (! exists $dupHash{$coupleID}) {                      if (! exists $dupHash{$coupleID}) {
380                          $loadCoupling->Add("couplingIn");                          $loadCoupling->Add("couplingIn");
381                          # Here we have a new coupling to store in the load files.                          # Here we have a new coupling to store in the load files.
# Line 634  Line 634 
634  The following relations are loaded by this method.  The following relations are loaded by this method.
635    
636      Subsystem      Subsystem
637        SubsystemClass
638      Role      Role
639      RoleEC      RoleEC
640      SSCell      SSCell
# Line 696  Line 697 
697      my $loadConsistsOfGenomes = $self->_TableLoader('ConsistsOfGenomes', $self->PrimaryOnly);      my $loadConsistsOfGenomes = $self->_TableLoader('ConsistsOfGenomes', $self->PrimaryOnly);
698      my $loadHasRoleSubset = $self->_TableLoader('HasRoleSubset', $self->PrimaryOnly);      my $loadHasRoleSubset = $self->_TableLoader('HasRoleSubset', $self->PrimaryOnly);
699      my $loadHasGenomeSubset = $self->_TableLoader('HasGenomeSubset', $self->PrimaryOnly);      my $loadHasGenomeSubset = $self->_TableLoader('HasGenomeSubset', $self->PrimaryOnly);
700        my $loadSubsystemClass = $self->_TableLoader('SubsystemClass', $self->PrimaryOnly);
701      if ($self->{options}->{loadOnly}) {      if ($self->{options}->{loadOnly}) {
702          Trace("Loading from existing files.") if T(2);          Trace("Loading from existing files.") if T(2);
703      } else {      } else {
# Line 721  Line 723 
723                  my $curator = $sub->get_curator();                  my $curator = $sub->get_curator();
724                  my $notes = $sub->get_notes();                  my $notes = $sub->get_notes();
725                  $loadSubsystem->Put($subsysID, $curator, $notes);                  $loadSubsystem->Put($subsysID, $curator, $notes);
726                    my $class = $fig->subsystem_classification($subsysID);
727                    if ($class) {
728                        $loadSubsystemClass->Put($subsysID, $class);
729                    }
730                  # Connect it to its roles. Each role is a column in the subsystem spreadsheet.                  # Connect it to its roles. Each role is a column in the subsystem spreadsheet.
731                  for (my $col = 0; defined($roleID = $sub->get_role($col)); $col++) {                  for (my $col = 0; defined($roleID = $sub->get_role($col)); $col++) {
732                      # Connect to this role.                      # Connect to this role.
# Line 1530  Line 1536 
1536      my $retVal = Stats->new();      my $retVal = Stats->new();
1537      # Get the loader list.      # Get the loader list.
1538      my $loadList = $self->{loaders};      my $loadList = $self->{loaders};
1539        # Create a hash to hold the statistics objects, keyed on relation name.
1540        my %loaderHash = ();
1541      # Loop through the list, finishing the loads. Note that if the finish fails, we die      # Loop through the list, finishing the loads. Note that if the finish fails, we die
1542      # ignominiously. At some future point, we want to make the loads restartable.      # ignominiously. At some future point, we want to make the loads more restartable.
1543      while (my $loader = pop @{$loadList}) {      while (my $loader = pop @{$loadList}) {
1544          # Get the relation name.          # Get the relation name.
1545          my $relName = $loader->RelName;          my $relName = $loader->RelName;
# Line 1542  Line 1550 
1550              # Here we really need to finish.              # Here we really need to finish.
1551              Trace("Finishing $relName.") if T(2);              Trace("Finishing $relName.") if T(2);
1552              my $stats = $loader->Finish();              my $stats = $loader->Finish();
1553                $loaderHash{$relName} = $stats;
1554            }
1555        }
1556        # Now we loop through again, actually loading the tables. We want to finish before
1557        # loading so that if something goes wrong at this point, all the load files are usable
1558        # and we don't have to redo all that work.
1559        for my $relName (sort keys %loaderHash) {
1560            # Get the statistics for this relation.
1561            my $stats = $loaderHash{$relName};
1562            # Check for a database load.
1563              if ($self->{options}->{dbLoad}) {              if ($self->{options}->{dbLoad}) {
1564                  # Here we want to use the load file just created to load the database.                  # Here we want to use the load file just created to load the database.
1565                  Trace("Loading relation $relName.") if T(2);                  Trace("Loading relation $relName.") if T(2);

Legend:
Removed from v.1.45  
changed lines
  Added in v.1.48

MCS Webmaster
ViewVC Help
Powered by ViewVC 1.0.3