org.biojava.bio.seq.io
Class AlternateTokenization

java.lang.Object
  extended by org.biojava.utils.Unchangeable
      extended by org.biojava.bio.seq.io.AlternateTokenization
All Implemented Interfaces:
Serializable, Annotatable, SymbolTokenization, Changeable

public class AlternateTokenization
extends Unchangeable
implements SymbolTokenization, Serializable

Implementation of SymbolTokenization which binds symbols to strings of characters. These tokenizations are intented to provide alternate way of writing sequences into Strings. Therefore they cannot be used for parsing files.

As this release, alternate tokenizations are available for the built-in DNA alphabet (write symbols as capital letter) and PROTEIN-TERM alphabet (write symbol as triplets of characters with the first one being a capital letter as in "Glu".

By convention, instances of AlternateTokenization should have an associated token starting by the word 'alternate'.

Since:
1.5
Author:
George Waldon
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from interface org.biojava.bio.seq.io.SymbolTokenization
SymbolTokenization.TokenType
 
Nested classes/interfaces inherited from interface org.biojava.bio.Annotatable
Annotatable.AnnotationForwarder
 
Field Summary
 
Fields inherited from interface org.biojava.bio.seq.io.SymbolTokenization
CHARACTER, FIXEDWIDTH, SEPARATED, UNKNOWN
 
Fields inherited from interface org.biojava.bio.Annotatable
ANNOTATION
 
Constructor Summary
AlternateTokenization(Alphabet alpha, boolean caseSensitive)
           
 
Method Summary
 void bindSymbol(Symbol s, String str)
          Bind a Symbol to a string.
 Alphabet getAlphabet()
          The alphabet to which this tokenization applies.
 Annotation getAnnotation()
          Should return the associated annotation object.
 SymbolTokenization.TokenType getTokenType()
          Tokens have fixed size.
 int getWidth()
          Get the width of the tokens.
 StreamParser parseStream(SeqIOListener listener)
          Will throw an exception.
 Symbol parseToken(String token)
          Will throw an exception.
 String tokenizeSymbol(Symbol s)
          Return a token representing a single symbol.
 String tokenizeSymbolList(SymbolList sl)
          Return a string representation of a list of symbols.
 
Methods inherited from class org.biojava.utils.Unchangeable
addChangeListener, addChangeListener, addForwarder, getForwarders, getListeners, isUnchanging, removeChangeListener, removeChangeListener, removeForwarder
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.biojava.utils.Changeable
addChangeListener, addChangeListener, isUnchanging, removeChangeListener, removeChangeListener
 

Constructor Detail

AlternateTokenization

public AlternateTokenization(Alphabet alpha,
                             boolean caseSensitive)
Method Detail

getAlphabet

public Alphabet getAlphabet()
Description copied from interface: SymbolTokenization
The alphabet to which this tokenization applies.

Specified by:
getAlphabet in interface SymbolTokenization

getTokenType

public SymbolTokenization.TokenType getTokenType()
Tokens have fixed size.

Specified by:
getTokenType in interface SymbolTokenization

getAnnotation

public Annotation getAnnotation()
Description copied from interface: Annotatable
Should return the associated annotation object.

Specified by:
getAnnotation in interface Annotatable
Returns:
an Annotation object, never null

getWidth

public int getWidth()
Get the width of the tokens.


bindSymbol

public void bindSymbol(Symbol s,
                       String str)
Bind a Symbol to a string.

Parameters:
s - the Symbol to bind
str - the string to bind it to

parseToken

public Symbol parseToken(String token)
                  throws IllegalSymbolException
Will throw an exception.

Specified by:
parseToken in interface SymbolTokenization
Parameters:
token - the token to retrieve a Symbol for
Returns:
the Symbol for that token
Throws:
IllegalSymbolException - if there is no Symbol for the token

tokenizeSymbol

public String tokenizeSymbol(Symbol s)
                      throws IllegalSymbolException
Description copied from interface: SymbolTokenization
Return a token representing a single symbol.

Specified by:
tokenizeSymbol in interface SymbolTokenization
Parameters:
s - The symbol
Throws:
IllegalSymbolException - if the symbol isn't recognized.

tokenizeSymbolList

public String tokenizeSymbolList(SymbolList sl)
                          throws IllegalAlphabetException
Description copied from interface: SymbolTokenization
Return a string representation of a list of symbols.

Specified by:
tokenizeSymbolList in interface SymbolTokenization
Parameters:
sl - A SymbolList
Throws:
IllegalAlphabetException - if alphabets don't match

parseStream

public StreamParser parseStream(SeqIOListener listener)
Will throw an exception.

Specified by:
parseStream in interface SymbolTokenization
Parameters:
listener - The listener which gets notified of parsed symbols.