SeqStoreConverter CaenorhabditisElegans
Included librariesPackage variablesGeneral documentationMethods
Toolbar
WebCvsRaw content
Package variables
No package variables defined.
Included modules
SeqStoreConverter::BasicConverter
Inherit
SeqStoreConverter::BasicConverter
Synopsis
No synopsis!
Description
No description!
Methods
contig_to_seq_region
No description
Code
create_assembly
No description
Code
create_coord_systems
No description
Code
create_seq_regions
No description
Code
Methods description
None available.
Methods code
contig_to_seq_regiondescriptionprevnextTop
sub contig_to_seq_region {
  my $self = shift;
  my $target_cs_name = shift;

  my $target = $self->target();
  my $source = $self->source();
  my $dbh     = $self->dbh();

  $target_cs_name ||= 'contig';

  $self->debug("CaenorhabditisElegans Specific: Transforming contigs " .
               "into $target_cs_name seq_regions");

  my $cs_id = $self->get_coord_system_id($target_cs_name);

  my $sth = $dbh->prepare
    ("INSERT INTO $target.seq_region " .
     "SELECT ctg.contig_id, CONCAT(cln.embl_acc, '.', cln.embl_version), " .
     "       $cs_id, ctg.length " .
     "FROM   $source.contig ctg, $source.clone cln " .
     "WHERE  ctg.clone_id = cln.clone_id");

  $sth->execute();
  $sth->finish();

  return;
}



1;
}
create_assemblydescriptionprevnextTop
sub create_assembly {
  my $self = shift;

  $self->debug("CaenorhabditisElegans Specific: loading assembly data");

  $self->assembly_contig_chromosome();
}


#
# override the contig_to_seqregion method so that contigs are given clone
# names instead
#
}
create_coord_systemsdescriptionprevnextTop
sub create_coord_systems {
  my $self = shift;

  $self->debug("Caenorhabditis Specific: creating " .
               "clone and chromosome coord systems");

  my $target = $self->target();
  my $dbh    = $self->dbh();

  my $ass_def = $self->get_default_assembly();

  my @coords = 
    (["chromosome" , $ass_def, "default_version"             , 1],
     ["clone",      undef   , "default_version,sequence_level", 2]);

  my @assembly_mappings =  ("chromosome:$ass_def|clone");

  $self->debug("Building coord_system table");

  my $sth = $dbh->prepare("INSERT INTO $target.coord_system " .
                           "(name, version, attrib, rank) VALUES (?,?,?,?)");

  my %coord_system_ids;

  foreach my $cs (@coords) {
    $sth->execute(@$cs);
    $coord_system_ids{$cs->[0]} = $sth->{'mysql_insertid'};
  }
  $sth->finish();

  $self->debug("Adding assembly.mapping entries to meta table");

  $sth = $dbh->prepare("INSERT INTO $target.meta(meta_key, meta_value) " .
                       "VALUES ('assembly.mapping', ?)");

  foreach my $mapping (@assembly_mappings) {
    $sth->execute($mapping);
  }
  
  $sth->finish();

  return;
}
create_seq_regionsdescriptionprevnextTop
sub create_seq_regions {
  my $self = shift;

  $self->debug("CaenorhabditisElegans Specific: creating clone and " .
               "chromosome seq_regions");

  $self->contig_to_seq_region('clone');
  $self->chromosome_to_seq_region();
}
General documentation
No general documentation available.