com.objsys.asn1j.runtime
Class Asn1OID_IRI

java.lang.Object
  extended by com.objsys.asn1j.runtime.Asn1Type
      extended by com.objsys.asn1j.runtime.Asn1CharString
          extended by com.objsys.asn1j.runtime.Asn1OID_IRI
All Implemented Interfaces:
Asn1TypeIF, java.io.Serializable, java.lang.Cloneable
Direct Known Subclasses:
Asn1RELATIVE_OID_IRI

public class Asn1OID_IRI
extends Asn1CharString

This class represents the ASN.1 OID-IRI. It is really nothing more than a string, but it provides the decoding and encoding methods for various encoding rules. That this class extends Asn1CharString should be considered an implementation detail. The reason for the inheritance is that, like Asn1CharString, this class is a wrapper around a String value.

See Also:
Serialized Form

Field Summary
static Asn1Tag TAG
          The TAG constant describes the universal tag for this data type (UNIVERSAL 35).
 
Fields inherited from class com.objsys.asn1j.runtime.Asn1CharString
mStringBuffer, value
 
Fields inherited from class com.objsys.asn1j.runtime.Asn1Type
BIT_STRING, BMPString, BOOLEAN, DATE, DATE_TIME, DURATION, ENUMERATED, EOC, EXTERNAL, GeneralString, GeneralTime, GraphicString, IA5String, INTEGER, mAsn1TypeName, NULL, NumericString, OBJECT_IDENTIFIER, ObjectDescriptor, OCTET_STRING, OID_IRI, OpenType, PrintableString, REAL, RELATIVE_OID_IRI, RelativeOID, SEQUENCE, SET, T61String, TeletexString, TIME, TIME_OF_DAY, UniversalString, UTCTime, UTF8String, VideotexString, VisibleString
 
Constructor Summary
  Asn1OID_IRI()
          The default constructor creates an empty string object.
protected Asn1OID_IRI(short typeCode)
          The default constructor creates an empty string object.
  Asn1OID_IRI(java.lang.String data)
          This version of the constructor can be used to set the string value member variable to the given string value.
protected Asn1OID_IRI(java.lang.String data, short typeCode)
          This version of the constructor can be used to set the string value member variable to the given string value.
 
Method Summary
 void decode(Asn1BerDecodeBuffer buffer, boolean explicit, int implicitLength)
          This method decodes an ASN.1 OID-IRI string value including the UNIVERSAL tag value and length if explicit tagging is specified.
 void decode(Asn1PerDecodeBuffer buffer)
          This method decodes an ASN.1 OID-IRI using the packed encoding rules (PER).
 void decode(Asn1PerDecodeBuffer buffer, long lower, long upper)
          This method decodes an ASN.1 OID-IRI using the packed encoding rules (PER).
 int encode(Asn1BerEncodeBuffer buffer, boolean explicit)
          This method encodes an ASN.1 OID-IRI string value.
 void encode(Asn1BerOutputStream out, boolean explicit)
          This method encodes and writes to the stream an ASN.1 OID-IRI value including the UNIVERSAL tag value and length if explicit tagging is specified.
 void encode(Asn1PerEncodeBuffer buffer)
          This method encodes an ASN.1 OID-IRI value using the packed encoding rules (PER).
 void encode(Asn1PerEncodeBuffer buffer, long lower, long upper)
          This method encodes an ASN.1 OID-IRI value using the packed encoding rules (PER).
 void encode(Asn1PerOutputStream out)
          This method encodes an ASN.1 OID-IRI string value using the packed encoding rules (PER).
 void encode(Asn1PerOutputStream out, long lower, long upper)
          This method encodes an ASN.1 OID-IRI string value using the packed encoding rules (PER).
protected  Asn1Tag getTag()
          Allows subclass to use a different tag by overriding this method.
protected  short getTagNumber()
          Allows subclass to use a different tag number by overriding this method.
 
Methods inherited from class com.objsys.asn1j.runtime.Asn1CharString
decode, decode, decode, decode, decodeXER, decodeXML, encode, encode, encode, encode, encode, encode, equals, equals, getAsn1TypeName, getLength, hashCode, toString, validate
 
Methods inherited from class com.objsys.asn1j.runtime.Asn1Type
clone, decode, decode, decode, decode, decode, encode, encode, equals, getTypeName, indent, isOpenType, matchTag, matchTag, pdiag, print, setKey, setOpenType
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

TAG

public static final Asn1Tag TAG
The TAG constant describes the universal tag for this data type (UNIVERSAL 35).

Constructor Detail

Asn1OID_IRI

protected Asn1OID_IRI(short typeCode)
The default constructor creates an empty string object.


Asn1OID_IRI

public Asn1OID_IRI()
The default constructor creates an empty string object.


Asn1OID_IRI

protected Asn1OID_IRI(java.lang.String data,
                      short typeCode)
This version of the constructor can be used to set the string value member variable to the given string value.


Asn1OID_IRI

public Asn1OID_IRI(java.lang.String data)
This version of the constructor can be used to set the string value member variable to the given string value.

Method Detail

getTagNumber

protected short getTagNumber()
Allows subclass to use a different tag number by overriding this method.

Returns:

getTag

protected Asn1Tag getTag()
Allows subclass to use a different tag by overriding this method.

Returns:

decode

public void decode(Asn1BerDecodeBuffer buffer,
                   boolean explicit,
                   int implicitLength)
            throws Asn1Exception,
                   java.io.IOException
This method decodes an ASN.1 OID-IRI string value including the UNIVERSAL tag value and length if explicit tagging is specified. This string type uses variable length character encodings.

Specified by:
decode in interface Asn1TypeIF
Overrides:
decode in class Asn1Type
Parameters:
buffer - Decode message buffer object
explicit - Flag indicating element is explicitly tagged
implicitLength - Length of contents if implicit
Throws:
Asn1Exception
java.io.IOException

encode

public int encode(Asn1BerEncodeBuffer buffer,
                  boolean explicit)
           throws Asn1Exception
This method encodes an ASN.1 OID-IRI string value. The UNIVERSAL tag value and length is also encoded if explicit tagging is specified.

Specified by:
encode in interface Asn1TypeIF
Overrides:
encode in class Asn1Type
Parameters:
buffer - Encode message buffer object
explicit - Flag indicating explicit tagging should be done
Returns:
Length in octets of encoded component
Throws:
Asn1Exception

decode

public void decode(Asn1PerDecodeBuffer buffer)
            throws Asn1Exception,
                   java.io.IOException
This method decodes an ASN.1 OID-IRI using the packed encoding rules (PER).

Specified by:
decode in interface Asn1TypeIF
Overrides:
decode in class Asn1Type
Parameters:
buffer - Decode message buffer object
Throws:
Asn1Exception
java.io.IOException

decode

public void decode(Asn1PerDecodeBuffer buffer,
                   long lower,
                   long upper)
            throws Asn1Exception,
                   java.io.IOException
This method decodes an ASN.1 OID-IRI using the packed encoding rules (PER).

Parameters:
buffer - Decode message buffer object
lower - ignored
upper - ignored
Throws:
Asn1Exception
java.io.IOException

encode

public void encode(Asn1PerEncodeBuffer buffer)
            throws Asn1Exception,
                   java.io.IOException
This method encodes an ASN.1 OID-IRI value using the packed encoding rules (PER). The value to be encoded is stored in the 'value' public member variable within this class.

Specified by:
encode in interface Asn1TypeIF
Overrides:
encode in class Asn1Type
Parameters:
buffer - Encode message buffer object
Throws:
Asn1Exception
java.io.IOException

encode

public void encode(Asn1PerEncodeBuffer buffer,
                   long lower,
                   long upper)
            throws Asn1Exception,
                   java.io.IOException
This method encodes an ASN.1 OID-IRI value using the packed encoding rules (PER). The value to be encoded is stored in the 'value' public member variable within this class.

Parameters:
buffer - Encode message buffer object
lower - ignored
upper - ignored
Throws:
Asn1Exception
java.io.IOException

encode

public void encode(Asn1BerOutputStream out,
                   boolean explicit)
            throws Asn1Exception,
                   java.io.IOException
This method encodes and writes to the stream an ASN.1 OID-IRI value including the UNIVERSAL tag value and length if explicit tagging is specified. This overloaded version uses the Basic Encoding Rules (BER).

Specified by:
encode in interface Asn1TypeIF
Overrides:
encode in class Asn1Type
Parameters:
out - BER Output Stream object
explicit - Flag indicating explicit tagging should be done
Throws:
java.io.IOException - Any exception thrown by the underlying OutputStream.
Asn1Exception - Thrown, if operation is failed.

encode

public void encode(Asn1PerOutputStream out)
            throws Asn1Exception,
                   java.io.IOException
This method encodes an ASN.1 OID-IRI string value using the packed encoding rules (PER). The value to be encoded is stored in the 'value' public member variable within this class.

Specified by:
encode in interface Asn1TypeIF
Overrides:
encode in class Asn1Type
Parameters:
out - PER Output Stream object
Throws:
java.io.IOException - Any exception thrown by the Asn1PerOutputStream.
Asn1Exception - Thrown, if operation is failed.

encode

public void encode(Asn1PerOutputStream out,
                   long lower,
                   long upper)
            throws Asn1Exception,
                   java.io.IOException
This method encodes an ASN.1 OID-IRI string value using the packed encoding rules (PER). The value to be encoded is stored in the 'value' public member variable within this class.

Parameters:
out - PER Output Stream object
lower - ignored
upper - ignored
Throws:
java.io.IOException - Any exception thrown by the Asn1PerOutputStream.
Asn1Exception - Thrown, if operation is failed.