Class Triple.Impl

  • All Implemented Interfaces:
    java.io.Serializable, Term, Triple, Annotatable
    Enclosing interface:
    Triple

    public static final class Triple.Impl
    extends java.lang.Object
    implements Triple, java.io.Serializable
    Basic in-memory implementation of a Triple in an ontology This can be used to implement Ontology.createTriple
    See Also:
    org.biojavax.ontology.SimpleComparableTriple, Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from interface org.biojava.nbio.ontology.Triple

        Triple.Impl
    • Constructor Summary

      Constructors 
      Constructor Description
      Impl​(Term subject, Term object, Term predicate)  
      Impl​(Term subject, Term object, Term predicate, java.lang.Object[] synonyms)  
      Impl​(Term subject, Term object, Term predicate, java.lang.String name, java.lang.String description)  
      Impl​(Term subject, Term object, Term predicate, java.lang.String name, java.lang.String description, java.lang.Object[] synonyms)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addSynonym​(java.lang.Object synonym)
      Add a synonym for this term.
      boolean equals​(java.lang.Object o)
      Two triples are equal if all their fields are identical.
      Annotation getAnnotation()
      Should return the associated annotation object.
      java.lang.String getDescription()
      Return a human-readable description of this term, or the empty string if none is available.
      java.lang.String getName()
      Return the name of this term.
      Term getObject()
      Return the object term of this triple.
      Ontology getOntology()
      Return the ontology in which this term exists.
      Term getPredicate()
      Return a Term which defines the type of relationship between the subject and object terms.
      Term getSubject()
      Return the subject term of this triple
      java.lang.Object[] getSynonyms()
      Return the synonyms for this term.
      int hashCode()
      The hashcode for a Triple.
      void removeSynonym​(java.lang.Object synonym)
      Remove a synonym for this term.
      void setDescription​(java.lang.String desc)
      set the description of the term;
      java.lang.String toString()  
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • Impl

        public Impl​(Term subject,
                    Term object,
                    Term predicate)
      • Impl

        public Impl​(Term subject,
                    Term object,
                    Term predicate,
                    java.lang.Object[] synonyms)
      • Impl

        public Impl​(Term subject,
                    Term object,
                    Term predicate,
                    java.lang.String name,
                    java.lang.String description)
      • Impl

        public Impl​(Term subject,
                    Term object,
                    Term predicate,
                    java.lang.String name,
                    java.lang.String description,
                    java.lang.Object[] synonyms)
    • Method Detail

      • addSynonym

        public void addSynonym​(java.lang.Object synonym)
        Description copied from interface: Term
        Add a synonym for this term.
        Specified by:
        addSynonym in interface Term
        Parameters:
        synonym - the synonym
      • removeSynonym

        public void removeSynonym​(java.lang.Object synonym)
        Description copied from interface: Term
        Remove a synonym for this term.
        Specified by:
        removeSynonym in interface Term
      • getSynonyms

        public java.lang.Object[] getSynonyms()
        Description copied from interface: Term
        Return the synonyms for this term.
        Specified by:
        getSynonyms in interface Term
        Returns:
        the synonyms
      • getName

        public java.lang.String getName()
        Description copied from interface: Term
        Return the name of this term.
        Specified by:
        getName in interface Term
        Returns:
        the name of the term
      • getDescription

        public java.lang.String getDescription()
        Description copied from interface: Term
        Return a human-readable description of this term, or the empty string if none is available.
        Specified by:
        getDescription in interface Term
        Returns:
        the description of the term
      • setDescription

        public void setDescription​(java.lang.String desc)
        Description copied from interface: Term
        set the description of the term;
        Specified by:
        setDescription in interface Term
      • getOntology

        public Ontology getOntology()
        Description copied from interface: Term
        Return the ontology in which this term exists.
        Specified by:
        getOntology in interface Term
        Returns:
        the ontology
      • getSubject

        public Term getSubject()
        Description copied from interface: Triple
        Return the subject term of this triple
        Specified by:
        getSubject in interface Triple
        Returns:
        the subject term
      • getObject

        public Term getObject()
        Description copied from interface: Triple
        Return the object term of this triple.
        Specified by:
        getObject in interface Triple
        Returns:
        the object term
      • getPredicate

        public Term getPredicate()
        Description copied from interface: Triple
        Return a Term which defines the type of relationship between the subject and object terms.
        Specified by:
        getPredicate in interface Triple
        Returns:
        the predicate
      • getAnnotation

        public Annotation getAnnotation()
        Description copied from interface: Annotatable
        Should return the associated annotation object.
        Specified by:
        getAnnotation in interface Annotatable
        Returns:
        an Annotation object, never null
      • equals

        public boolean equals​(java.lang.Object o)
        Two triples are equal if all their fields are identical.
        Specified by:
        equals in interface Triple
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Description copied from interface: Triple
        The hashcode for a Triple.

        This must be implemented as:

         return getSubject().hashCode() +
         31 * getObject().hashCode() +
         31 * 31 * getPredicate().hashCode();
         
        If you do not implement hashcode in this way then you have no guarantee that your Triple objects will be found in an ontology and that they will not be duplicated.

        Specified by:
        hashCode in interface Triple
        Overrides:
        hashCode in class java.lang.Object
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object