com.objsys.asn1j.runtime
Class Asn1External

java.lang.Object
  extended by com.objsys.asn1j.runtime.Asn1Type
      extended by com.objsys.asn1j.runtime.Asn1External
All Implemented Interfaces:
Asn1TypeIF, java.io.Serializable, java.lang.Cloneable

public class Asn1External
extends Asn1Type

See Also:
Serialized Form

Field Summary
 Asn1ObjectDescriptor data_value_descriptor
           
 Asn1ObjectIdentifier direct_reference
           
 Asn1External_encoding encoding
           
 Asn1Integer indirect_reference
           
static Asn1Tag TAG
           
 
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, 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
Asn1External()
           
Asn1External(Asn1External_encoding encoding_)
          This constructor is for required elements only.
Asn1External(Asn1ObjectIdentifier direct_reference_, Asn1Integer indirect_reference_, Asn1ObjectDescriptor data_value_descriptor_, Asn1External_encoding encoding_)
          This constructor sets all elements to references to the given objects
Asn1External(int[] direct_reference_, long indirect_reference_, java.lang.String data_value_descriptor_, Asn1External_encoding encoding_)
          This constructor allows primitive data to be passed for all primitive elements.
 
Method Summary
 void decode(Asn1BerDecodeBuffer buffer, boolean explicit, int implicitLength)
          This method is used to decode a message that is encoded in BER or DER format.
 void decode(Asn1PerDecodeBuffer buffer)
          This method is the base implementation of the standard Packed Encoding Rules (PER) decode method.
 int encode(Asn1BerEncodeBuffer buffer, boolean explicit)
          This method is used to encode this data type in BER or DER format.
 void encode(Asn1BerOutputStream out, boolean explicit)
          This method writes to the stream an encoded ASN.1 type value including the UNIVERSAL tag value and length if explicit tagging is specified.
 void encode(Asn1PerEncodeBuffer buffer)
          This method is the base implementation of the standard Packed Encoding Rules (PER) encode method.
 boolean equals(java.lang.Object obj)
           
 int hashCode()
          Returns the hash code of the object.
 void init()
           
 void print(java.io.PrintStream _out, java.lang.String _varName, int _level)
          This method will format and output a primitive value to the given print stream.
 
Methods inherited from class com.objsys.asn1j.runtime.Asn1Type
clone, decode, decode, decode, decode, decode, decodeXML, encode, encode, encode, encode, equals, getLength, getTypeName, indent, isOpenType, matchTag, matchTag, pdiag, setKey, setOpenType
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

TAG

public static final Asn1Tag TAG

direct_reference

public Asn1ObjectIdentifier direct_reference

indirect_reference

public Asn1Integer indirect_reference

data_value_descriptor

public Asn1ObjectDescriptor data_value_descriptor

encoding

public Asn1External_encoding encoding
Constructor Detail

Asn1External

public Asn1External()

Asn1External

public Asn1External(Asn1ObjectIdentifier direct_reference_,
                    Asn1Integer indirect_reference_,
                    Asn1ObjectDescriptor data_value_descriptor_,
                    Asn1External_encoding encoding_)
This constructor sets all elements to references to the given objects


Asn1External

public Asn1External(Asn1External_encoding encoding_)
This constructor is for required elements only. It sets all elements to references to the given objects


Asn1External

public Asn1External(int[] direct_reference_,
                    long indirect_reference_,
                    java.lang.String data_value_descriptor_,
                    Asn1External_encoding encoding_)
This constructor allows primitive data to be passed for all primitive elements. It will create new object wrappers for the primitive data and set other elements to references to the given objects

Method Detail

init

public void init()

equals

public boolean equals(java.lang.Object obj)
Overrides:
equals in class java.lang.Object

hashCode

public int hashCode()
Description copied from class: Asn1Type
Returns the hash code of the object. Note: The default behavior of the hashcode is to return 1. This method is overridden in subclasses of Asn1Type to produce real hashcodes.

Overrides:
hashCode in class Asn1Type

decode

public void decode(Asn1BerDecodeBuffer buffer,
                   boolean explicit,
                   int implicitLength)
            throws Asn1Exception,
                   java.io.IOException
Description copied from class: Asn1Type
This method is used to decode a message that is encoded in BER or DER format.

Specified by:
decode in interface Asn1TypeIF
Overrides:
decode in class Asn1Type
Parameters:
buffer - Decode message buffer object
explicit - Flag indicating explicit tag should be parsed from the encoded type.
implicitLength - Length of the contents field (only required if explicit is false).
Throws:
Asn1Exception
java.io.IOException

encode

public int encode(Asn1BerEncodeBuffer buffer,
                  boolean explicit)
           throws Asn1Exception
Description copied from class: Asn1Type
This method is used to encode this data type in BER or DER format.

Specified by:
encode in interface Asn1TypeIF
Overrides:
encode in class Asn1Type
Parameters:
buffer - Encode message buffer object
explicit - Flag indicating explicit tag should be added to the encoded type.
Returns:
Decoded integer value
Throws:
Asn1Exception

encode

public void encode(Asn1BerOutputStream out,
                   boolean explicit)
            throws Asn1Exception,
                   java.io.IOException
Description copied from class: Asn1Type
This method writes to the stream an encoded ASN.1 type 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:
Asn1Exception - Thrown, if operation is failed.
java.io.IOException - Any exception thrown by the underlying OutputStream.

decode

public void decode(Asn1PerDecodeBuffer buffer)
            throws Asn1Exception,
                   java.io.IOException
Description copied from class: Asn1Type
This method is the base implementation of the standard Packed Encoding Rules (PER) decode method. It throws an exception because it should never be invoked by compiler generated code.

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

encode

public void encode(Asn1PerEncodeBuffer buffer)
            throws Asn1Exception,
                   java.io.IOException
Description copied from class: Asn1Type
This method is the base implementation of the standard Packed Encoding Rules (PER) encode method. It throws an exception because it should never be invoked by compiler generated code.

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

print

public void print(java.io.PrintStream _out,
                  java.lang.String _varName,
                  int _level)
Description copied from class: Asn1Type
This method will format and output a primitive value to the given print stream.

Specified by:
print in interface Asn1TypeIF
Overrides:
print in class Asn1Type
Parameters:
_out - Print output stream
_varName - Name of variable
_level - Indentation level