Class PhredFormat

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

    public class PhredFormat
    extends java.lang.Object
    implements SequenceFormat, ParseErrorSource, ParseErrorListener, java.io.Serializable
    Format object representing Phred Quality files. The only `sequence property' reported by this parser is PROPERTY_DESCRIPTIONLINE, which is the contents of the sequence's description line (the line starting with a '>' character). Essentially a rework of FastaFormat to cope with the quirks of Phred Quality data.

    Copyright (c) 2001

    Company: AgResearch

    Since:
    1.1
    Author:
    Mark Schreiber, Greg Cox, Frans Verhoef
    See Also:
    Serialized Form
    • Method Detail

      • getLineWidth

        public int getLineWidth()
        Retrive the current line width.
        Returns:
        the line width
      • setLineWidth

        public void setLineWidth​(int width)
        Set the line width.

        When writing, the lines of sequence will never be longer than the line width.

        Parameters:
        width - the new line width
      • readSequence

        public boolean readSequence​(java.io.BufferedReader reader,
                                    SymbolTokenization symParser,
                                    SeqIOListener siol)
                             throws IllegalSymbolException,
                                    java.io.IOException,
                                    ParseException
        Description copied from interface: SequenceFormat
        Read a sequence and pass data on to a SeqIOListener.
        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.
        siol - A listener to notify when data is extracted from the stream.
        Returns:
        a boolean indicating whether or not the stream contains any more sequences.
        Throws:
        IllegalSymbolException - if it is not possible to translate character data from the stream into valid BioJava symbols.
        java.io.IOException - if an error occurs while reading from the stream.
        ParseException
      • describeSequence

        protected java.lang.String describeSequence​(Sequence seq)
        Return a suitable description line for a Sequence. If the sequence's annotation bundle contains PROPERTY_DESCRIPTIONLINE, this is used verbatim. Otherwise, the sequence's name is used.
      • writeSequence

        public void writeSequence​(Sequence seq,
                                  java.io.PrintStream os)
                           throws java.io.IOException
        This method will print symbols to the line width followed by a new line etc. NOTE that an integer symbol does not always correspond to one character therefore a line width of sixty will print sixty characters followed by a new line. Not necessarily sixty integers.
        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.
      • 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.