/** * Add an ExonSequence mainly used to mark as a feature * @param accession * @param begin * @param end * @return exon sequence */ public ExonSequence addExon(AccessionID accession, int begin, int end) throws Exception { if (exonSequenceHashMap.containsKey(accession.getID())) { throw new Exception("Duplicate accesion id " + accession.getID()); } ExonSequence exonSequence = new ExonSequence(this, begin, end); //sense should be the same as parent exonSequence.setAccession(accession); exonSequenceList.add(exonSequence); exonSequenceHashMap.put(accession.getID(), exonSequence); return exonSequence; }
@Override public String getHeader(C sequence) { return sequence.getAccession().toString(); }; });
public TwoBitSequenceReader(TwoBitArrayWorker<C> worker) { super(worker, new AccessionID("unknown")); }
@Override public boolean equals(Object o) { boolean equals = false; if (Equals.classEqual(this, o)) { AccessionID l = (AccessionID) o; equals = (Equals.equal(getID(), l.getID()) && Equals.equal(getDataSource(), l.getDataSource()) && Equals.equal(getIdentifier(), l.getIdentifier()) && Equals.equal(getVersion(), l.getVersion())); } return equals; }
/** * Get the stitched together CDS sequences then maps to the cDNA * @return */ public DNASequence getDNACodingSequence() { StringBuilder sb = new StringBuilder(); for (CDSSequence cdsSequence : cdsSequenceList) { sb.append(cdsSequence.getCodingSequence()); } DNASequence dnaSequence = null; try { dnaSequence = new DNASequence(sb.toString().toUpperCase()); } catch (CompoundNotFoundException e) { // if I understand this should not happen, please correct if I'm wrong - JD 2014-10-24 logger.error("Could not create DNA coding sequence, {}. This is most likely a bug.", e.getMessage()); } dnaSequence.setAccession(new AccessionID(this.getAccession().getID())); return dnaSequence; }
dnaSequence.getAccession().toString(), contigDNASequence.getAccession().toString(), bioStart, bioEnd, strand); ChromosomeSequence chromosomeSequence = chromosomeSequenceList.get(accession); String geneaccession = dnaSequence.getAccession().getID(); String note = geneaccession; String[] values = geneaccession.split(" "); GeneSequence geneSeq = chromosomeSequence.addGene(new AccessionID(geneaccession), bioStart, bioEnd, strand); geneSeq.addNote(note); geneSeq.setSource(uppercaseFastaFile.getName()); throw new Exception(dnaSequence.getAccession().toString() + " not found"); logger.info("Gene not found {}", dnaSequence.getAccession().toString());
instance.parseHeader(header, sequence); logger.info("accession = {}", sequence.getAccession()); logger.info("Data source: {} = {}", sequence.getAccession().getDataSource(), DataSource.GENBANK); logger.info("Data source: {} = {}", sequence.getAccession().getDataSource(), DataSource.ENA); logger.info("Data source: {} = {}", sequence.getAccession().getDataSource(), DataSource.DDBJ); logger.info("Data source: {} = {}", sequence.getAccession().getDataSource(), DataSource.NBRF); logger.info("Data source: {}", sequence.getAccession().getDataSource(), DataSource.PRF); logger.info("Data source: {} = {}", sequence.getAccession().getDataSource(), DataSource.UNIPROT); logger.info("Data source: {} = {}", sequence.getAccession().getDataSource(), DataSource.PDB1); logger.info("Data source: {} = {}", sequence.getAccession().getDataSource(), DataSource.PDB2); logger.info("Data source: {} = {}", sequence.getAccession().getDataSource(), DataSource.PDBe); logger.info("Data source: {}", sequence.getAccession().getDataSource(), DataSource.PATENTS); logger.info("Data source: {} = {}", sequence.getAccession().getDataSource(), DataSource.GENINFO); logger.info("Data source: {} = {}", sequence.getAccession().getDataSource(), DataSource.GENERAL); logger.info("Data source: {} = {}", sequence.getAccession().getDataSource(), DataSource.NCBI); logger.info("Data source: {} = {}", sequence.getAccession().getDataSource(), DataSource.LOCAL);
/** * Get the stitched together CDS sequences then maps to the cDNA * @return */ public DNASequence getDNACodingSequence() { StringBuilder sb = new StringBuilder(); for (CDSSequence cdsSequence : cdsSequenceList) { sb.append(cdsSequence.getCodingSequence()); } DNASequence dnaSequence = null; try { dnaSequence = new DNASequence(sb.toString().toUpperCase()); } catch (CompoundNotFoundException e) { // if I understand this should not happen, please correct if I'm wrong - JD 2014-10-24 logger.error("Could not create DNA coding sequence, {}. This is most likely a bug.", e.getMessage()); } dnaSequence.setAccession(new AccessionID(this.getAccession().getID())); return dnaSequence; }
@Override public boolean equals(Object o) { boolean equals = false; if (Equals.classEqual(this, o)) { AccessionID l = (AccessionID) o; equals = (Equals.equal(getID(), l.getID()) && Equals.equal(getDataSource(), l.getDataSource()) && Equals.equal(getIdentifier(), l.getIdentifier()) && Equals.equal(getVersion(), l.getVersion())); } return equals; }
instance.parseHeader(header, sequence); logger.info("accession = {}", sequence.getAccession()); logger.info("Data source: {} = {}", sequence.getAccession().getDataSource(), DataSource.GENBANK); logger.info("Data source: {} = {}", sequence.getAccession().getDataSource(), DataSource.ENA); logger.info("Data source: {} = {}", sequence.getAccession().getDataSource(), DataSource.DDBJ); logger.info("Data source: {} = {}", sequence.getAccession().getDataSource(), DataSource.NBRF); logger.info("Data source: {}", sequence.getAccession().getDataSource(), DataSource.PRF); logger.info("Data source: {} = {}", sequence.getAccession().getDataSource(), DataSource.UNIPROT); logger.info("Data source: {} = {}", sequence.getAccession().getDataSource(), DataSource.PDB1); logger.info("Data source: {} = {}", sequence.getAccession().getDataSource(), DataSource.PDB2); logger.info("Data source: {} = {}", sequence.getAccession().getDataSource(), DataSource.PDBe); logger.info("Data source: {}", sequence.getAccession().getDataSource(), DataSource.PATENTS); logger.info("Data source: {} = {}", sequence.getAccession().getDataSource(), DataSource.GENINFO); logger.info("Data source: {} = {}", sequence.getAccession().getDataSource(), DataSource.GENERAL); logger.info("Data source: {} = {}", sequence.getAccession().getDataSource(), DataSource.NCBI); logger.info("Data source: {} = {}", sequence.getAccession().getDataSource(), DataSource.LOCAL);
/** * Add an ExonSequence mainly used to mark as a feature * @param accession * @param begin * @param end * @return exon sequence */ public ExonSequence addExon(AccessionID accession, int begin, int end) throws Exception { if (exonSequenceHashMap.containsKey(accession.getID())) { throw new Exception("Duplicate accesion id " + accession.getID()); } ExonSequence exonSequence = new ExonSequence(this, begin, end); //sense should be the same as parent exonSequence.setAccession(accession); exonSequenceList.add(exonSequence); exonSequenceHashMap.put(accession.getID(), exonSequence); return exonSequence; }
/** * Get the protein sequence with user defined TranscriptEngine * @param engine * @return */ public ProteinSequence getProteinSequence(TranscriptionEngine engine) { DNASequence dnaCodingSequence = getDNACodingSequence(); RNASequence rnaCodingSequence = dnaCodingSequence.getRNASequence(engine); ProteinSequence proteinSequence = rnaCodingSequence.getProteinSequence(engine); proteinSequence.setAccession(new AccessionID(this.getAccession().getID())); return proteinSequence; }
@Override public int hashCode() { int r = Hashcoder.SEED; r = Hashcoder.hash(r, getID()); r = Hashcoder.hash(r, getDataSource()); r = Hashcoder.hash(r, getIdentifier()); r = Hashcoder.hash(r, getVersion()); return r; }
public FourBitSequenceReader(String sequence, CompoundSet<C> compoundSet) { this(sequence, compoundSet, new AccessionID("Unknown")); }
@Override public String getHeader(C sequence) { return sequence.getAccession().toString(); }; });
/** * Add a transcription sequence to a gene which describes a ProteinSequence * @param accession * @param begin * @param end * @return transcript sequence * @throws Exception If the accession id is already used */ public TranscriptSequence addTranscript(AccessionID accession, int begin, int end) throws Exception { if (transcriptSequenceHashMap.containsKey(accession.getID())) { throw new Exception("Duplicate accesion id " + accession.getID()); } TranscriptSequence transcriptSequence = new TranscriptSequence(this, begin, end); transcriptSequence.setAccession(accession); transcriptSequenceHashMap.put(accession.getID(), transcriptSequence); return transcriptSequence; }
/** * Get the protein sequence with user defined TranscriptEngine * @param engine * @return */ public ProteinSequence getProteinSequence(TranscriptionEngine engine) { DNASequence dnaCodingSequence = getDNACodingSequence(); RNASequence rnaCodingSequence = dnaCodingSequence.getRNASequence(engine); ProteinSequence proteinSequence = rnaCodingSequence.getProteinSequence(engine); proteinSequence.setAccession(new AccessionID(this.getAccession().getID())); return proteinSequence; }
@Override public int hashCode() { int r = Hashcoder.SEED; r = Hashcoder.hash(r, getID()); r = Hashcoder.hash(r, getDataSource()); r = Hashcoder.hash(r, getIdentifier()); r = Hashcoder.hash(r, getVersion()); return r; }
public TwoBitSequenceReader(String sequence, CompoundSet<C> compoundSet) { this(sequence, compoundSet, new AccessionID("Unknown")); }
@Override public String getHeader(C sequence) { return sequence.getAccession().toString(); }; });