From: Fidel S. <fi...@vb...> - 2004-03-04 20:29:36
|
To get GBParser to fill-in the topology attribute, I had to make manual changes to two files (see below). Creation of Perl objects automatically created setTopology and getTopology methods in GUS::Model::DoTS::NAEntry_Row (after creating initial DB instance with modified schema). Fidel Here are the diffs: CBIL::Bio::GenBank::Locus *** /tmp/Locus.pm Thu Mar 4 15:03:49 2004 --- /tmp/Locus.pm-original Thu Mar 4 15:03:49 2004 *************** *** 9,15 **** sub setType { $_[0]->{TYP} = $_[1]; $_[0] } sub setDivision { $_[0]->{DIV} = $_[1]; $_[0] } sub setDate { $_[0]->{DAT} = $_[1]; $_[0] } - sub setTopology { $_[0]->{TOP} = $_[1]; $_[0] } sub getId { $_[0]->{ID} } sub getLength { $_[0]->{LEN} } --- 9,14 ---- *************** *** 16,22 **** sub getType { $_[0]->{TYP} } sub getDivision { $_[0]->{DIV} } sub getDate { $_[0]->{DAT} } - sub getTopology { $_[0]->{TOP} } # ........................................ --- 15,20 ---- *************** *** 27,35 **** my $line = $IOS->getLine(); my @A = split /\s+/, $line; ! my ( $LOCUS, $id, $length, $bp, $type, $topology, $div, $date ); if (@A > 7) { ! ( $LOCUS, $id, $length, $bp, $type, $topology, $div, $date ) = @A; } elsif (@A == 7) { ( $LOCUS, $id, $length, $bp, $type, $div, $date ) = @A; } else { --- 25,33 ---- my $line = $IOS->getLine(); my @A = split /\s+/, $line; ! my ( $LOCUS, $id, $length, $bp, $type, $circular, $div, $date ); if (@A > 7) { ! ( $LOCUS, $id, $length, $bp, $type, $circular, $div, $date ) = @A; } elsif (@A == 7) { ( $LOCUS, $id, $length, $bp, $type, $div, $date ) = @A; } else { *************** *** 43,49 **** $M->setType( $type ); $M->setDivision( $div ); $M->setDate( $date ); - $M->setTopology( $topology ); $M; } --- 41,46 ---- GUS::Common::Plugin::GBParser *** /tmp/GBParser.pm Thu Mar 4 15:15:26 2004 --- /tmp/GBParser.pm~ Thu Mar 4 15:15:26 2004 *************** *** 348,354 **** my %h = ('source_id' => $e->{ACCESSION}->[0]->getAccession(), 'division' => $e->{LOCUS}->[0]->getDivision(), 'version' => $e->{VERSION}->[0]->getSeqVersion(), - 'topology' => $e->{LOCUS}->[0]->getTopology(), ) ; my $date = &formatDate($e->{LOCUS}->[0]->getDate()); if ($chkdif) { --- 345,350 ---- |