Package org.biojava.bio.symbol
Class AbstractSymbol
- java.lang.Object
-
- org.biojava.utils.AbstractChangeable
-
- org.biojava.bio.symbol.AbstractSymbol
-
- All Implemented Interfaces:
Annotatable
,Symbol
,Changeable
- Direct Known Subclasses:
FundamentalAtomicSymbol
,SimpleAtomicSymbol
public abstract class AbstractSymbol extends AbstractChangeable implements Symbol
The base-class for Symbol implementations.- Since:
- 1.1
- Author:
- Matthew Pocock
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.biojava.bio.Annotatable
Annotatable.AnnotationForwarder
-
-
Field Summary
Fields Modifier and Type Field Description protected ChangeForwarder
annotationForwarder
-
Fields inherited from interface org.biojava.bio.Annotatable
ANNOTATION
-
-
Constructor Summary
Constructors Constructor Description AbstractSymbol()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected ChangeSupport
getChangeSupport(ChangeType changeType)
Called to retrieve the ChangeSupport for this object.String
toString()
-
Methods inherited from class org.biojava.utils.AbstractChangeable
addChangeListener, addChangeListener, generateChangeSupport, hasListeners, hasListeners, isUnchanging, removeChangeListener, removeChangeListener
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.biojava.bio.Annotatable
getAnnotation
-
Methods inherited from interface org.biojava.utils.Changeable
addChangeListener, addChangeListener, isUnchanging, removeChangeListener, removeChangeListener
-
Methods inherited from interface org.biojava.bio.symbol.Symbol
getMatches, getName
-
-
-
-
Field Detail
-
annotationForwarder
protected transient ChangeForwarder annotationForwarder
-
-
Constructor Detail
-
AbstractSymbol
public AbstractSymbol()
-
-
Method Detail
-
getChangeSupport
protected ChangeSupport getChangeSupport(ChangeType changeType)
Description copied from class:AbstractChangeable
Called to retrieve the ChangeSupport for this object.Your implementation of this method should have the following structure:
It is usual for the forwarding listeners (someForwarder in this example) to be transient and lazily instantiated. Be sure to register & unregister the forwarder in the code that does the ChangeEvent handling in setter methods.ChangeSupport cs = super.getChangeSupport(ct); if(someForwarder == null && ct.isMatching(SomeInterface.SomeChangeType)) { someForwarder = new ChangeForwarder(... this.stateVariable.addChangeListener(someForwarder, VariableInterface.AChange); } return cs;
- Overrides:
getChangeSupport
in classAbstractChangeable
-
-