Class WeakTaxonFactory

  • All Implemented Interfaces:
    TaxonFactory

    public class WeakTaxonFactory
    extends Object
    implements TaxonFactory
    Deprecated.
    replaced by classes in org.biojavax.bio.taxa

    An implementation of TaxonFactory that builds a weak in-memory Taxon tree.

    This implementation holds only weak references to the Taxon instances it knows about. This means that WeakTaxonFactory may not be appropriate for situations where you wish to browse the taxon tree. It does, however, mean that massive taxa can be represented, by effectively reflecting the currently useful rooted sub-tree in memory.

    Author:
    Matthew Pocock
    • Field Detail

      • GLOBAL

        public static final WeakTaxonFactory GLOBAL
        Deprecated.
        The TaxonFactory that the biojava system should use for storing the taxonomy used by swissprot and embl as in-memory objects.
    • Method Detail

      • getRoot

        public Taxon getRoot()
        Deprecated.
        Description copied from interface: TaxonFactory

        Retrieve the root upon which all rooted Taxon that this factory knows about are rooted.

        Specified by:
        getRoot in interface TaxonFactory
        Returns:
        the 'root' Taxon
      • importTaxon

        public Taxon importTaxon​(Taxon taxon)
        Deprecated.
        Description copied from interface: TaxonFactory

        Import a Taxon and all its children into the implementation provided by this factory.

        The return value of this method should be .equals() and .hasCode() compatable with the taxon parameter. It may not be implemented by the same underlying implementation.

        Specified by:
        importTaxon in interface TaxonFactory
        Parameters:
        taxon - the Taxon to copy
        Returns:
        a new Taxon
      • createTaxon

        public Taxon createTaxon​(String scientificName,
                                 String commonName)
        Deprecated.
        Description copied from interface: TaxonFactory

        Create a new orphan Taxon with a given scientific and common name.

        Specified by:
        createTaxon in interface TaxonFactory
        Parameters:
        scientificName - the scientificName to give the Taxon
        commonName - the common name to give the Taxon
        Returns:
        a new Taxon with no parent and no children
      • addChild

        public Taxon addChild​(Taxon parent,
                              Taxon child)
        Deprecated.
        Description copied from interface: TaxonFactory

        Add a taxon as a child to a parent.

        The TaxonFactory may chose to add the child directly, or make a new object which is .equals() compatable with child. The actual Taxon instance inserted into the child set is returned by the add method.

        Specified by:
        addChild in interface TaxonFactory
        Parameters:
        parent - the parent Taxon to add the child to
        child - the Taxon to add as a child
        Returns:
        the Taxon object actualy present as the child
      • removeChild

        public Taxon removeChild​(Taxon parent,
                                 Taxon child)
        Deprecated.
        Description copied from interface: TaxonFactory

        Remove a Taxon as a child to this one.

        This Taxon should attempt to remove a child that is .equals() compatable with child. If it is sucessful, it should return the Taxon instance that was removed. If not, it should return null.

        Specified by:
        removeChild in interface TaxonFactory
        Parameters:
        parent - the parent Taxon to remove the child from
        child - the Taxon to remove as a child
        Returns:
        the actual Taxon removed, or null if none were removed
      • search

        public Taxon search​(Object id)
        Deprecated.
        Description copied from interface: TaxonFactory

        Retrieve a Taxon that matches some ID.

        This method is here out of desperation. It's nasty and should be replaced by some propper querying API. Without having different methods for every TaxonFactory I don't know what to do. All ideas appreciated.

        Specified by:
        search in interface TaxonFactory
        Parameters:
        id - the Object identifying a Taxon
        Returns:
        the Taxon matching the ID, or null if none match