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
  • Field Details

  • Constructor Details

  • Method Details

    • 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:

       ChangeSupport cs = super.getChangeSupport(ct);
      
       if(someForwarder == null invalid input: '&'invalid input: '&' ct.isMatching(SomeInterface.SomeChangeType)) {
         someForwarder = new ChangeForwarder(...
      
         this.stateVariable.addChangeListener(someForwarder, VariableInterface.AChange);
       }
      
       return cs;
       
      It is usual for the forwarding listeners (someForwarder in this example) to be transient and lazily instantiated. Be sure to register invalid input: '&' unregister the forwarder in the code that does the ChangeEvent handling in setter methods.
      Overrides:
      getChangeSupport in class AbstractChangeable
    • toString

      public String toString()
      Overrides:
      toString in class Object