ASN1ObjectIdentifier (Bouncy Castle Library 1.52 API Specification)
Date: 2015-03-01

org.bouncycastle.asn1

## Class ASN1ObjectIdentifier

- java.lang.Object
- - org.bouncycastle.asn1.ASN1Object
  - - org.bouncycastle.asn1.ASN1Primitive
    - - org.bouncycastle.asn1.ASN1ObjectIdentifier

- All Implemented Interfaces:
    ASN1Encodable, Encodable
  Direct Known Subclasses:
    DERObjectIdentifier, PolicyQualifierId

      public class ASN1ObjectIdentifier
      extends ASN1Primitive

  Class representing the ASN.1 OBJECT IDENTIFIER type.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `ASN1ObjectIdentifier(java.lang.String identifier)` Create an OID based on the passed in String.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `ASN1ObjectIdentifier` | `branch(java.lang.String branchID)` Return an OID that creates a branch under the current one.
    `protected byte[]` | `getBody()`
    `java.lang.String` | `getId()` Return the OID as a string.
    `static ASN1ObjectIdentifier` | `getInstance(ASN1TaggedObject obj, boolean explicit)` return an Object Identifier from a tagged object.
    `static ASN1ObjectIdentifier` | `getInstance(java.lang.Object obj)` return an OID from the passed in object
    `int` | `hashCode()`
    `boolean` | `on(ASN1ObjectIdentifier stem)` Return true if this oid is an extension of the passed in branch, stem.
    `java.lang.String` | `toString()`

    - ### Methods inherited from class org.bouncycastle.asn1.ASN1Primitive

      `equals, fromByteArray, toASN1Primitive`

    - ### Methods inherited from class org.bouncycastle.asn1.ASN1Object

      `getEncoded, getEncoded, hasEncodedTagValue, toASN1Object`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### ASN1ObjectIdentifier

          public ASN1ObjectIdentifier(java.lang.String identifier)

      Create an OID based on the passed in String.
      Parameters:
        `identifier` - a string representation of an OID.

  - ### Method Detail

    - #### getInstance

          public static ASN1ObjectIdentifier getInstance(java.lang.Object obj)

      return an OID from the passed in object
      Parameters:
        `obj` - an ASN1ObjectIdentifier or an object that can be converted into one.
      Returns:
        an ASN1ObjectIdentifier instance, or null.
      Throws:
        `java.lang.IllegalArgumentException` - if the object cannot be converted.

    - #### getInstance

          public static ASN1ObjectIdentifier getInstance(ASN1TaggedObject obj,
                                         boolean explicit)

      return an Object Identifier from a tagged object.
      Parameters:
        `obj` - the tagged object holding the object we want
        `explicit` - true if the object is meant to be explicitly tagged false otherwise.
      Returns:
        an ASN1ObjectIdentifier instance, or null.
      Throws:
        `java.lang.IllegalArgumentException` - if the tagged object cannot be converted.

    - #### getId

          public java.lang.String getId()

      Return the OID as a string.
      Returns:
        the string representation of the OID carried by this object.

    - #### branch

          public ASN1ObjectIdentifier branch(java.lang.String branchID)

      Return an OID that creates a branch under the current one.
      Parameters:
        `branchID` - node numbers for the new branch.
      Returns:
        the OID for the new created branch.

    - #### on

          public boolean on(ASN1ObjectIdentifier stem)

      Return true if this oid is an extension of the passed in branch, stem.
      Parameters:
        `stem` - the arc or branch that is a possible parent.
      Returns:
        true if the branch is on the passed in stem, false otherwise.

    - #### getBody

          protected byte[] getBody()

    - #### hashCode

          public int hashCode()

      Specified by:
        `hashCode` in class `ASN1Primitive`

    - #### toString

          public java.lang.String toString()

      Overrides:
        `toString` in class `java.lang.Object`