Class BlankNodeImpl

    • Field Summary

      Fields 
      Modifier and Type Field Description
      private static java.util.concurrent.atomic.AtomicLong COUNTER  
      private static java.util.UUID SALT  
      private java.lang.String uniqueReference  
    • Constructor Summary

      Constructors 
      Constructor Description
      BlankNodeImpl()  
      BlankNodeImpl​(java.util.UUID uuidSalt, java.lang.String name)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean equals​(java.lang.Object obj)
      Check it this BlankNode is equal to another BlankNode.
      int hashCode()
      Calculate a hash code for this BlankNode.
      java.lang.String ntriplesString()
      Return the term serialised as specified by the RDF-1.1 N-Triples Canonical form.
      java.lang.String toString()  
      java.lang.String uniqueReference()
      Return a reference for uniquely identifying the blank node.
      • Methods inherited from class java.lang.Object

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

      • SALT

        private static final java.util.UUID SALT
      • COUNTER

        private static final java.util.concurrent.atomic.AtomicLong COUNTER
      • uniqueReference

        private final java.lang.String uniqueReference
    • Constructor Detail

      • BlankNodeImpl

        public BlankNodeImpl()
      • BlankNodeImpl

        public BlankNodeImpl​(java.util.UUID uuidSalt,
                             java.lang.String name)
    • Method Detail

      • uniqueReference

        public java.lang.String uniqueReference()
        Description copied from interface: BlankNode
        Return a reference for uniquely identifying the blank node.

        The reference string MUST universally and uniquely identify this blank node. That is, different blank nodes created separately in different JVMs or from different RDF instances MUST NOT have the same reference string.

        The BlankNode.uniqueReference() of two BlankNode instances MUST be equal if and only if the two blank nodes are equal according to BlankNode.equals(Object).

        Clients should not assume any particular structure of the reference string, however it is recommended that the reference string contain a UUID-derived string, e.g. as returned from UUID.toString().

        IMPORTANT: This is not a blank node identifier nor a serialization/syntax label, and there are no guarantees that it is a valid identifier in any concrete RDF syntax. For an N-Triples compatible identifier, use RDFTerm.ntriplesString().

        Specified by:
        uniqueReference in interface BlankNode
        Returns:
        A universally unique reference to identify this BlankNode
      • ntriplesString

        public java.lang.String ntriplesString()
        Description copied from interface: RDFTerm
        Return the term serialised as specified by the RDF-1.1 N-Triples Canonical form.
        Specified by:
        ntriplesString in interface RDFTerm
        Returns:
        The term serialised as RDF-1.1 N-Triples.
        See Also:
        RDF-1.1 N-Triples Canonical form
      • toString

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

        public int hashCode()
        Description copied from interface: BlankNode
        Calculate a hash code for this BlankNode.

        The returned hash code MUST be equal to the String.hashCode() of the BlankNode.uniqueReference().

        This method MUST be implemented in conjunction with BlankNode.equals(Object) so that two equal BlankNodes produce the same hash code.

        Specified by:
        hashCode in interface BlankNode
        Specified by:
        hashCode in interface RDFTerm
        Overrides:
        hashCode in class java.lang.Object
        Returns:
        a hash code value for this BlankNode.
        See Also:
        Object.hashCode()
      • equals

        public boolean equals​(java.lang.Object obj)
        Description copied from interface: BlankNode
        Check it this BlankNode is equal to another BlankNode. Two BlankNodes MUST be equal if, and only if, they have the same BlankNode.uniqueReference().

        Implementations MUST also override BlankNode.hashCode() so that two equal Literals produce the same hash code.

        Specified by:
        equals in interface BlankNode
        Specified by:
        equals in interface RDFTerm
        Overrides:
        equals in class java.lang.Object
        Parameters:
        obj - Another object
        Returns:
        true if other is a BlankNode instance that represent the same blank node
        See Also:
        Object.equals(Object)