Class ObjectIdentifier

java.lang.Object
org.mozilla.jss.netscape.security.util.ObjectIdentifier
All Implemented Interfaces:
Serializable

public final class ObjectIdentifier extends Object implements 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.42.2.17 node in the hierarchy, and other organizations can easily acquire the ability to assign such unique identifiers.

See Also:
  • Constructor Details

    • ObjectIdentifier

      public ObjectIdentifier(String oid)
      Constructs an object identifier from a string. This string should be of the form 1.23.34.45.56 etc.
    • ObjectIdentifier

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

      public ObjectIdentifier(BigInteger[] values)
    • ObjectIdentifier

      public ObjectIdentifier(long[] values)
      Constructs an object ID from an array of longs This is used to construct constant object IDs.
    • ObjectIdentifier

      public ObjectIdentifier(DerInputStream in) throws 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:
      IOException - indicates a decoding error
  • Method Details

    • encode

      public void encode(DerOutputStream out) throws IOException
      Throws:
      IOException
    • 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(Object other)
      Overrides:
      equals in class Object
    • equals

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

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public 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 Object
    • getObjectIdentifier

      public static ObjectIdentifier getObjectIdentifier(String oid) throws IOException
      Throws:
      IOException
    • getObjectIdentifier

      public static ObjectIdentifier getObjectIdentifier(int[] values) throws IOException
      Throws:
      IOException