|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.biojava.utils.AbstractChangeable
org.biojava.bio.taxa.AbstractTaxon
org.biojavax.bio.taxa
public abstract class AbstractTaxon
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.
Nested Class Summary |
---|
Nested classes/interfaces inherited from interface org.biojava.bio.Annotatable |
---|
Annotatable.AnnotationForwarder |
Field Summary |
---|
Fields inherited from interface org.biojava.bio.taxa.Taxon |
---|
CHANGE_COMMON_NAME, CHANGE_SCIENTIFIC_NAME |
Fields inherited from interface org.biojava.bio.Annotatable |
---|
ANNOTATION |
Constructor Summary | |
---|---|
protected |
AbstractTaxon()
Deprecated. |
protected |
AbstractTaxon(String scientificName,
String commonName)
Deprecated. |
Method Summary | |
---|---|
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.bio.taxa.Taxon |
---|
getChildren, getParent |
Methods inherited from interface org.biojava.utils.Changeable |
---|
addChangeListener, addChangeListener, isUnchanging, removeChangeListener, removeChangeListener |
Constructor Detail |
---|
protected AbstractTaxon()
protected AbstractTaxon(String scientificName, String commonName)
Method Detail |
---|
protected ChangeSupport getChangeSupport(ChangeType ct)
AbstractChangeable
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;
getChangeSupport
in class AbstractChangeable
public String getCommonName()
Taxon
The common name of the Taxon.
This is the normal name used in common speech, such as 'human'.
getCommonName
in interface Taxon
public void setCommonName(String commonName) throws ChangeVetoException
Taxon
Set the new common name of this Taxon.
setCommonName
in interface Taxon
commonName
- the new common name
ChangeVetoException
- if the name can't be changed at this timepublic String getScientificName()
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.
getScientificName
in interface Taxon
public void setScientificName(String scientificName) throws ChangeVetoException
Taxon
setScientificName
in interface Taxon
scientificName
- the new scientific name
ChangeVetoException
- if the scientific name can't be
changed at this timepublic Annotation getAnnotation()
Annotatable
getAnnotation
in interface Annotatable
public boolean equals(Object o)
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.
equals
in interface Taxon
equals
in class Object
o
- the object to check
public String toString()
toString
in class Object
public int hashCode()
Taxon
hashCode
in interface Taxon
hashCode
in class Object
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |