## org.biojava.bio.seq.io
Class GenbankFormat

    java.lang.Object
      org.biojava.bio.seq.io.GenbankFormat

All Implemented Interfaces:
  java.util.EventListener, ParseErrorListener, ParseErrorSource, SequenceFormat, java.io.Serializable

public class GenbankFormat
extends java.lang.Object
implements SequenceFormat, java.io.Serializable, ParseErrorListener, ParseErrorSource

Format reader for GenBank files. Converted from the old style io to the new by working from `EmblLikeFormat`.

Author:
  Thomas Down, Thad Welch Added GenBank header info to the sequence annotation. The ACCESSION header tag is not included. Stored in sequence.getName()., Greg Cox, Keith James, Matthew Pocock, Ron Kuhn
See Also:
  Serialized Form

Field Summary
`protected static java.lang.String` `ACCESSION_TAG`
`protected static java.lang.String` `AUTHORS_TAG`
`protected static java.lang.String` `CIRCULAR_TAG`
`protected static java.lang.String` `COMMENT_TAG`
`protected static java.lang.String` `COORDINATE_TAG`
`protected static java.lang.String` `DATE_TAG`
`static java.lang.String` `DEFAULT`
`protected static java.lang.String` `DEFINITION_TAG`
`protected static java.lang.String` `DIVISION_TAG`
`protected static java.lang.String` `END_SEQUENCE_TAG`
`protected static java.lang.String` `FEATURE_FLAG`
`protected static java.lang.String` `FEATURE_LINE_PREFIX`
`protected static java.lang.String` `FEATURE_TAG`
`protected static java.lang.String` `GI_TAG`
`protected static java.lang.String` `JOURNAL_TAG`
`protected static java.lang.String` `KEYWORDS_TAG`
`protected static java.lang.String` `LOCUS_TAG`
`protected static java.lang.String` `ORGANISM_TAG`
`protected static java.lang.String` `REF_ACCESSION_TAG`
`protected static java.lang.String` `REFERENCE_TAG`
`protected static java.lang.String` `SIZE_TAG`
`protected static java.lang.String` `SOURCE_TAG`
`protected static java.lang.String` `START_SEQUENCE_TAG`
`protected static java.lang.String` `STRAND_NUMBER_TAG`
`protected static java.lang.String` `TITLE_TAG`
`protected static java.lang.String` `TYPE_TAG`
`protected static java.lang.String` `VERSION_TAG`

Constructor Summary
`GenbankFormat()`

Method Summary
`void` `addParseErrorListener(ParseErrorListener theListener)` Adds a parse error listener to the list of listeners if it isn't already included.
`void` `BadLineParsed(ParseErrorEvent theEvent)` This method determines the behaviour when a bad line is processed.
`java.lang.String` `getDefaultFormat()` Deprecated.
`boolean` `getElideSymbols()`
`protected void` `notifyParseErrorEvent(ParseErrorEvent theEvent)` Passes the event on to all the listeners registered for ParseErrorEvents.
`boolean` `readSequence(java.io.BufferedReader reader, SymbolTokenization symParser, SeqIOListener listener)` Reads a sequence from the specified reader using the Symbol parser and Sequence Factory provided.
`void` `removeParseErrorListener(ParseErrorListener theListener)` Removes a parse error listener from the list of listeners if it is included.
`void` `setElideSymbols(boolean elideSymbols)` Use this method to toggle reading of sequence data.
`void` `writeSequence(Sequence seq, java.io.PrintStream os)` `writeSequence` writes a sequence to the specified PrintStream, using the default format.
`void` `writeSequence(Sequence seq, java.lang.String format, java.io.PrintStream os)` Deprecated. use writeSequence(Sequence seq, PrintStream os)

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### DEFAULT

    public static final java.lang.String DEFAULT

See Also:
  Constant Field Values

### LOCUS_TAG

    protected static final java.lang.String LOCUS_TAG

See Also:
  Constant Field Values

### SIZE_TAG

    protected static final java.lang.String SIZE_TAG

See Also:
  Constant Field Values

### STRAND_NUMBER_TAG

    protected static final java.lang.String STRAND_NUMBER_TAG

See Also:
  Constant Field Values

### TYPE_TAG

    protected static final java.lang.String TYPE_TAG

See Also:
  Constant Field Values

### CIRCULAR_TAG

    protected static final java.lang.String CIRCULAR_TAG

See Also:
  Constant Field Values

### DIVISION_TAG

    protected static final java.lang.String DIVISION_TAG

See Also:
  Constant Field Values

### DATE_TAG

    protected static final java.lang.String DATE_TAG

See Also:
  Constant Field Values

### ACCESSION_TAG

    protected static final java.lang.String ACCESSION_TAG

See Also:
  Constant Field Values

### VERSION_TAG

    protected static final java.lang.String VERSION_TAG

See Also:
  Constant Field Values

### GI_TAG

    protected static final java.lang.String GI_TAG

See Also:
  Constant Field Values

### KEYWORDS_TAG

    protected static final java.lang.String KEYWORDS_TAG

See Also:
  Constant Field Values

### DEFINITION_TAG

    protected static final java.lang.String DEFINITION_TAG

See Also:
  Constant Field Values

### SOURCE_TAG

    protected static final java.lang.String SOURCE_TAG

See Also:
  Constant Field Values

### ORGANISM_TAG

    protected static final java.lang.String ORGANISM_TAG

See Also:
  Constant Field Values

### REFERENCE_TAG

    protected static final java.lang.String REFERENCE_TAG

See Also:
  Constant Field Values

### COORDINATE_TAG

    protected static final java.lang.String COORDINATE_TAG

See Also:
  Constant Field Values

### REF_ACCESSION_TAG

    protected static final java.lang.String REF_ACCESSION_TAG

See Also:
  Constant Field Values

### AUTHORS_TAG

    protected static final java.lang.String AUTHORS_TAG

See Also:
  Constant Field Values

### TITLE_TAG

    protected static final java.lang.String TITLE_TAG

See Also:
  Constant Field Values

### JOURNAL_TAG

    protected static final java.lang.String JOURNAL_TAG

See Also:
  Constant Field Values

### COMMENT_TAG

    protected static final java.lang.String COMMENT_TAG

See Also:
  Constant Field Values

### FEATURE_TAG

    protected static final java.lang.String FEATURE_TAG

See Also:
  Constant Field Values

### FEATURE_FLAG

    protected static final java.lang.String FEATURE_FLAG

See Also:
  Constant Field Values

### START_SEQUENCE_TAG

    protected static final java.lang.String START_SEQUENCE_TAG

See Also:
  Constant Field Values

### END_SEQUENCE_TAG

    protected static final java.lang.String END_SEQUENCE_TAG

See Also:
  Constant Field Values

### FEATURE_LINE_PREFIX

    protected static final java.lang.String FEATURE_LINE_PREFIX

See Also:
  Constant Field Values

Constructor Detail

### GenbankFormat

    public GenbankFormat()

Method Detail

### readSequence

    public boolean readSequence(java.io.BufferedReader reader,
                                SymbolTokenization symParser,
                                SeqIOListener listener)
                         throws IllegalSymbolException,
                                java.io.IOException,
                                ParseException

  Reads a sequence from the specified reader using the Symbol parser and Sequence Factory provided. The sequence read in must be in Genbank format.

  Specified by:
    `readSequence` in interface `SequenceFormat`
  Parameters:
    `reader` - The stream of data to parse.
    `symParser` - A SymbolParser defining a mapping from character data to Symbols.
    `listener` - A listener to notify when data is extracted from the stream.
  Returns:
    boolean True if there is another sequence in the file; false otherwise
  Throws:
    `java.io.IOException` - if an error occurs while reading from the stream.
    `IllegalSymbolException` - if it is not possible to translate character data from the stream into valid BioJava symbols.
    `ParseException`

### writeSequence

    public void writeSequence(Sequence seq,
                              java.io.PrintStream os)
                       throws java.io.IOException

  Description copied from interface: `SequenceFormat`
  `writeSequence` writes a sequence to the specified PrintStream, using the default format.

  Specified by:
    `writeSequence` in interface `SequenceFormat`
  Parameters:
    `seq` - the sequence to write out.
    `os` - the printstream to write to.
  Throws:
    `java.io.IOException`

### writeSequence

    public void writeSequence(Sequence seq,
                              java.lang.String format,
                              java.io.PrintStream os)
                       throws java.io.IOException

  Deprecated. use writeSequence(Sequence seq, PrintStream os)

  `writeSequence` writes a sequence to the specified `PrintStream`, using the specified format.

  Specified by:
    `writeSequence` in interface `SequenceFormat`
  Parameters:
    `seq` - a `Sequence` to write out.
    `format` - a `String` indicating which sub-format of those available from a particular `SequenceFormat` implemention to use when writing.
    `os` - a `PrintStream` object.
  Throws:
    `java.io.IOException` - if an error occurs.

### getDefaultFormat

    public java.lang.String getDefaultFormat()

  Deprecated.

  `getDefaultFormat` returns the String identifier for the default format.

  Specified by:
    `getDefaultFormat` in interface `SequenceFormat`
  Returns:
    a `String`.

### addParseErrorListener

    public void addParseErrorListener(ParseErrorListener theListener)

  Adds a parse error listener to the list of listeners if it isn't already included.

  Specified by:
    `addParseErrorListener` in interface `ParseErrorSource`
  Parameters:
    `theListener` - Listener to be added.

### removeParseErrorListener

    public void removeParseErrorListener(ParseErrorListener theListener)

  Removes a parse error listener from the list of listeners if it is included.

  Specified by:
    `removeParseErrorListener` in interface `ParseErrorSource`
  Parameters:
    `theListener` - Listener to be removed.

### BadLineParsed

    public void BadLineParsed(ParseErrorEvent theEvent)

  This method determines the behaviour when a bad line is processed. Some options are to log the error, throw an exception, ignore it completely, or pass the event through.

  This method should be overwritten when different behavior is desired.

  Specified by:
    `BadLineParsed` in interface `ParseErrorListener`
  Parameters:
    `theEvent` - The event that contains the bad line and token.

### notifyParseErrorEvent

    protected void notifyParseErrorEvent(ParseErrorEvent theEvent)

  Passes the event on to all the listeners registered for ParseErrorEvents.

  Parameters:
    `theEvent` - The event to be handed to the listeners.

### getElideSymbols

    public boolean getElideSymbols()

### setElideSymbols

    public void setElideSymbols(boolean elideSymbols)

  Use this method to toggle reading of sequence data. If you're only interested in header data set to true.

  Parameters:
    `elideSymbols` - set to true if you don't want the sequence data.