Class AbstractTaxon
- java.lang.Object
-
- org.biojava.utils.AbstractChangeable
-
- org.biojava.bio.taxa.AbstractTaxon
-
- All Implemented Interfaces:
Annotatable
,Taxon
,Changeable
- Direct Known Subclasses:
SimpleTaxon
,WeakTaxon
public abstract class AbstractTaxon extends AbstractChangeable implements Taxon
Deprecated.replaced by classes inorg.biojavax.bio.taxa
An abstract implementation of Taxon.
It is left up to the impementor to provide methods for accessing the parent and children. All other state is provided for here. A common pattern would be to route any Taxon.getParent() call back via a method on the TaxonFactory used to generate this instance.
- Since:
- 1.3
- Author:
- Matthew Pocock, Keith James
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.biojava.bio.Annotatable
Annotatable.AnnotationForwarder
-
-
Field Summary
-
Fields inherited from interface org.biojava.bio.Annotatable
ANNOTATION
-
Fields inherited from interface org.biojava.bio.taxa.Taxon
CHANGE_COMMON_NAME, CHANGE_SCIENTIFIC_NAME
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
AbstractTaxon()
Deprecated.protected
AbstractTaxon(String scientificName, String commonName)
Deprecated.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description boolean
equals(Object o)
Deprecated.Two taxa are equal if they have equivalent children, common and scientific names.Annotation
getAnnotation()
Deprecated.Should return the associated annotation object.protected ChangeSupport
getChangeSupport(ChangeType ct)
Deprecated.Called to retrieve the ChangeSupport for this object.String
getCommonName()
Deprecated.The common name of the Taxon.String
getScientificName()
Deprecated.The scientific name of this taxon.int
hashCode()
Deprecated.The hash-code of a Taxon is equal to the hash-code of it's scientific name.void
setCommonName(String commonName)
Deprecated.Set the new common name of this Taxon.void
setScientificName(String scientificName)
Deprecated.Change the scientific name of this species.String
toString()
Deprecated.-
Methods inherited from class org.biojava.utils.AbstractChangeable
addChangeListener, addChangeListener, generateChangeSupport, hasListeners, hasListeners, isUnchanging, removeChangeListener, removeChangeListener
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.biojava.utils.Changeable
addChangeListener, addChangeListener, isUnchanging, removeChangeListener, removeChangeListener
-
Methods inherited from interface org.biojava.bio.taxa.Taxon
getChildren, getParent
-
-
-
-
Constructor Detail
-
AbstractTaxon
protected AbstractTaxon()
Deprecated.
-
AbstractTaxon
protected AbstractTaxon(String scientificName, String commonName)
Deprecated.
-
-
Method Detail
-
getChangeSupport
protected ChangeSupport getChangeSupport(ChangeType ct)
Deprecated.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
-
getCommonName
public String getCommonName()
Deprecated.Description copied from interface:Taxon
The common name of the Taxon.
This is the normal name used in common speech, such as 'human'.
- Specified by:
getCommonName
in interfaceTaxon
- Returns:
- a String representing this Taxon's common name
-
setCommonName
public void setCommonName(String commonName) throws ChangeVetoException
Deprecated.Description copied from interface:Taxon
Set the new common name of this Taxon.
- Specified by:
setCommonName
in interfaceTaxon
- Parameters:
commonName
- the new common name- Throws:
ChangeVetoException
- if the name can't be changed at this time
-
getScientificName
public String getScientificName()
Deprecated.Description copied from interface:Taxon
The scientific name of this taxon.
This will be the portion of the scientific classification pertaining to just this node within the classifictaion. It will be something like 'homo sapiens' or 'archaeal group 2', rather than the full classification list.
- Specified by:
getScientificName
in interfaceTaxon
-
setScientificName
public void setScientificName(String scientificName) throws ChangeVetoException
Deprecated.Description copied from interface:Taxon
Change the scientific name of this species.- Specified by:
setScientificName
in interfaceTaxon
- Parameters:
scientificName
- the new scientific name- Throws:
ChangeVetoException
- if the scientific name can't be changed at this time
-
getAnnotation
public Annotation getAnnotation()
Deprecated.Description copied from interface:Annotatable
Should return the associated annotation object.- Specified by:
getAnnotation
in interfaceAnnotatable
- Returns:
- an Annotation object, never null
-
equals
public boolean equals(Object o)
Deprecated.Description copied from interface:Taxon
Two taxa are equal if they have equivalent children, common and scientific names.
Two different implementations of Taxon should be able to appropriately trans-class equality. The parent of a Taxon is not considered in testing equality as this potentially leads to combinatorial problems checking whole taxa hierachies against one another.
-
-