org.biojava.ontology
Class AbstractTerm
java.lang.Object
org.biojava.utils.AbstractChangeable
org.biojava.ontology.AbstractTerm
- All Implemented Interfaces:
- Annotatable, Term, Changeable
- Direct Known Subclasses:
- RemoteTerm.Impl, Term.Impl
public abstract class AbstractTerm
- extends AbstractChangeable
- implements Term
Abstract implementation of term
This provides basic change-forwarding functionality from
the annotation and ontology properties.
- Since:
- 1.4
- Author:
- Thomas Down
Nested classes/interfaces inherited from interface org.biojava.ontology.Term |
Term.Impl |
Fields inherited from interface org.biojava.ontology.Term |
ONTOLOGY |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
description
protected String description
AbstractTerm
public AbstractTerm()
getChangeSupport
public ChangeSupport getChangeSupport(ChangeType ct)
- 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 && 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 & unregister the
forwarder in the code that does the ChangeEvent handling in setter methods.
- Overrides:
getChangeSupport
in class AbstractChangeable
setDescription
public void setDescription(String description)
- Description copied from interface:
Term
- set the description of the term;
- Specified by:
setDescription
in interface Term