Package org.biojava.bio.program.phred
Class PhredFormat
java.lang.Object
org.biojava.bio.program.phred.PhredFormat
- All Implemented Interfaces:
Serializable
,EventListener
,SequenceFormat
,ParseErrorListener
,ParseErrorSource
public class PhredFormat
extends Object
implements SequenceFormat, ParseErrorSource, ParseErrorListener, 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:
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
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.protected String
describeSequence
(Sequence seq) Return a suitable description line for a Sequence.Deprecated.int
Retrive the current line width.protected void
notifyParseErrorEvent
(ParseErrorEvent theEvent) Passes the event on to all the listeners registered for ParseErrorEvents.boolean
readSequence
(BufferedReader reader, SymbolTokenization symParser, SeqIOListener siol) Read a sequence and pass data on to a SeqIOListener.void
removeParseErrorListener
(ParseErrorListener theListener) Removes a parse error listener from the list of listeners if it is included.void
setLineWidth
(int width) Set the line width.void
writeSequence
(Sequence seq, PrintStream os) This method will print symbols to the line width followed by a new line etc.void
writeSequence
(Sequence seq, String format, PrintStream os) Deprecated.use writeSequence(Sequence seq, PrintStream os)
-
Field Details
-
DEFAULT
- See Also:
-
PROPERTY_DESCRIPTIONLINE
Constant string which is the property key used to notify listeners of the description lines of Phred sequences.- See Also:
-
-
Constructor Details
-
PhredFormat
public PhredFormat()
-
-
Method Details
-
getLineWidth
Retrive the current line width.- Returns:
- the line width
-
setLineWidth
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(BufferedReader reader, SymbolTokenization symParser, SeqIOListener siol) throws IllegalSymbolException, IOException, ParseException Description copied from interface:SequenceFormat
Read a sequence and pass data on to a SeqIOListener.- Specified by:
readSequence
in interfaceSequenceFormat
- 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.IOException
- if an error occurs while reading from the stream.ParseException
-
describeSequence
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
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 interfaceSequenceFormat
- Parameters:
seq
- the sequence to write out.os
- the printstream to write to.- Throws:
IOException
-
writeSequence
Deprecated.use writeSequence(Sequence seq, PrintStream os)writeSequence
writes a sequence to the specifiedPrintStream
, using the specified format.- Specified by:
writeSequence
in interfaceSequenceFormat
- Parameters:
seq
- aSequence
to write out.format
- aString
indicating which sub-format of those available from a particularSequenceFormat
implemention to use when writing.os
- aPrintStream
object.- Throws:
IOException
- if an error occurs.
-
getDefaultFormat
Deprecated.getDefaultFormat
returns the String identifier for the default format.- Specified by:
getDefaultFormat
in interfaceSequenceFormat
- Returns:
- a
String
.
-
addParseErrorListener
Adds a parse error listener to the list of listeners if it isn't already included.- Specified by:
addParseErrorListener
in interfaceParseErrorSource
- Parameters:
theListener
- Listener to be added.
-
removeParseErrorListener
Removes a parse error listener from the list of listeners if it is included.- Specified by:
removeParseErrorListener
in interfaceParseErrorSource
- Parameters:
theListener
- Listener to be removed.
-
BadLineParsed
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 interfaceParseErrorListener
- Parameters:
theEvent
- The event that contains the bad line and token.
-
notifyParseErrorEvent
Passes the event on to all the listeners registered for ParseErrorEvents.- Parameters:
theEvent
- The event to be handed to the listeners.
-