Class ObjectIdentifier

  • All Implemented Interfaces:
    java.io.Serializable

    public class ObjectIdentifier
    extends java.lang.Object
    implements java.io.Serializable
    Represent an ISO Object Identifier.

    Object Identifiers are arbitrary length hierarchical identifiers. The individual components are numbers, and they define paths from the root of an ISO-managed identifier space. You will sometimes see a string name used instead of (or in addition to) the numerical id. These are synonyms for the numerical IDs, but are not widely used since most sites do not know all the requisite strings, while all sites can parse the numeric forms.

    So for example, JavaSoft has the sole authority to assign the meaning to identifiers below the 1.3.6.1.4.1.42.2.17 node in the hierarchy, and other organizations can easily acquire the ability to assign such unique identifiers.

    See Also:
    Serialized Form
    • Constructor Summary

      Constructors 
      Constructor Description
      ObjectIdentifier​(int[] values)
      Constructs an object ID from an array of integers.
      ObjectIdentifier​(DERInputBuffer buf)
      Build the OID from the rest of a DER input buffer; the tag and length have been removed/verified
      ObjectIdentifier​(DERInputStream in)
      Constructs an object ID from an ASN.1 encoded input stream.
      ObjectIdentifier​(java.lang.String oid)
      Constructs an object identifier from a string.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean equals​(ObjectIdentifier other)
      Compares this identifier with another, for equality.
      boolean equals​(java.lang.Object other)  
      int hashCode()  
      boolean precedes​(ObjectIdentifier other)
      Compares this identifier with another, for sorting purposes.
      java.lang.String toString()
      Returns a string form of the object ID.
      • Methods inherited from class java.lang.Object

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

      • ObjectIdentifier

        public ObjectIdentifier​(java.lang.String oid)
        Constructs an object identifier from a string. This string should be of the form 1.23.34.45.56 etc.
        Parameters:
        oid - the if
      • ObjectIdentifier

        public ObjectIdentifier​(int[] values)
        Constructs an object ID from an array of integers. This is used to construct constant object IDs.
        Parameters:
        values - the values
      • ObjectIdentifier

        public ObjectIdentifier​(DERInputStream in)
                         throws java.io.IOException
        Constructs an object ID from an ASN.1 encoded input stream. The encoding of the ID in the stream uses "DER", a BER/1 subset. In this case, that means a triple { typeId, length, data }.

        NOTE: When an exception is thrown, the input stream has not been returned to its "initial" state.

        Parameters:
        in - DER-encoded data holding an object ID
        Throws:
        java.io.IOException - indicates a decoding error
      • ObjectIdentifier

        public ObjectIdentifier​(DERInputBuffer buf)
                         throws java.io.IOException
        Build the OID from the rest of a DER input buffer; the tag and length have been removed/verified
        Parameters:
        buf - the buffer
        Throws:
        java.io.IOException - In case of a data error
    • Method Detail

      • precedes

        public boolean precedes​(ObjectIdentifier other)
        Compares this identifier with another, for sorting purposes. An identifier does not precede itself.
        Parameters:
        other - identifer that may precede this one.
        Returns:
        true iff other precedes this one in a particular sorting order.
      • equals

        public boolean equals​(java.lang.Object other)
        Overrides:
        equals in class java.lang.Object
        See Also:
        Object.equals(java.lang.Object)
      • equals

        public boolean equals​(ObjectIdentifier other)
        Compares this identifier with another, for equality.
        Parameters:
        other - the object to compare
        Returns:
        true iff the names are identical.
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
        See Also:
        Object.hashCode()
      • toString

        public java.lang.String toString()
        Returns a string form of the object ID. The format is the conventional "dot" notation for such IDs, without any user-friendly descriptive strings, since those strings will not be understood everywhere.
        Overrides:
        toString in class java.lang.Object
        Returns:
        the string