com.objsys.asn1j.runtime
Class Asn1BigInteger

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

public class Asn1BigInteger
extends Asn1Type

This class represents an ASN.1 INTEGER built-in type. In this case, the values can be greater than 64 bits in size. This class is used in generated source code if the \ qualifier is specified in a compiler configuration file.

See Also:
Serialized Form

Field Summary
static Asn1Tag TAG
          The TAG constant describes the universal tag for this data type (UNIVERSAL 2).
 java.math.BigInteger value
          The value member is public and is an instance of a Java BigInteger object.
 
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
Asn1BigInteger()
          The default constructor sets the big integer value object reference to null.
Asn1BigInteger(java.math.BigInteger value)
          This constructor sets the big integer object reference to that of the object passed in.
Asn1BigInteger(java.lang.String value)
          This constructor creates a new big integer object and sets it to the string value passed in.
Asn1BigInteger(java.lang.String value, int radix)
          This constructor creates a new big integer object and sets it to the number string value passed in using the given radix.
 
Method Summary
 void decode(Asn1BerDecodeBuffer buffer, boolean explicit, int implicitLength)
          This method decodes an ASN.1 integer value including the UNIVERSAL tag value and length if explicit tagging is specified.
 void decode(Asn1JsonDecodeBuffer buffer)
          Decode ASN.1 INTEGER from JSON.
 void decode(Asn1PerDecodeBuffer buffer)
          This method decodes an unconstrained ASN.1 integer value using the Packed Encoding Rules (PER).
 void decode(Asn1PerDecodeBuffer buffer, java.math.BigInteger lower, java.math.BigInteger upper)
          This method decodes an ASN.1 integer value using Packed Encoding Rules (PER).
static java.math.BigInteger decodeValue(Asn1DecodeBuffer buffer, int length)
          This method decodes the contents of an ASN.1 integer value using either the Basic Encoding Rules (BER) or the Packed Encoding Rules (PER).
 void decodeXER(java.lang.String buffer, java.lang.String attrs)
          This method decodes an ASN.1 integer value using the XML encoding rules (XER).
 void decodeXML(java.lang.String buffer, java.lang.String attrs)
          This method decodes an ASN.1 integer value using the XML schema encoding rules.
 int encode(Asn1BerEncodeBuffer buffer, boolean explicit)
          This method encodes an ASN.1 integer value including the UNIVERSAL tag value and length if explicit tagging is specified.
 void encode(Asn1BerOutputStream out, boolean explicit)
          This method encodes and writes to the stream an ASN.1 integer value including the UNIVERSAL tag value and length if explicit tagging is specified.
 void encode(Asn1JsonOutputStream outstream)
          Encode this ASN.1 INTEGER value to JSON
 void encode(Asn1PerEncodeBuffer buffer)
          This method encodes an unconstrained ASN.1 integer value using the Packed Encoding Rules (PER).
 void encode(Asn1PerEncodeBuffer buffer, java.math.BigInteger lower, java.math.BigInteger upper)
          This method encodes an ASN.1 integer value using Packed Encoding Rules (PER).
 void encode(Asn1PerOutputStream out)
          This method encodes an unconstrained ASN.1 integer value using the Packed Encoding Rules (PER).
 void encode(Asn1PerOutputStream out, java.math.BigInteger lower, java.math.BigInteger upper)
          This method encodes an ASN.1 integer value using Packed Encoding Rules (PER).
 void encode(Asn1XerEncoder buffer, java.lang.String elemName)
          This method encodes an ASN.1 integer value using the XML encoding rules (XER).
 void encode(Asn1XmlEncoder buffer, java.lang.String elemName, java.lang.String nsPrefix)
          This method encodes an ASN.1 integer value using the XML Encoding as specified in the XML schema standard.
 void encodeAttribute(Asn1XmlEncoder buffer, java.lang.String attrName)
          This method encodes an ASN.1 integer value using the XML Encoding as specified in the XML schema standard.
protected static int encodeValue(Asn1EncodeBuffer buffer, java.math.BigInteger ivalue, boolean doCopy)
           
 boolean equals(java.lang.Object x)
          Compares this Asn1BigInteger with the specified Object for equality.
 java.lang.String toString()
          This method will return a string representation of the integer value.
 
Methods inherited from class com.objsys.asn1j.runtime.Asn1Type
clone, decode, decode, decode, decode, decode, encode, encode, equals, getAsn1TypeName, getLength, getTypeName, hashCode, 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 2).


value

public transient java.math.BigInteger value
The value member is public and is an instance of a Java BigInteger object.

Constructor Detail

Asn1BigInteger

public Asn1BigInteger()
The default constructor sets the big integer value object reference to null.


Asn1BigInteger

public Asn1BigInteger(java.math.BigInteger value)
This constructor sets the big integer object reference to that of the object passed in.

Parameters:
value - BigInteger object reference

Asn1BigInteger

public Asn1BigInteger(java.lang.String value)
This constructor creates a new big integer object and sets it to the string value passed in. The string value may contain a prefix for the radix: 0x - hexadecimal, 0o - octal, 0b - binary. none - decimal All values are understood as positive values, unless there is a leading minus sign.

Parameters:
value - String value

Asn1BigInteger

public Asn1BigInteger(java.lang.String value,
                      int radix)
This constructor creates a new big integer object and sets it to the number string value passed in using the given radix. The string value should be as for BigInteger.BigInteger(String, int)

Parameters:
value - String value
Method Detail

decodeValue

public static java.math.BigInteger decodeValue(Asn1DecodeBuffer buffer,
                                               int length)
                                        throws Asn1Exception,
                                               java.io.IOException
This method decodes the contents of an ASN.1 integer value using either the Basic Encoding Rules (BER) or the Packed Encoding Rules (PER).

Parameters:
buffer - Decode message buffer object
length - Length of encoded contents
Returns:
Decoded integer value
Throws:
Asn1Exception
java.io.IOException

encodeValue

protected static int encodeValue(Asn1EncodeBuffer buffer,
                                 java.math.BigInteger ivalue,
                                 boolean doCopy)

equals

public boolean equals(java.lang.Object x)
Compares this Asn1BigInteger with the specified Object for equality.

Overrides:
equals in class java.lang.Object
Parameters:
x - Object to which this Asn1BigInteger is to be compared.
Returns:
true if and only if the specified Object is a Asn1BigInteger or BigInteger whose value is numerically equal to this Asn1BigInteger.

decode

public void decode(Asn1BerDecodeBuffer buffer,
                   boolean explicit,
                   int implicitLength)
            throws Asn1Exception,
                   java.io.IOException
This method decodes an ASN.1 integer value including the UNIVERSAL tag value and length if explicit tagging is specified. This overloaded version uses the Basic Encoding Rules (BER).

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 integer 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:
buffer - Encode message buffer object
explicit - Flag indicating explicit tagging should be done
Returns:
Length of component or negative status value
Throws:
Asn1Exception

decode

public void decode(Asn1PerDecodeBuffer buffer)
            throws Asn1Exception,
                   java.io.IOException
This method decodes an unconstrained ASN.1 integer value using the Packed Encoding Rules (PER). The length and contents components of the message are decoded. The decoded result is stored in the public value member variable.

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

decode

public void decode(Asn1PerDecodeBuffer buffer,
                   java.math.BigInteger lower,
                   java.math.BigInteger upper)
            throws Asn1Exception,
                   java.io.IOException
This method decodes an ASN.1 integer value using Packed Encoding Rules (PER). The length and contents components of the message are decoded. The decoded result is stored in the public value member variable.

Parameters:
buffer - PER Decode message buffer object
lower - The PER-visible lower bound; null if there is not a lower bound.
upper - The PER-visible upper bound; null if there is not an upper bound.
Throws:
Asn1Exception
java.io.IOException

encode

public void encode(Asn1PerEncodeBuffer buffer)
            throws Asn1Exception,
                   java.io.IOException
This method encodes an unconstrained ASN.1 integer value using the Packed Encoding Rules (PER). The length and contents components of the message are encoded.

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

encode

public void encode(Asn1PerEncodeBuffer buffer,
                   java.math.BigInteger lower,
                   java.math.BigInteger upper)
            throws Asn1Exception,
                   java.io.IOException
This method encodes an ASN.1 integer value using Packed Encoding Rules (PER). The length and contents components of the message are encoded.

Parameters:
buffer - PER Encode message buffer object
lower - The PER-visible lower bound; null if there is not a lower bound.
upper - The PER-visible upper bound; null if there is not an upper bound.
Throws:
Asn1Exception
java.io.IOException

encode

public void encode(Asn1XerEncoder buffer,
                   java.lang.String elemName)
            throws java.io.IOException,
                   Asn1Exception
This method encodes an ASN.1 integer value using the XML encoding rules (XER).

Specified by:
encode in interface Asn1TypeIF
Overrides:
encode in class Asn1Type
Parameters:
buffer - Encode message buffer object
elemName - Element name
Throws:
java.io.IOException - Any exception thrown by the underlying stream.
Asn1Exception - Thrown, if operation is failed.

decodeXER

public void decodeXER(java.lang.String buffer,
                      java.lang.String attrs)
               throws Asn1Exception
This method decodes an ASN.1 integer value using the XML encoding rules (XER).

Parameters:
buffer - String containing data to be decoded
attrs - Attributes string from element tag
Throws:
Asn1Exception

encode

public void encode(Asn1XmlEncoder buffer,
                   java.lang.String elemName,
                   java.lang.String nsPrefix)
            throws java.io.IOException,
                   Asn1Exception
This method encodes an ASN.1 integer value using the XML Encoding as specified in the XML schema standard.

Parameters:
buffer - Encode message buffer object
elemName - Element name
attribute - Attribute name
Throws:
java.io.IOException
Asn1Exception

encodeAttribute

public void encodeAttribute(Asn1XmlEncoder buffer,
                            java.lang.String attrName)
                     throws Asn1Exception,
                            java.io.IOException
This method encodes an ASN.1 integer value using the XML Encoding as specified in the XML schema standard.

Parameters:
buffer - Encode message buffer object
elemName - Element name
attribute - Attribute name
Throws:
Asn1Exception
java.io.IOException

decodeXML

public void decodeXML(java.lang.String buffer,
                      java.lang.String attrs)
               throws Asn1Exception
This method decodes an ASN.1 integer value using the XML schema encoding rules.

Specified by:
decodeXML in interface Asn1TypeIF
Overrides:
decodeXML in class Asn1Type
Parameters:
buffer - String containing data to be decoded
attrs - Attributes string from element tag
Throws:
Asn1Exception

decode

public void decode(Asn1JsonDecodeBuffer buffer)
            throws java.io.IOException
Decode ASN.1 INTEGER from JSON.

Parameters:
buffer -
Throws:
java.io.IOException

encode

public void encode(Asn1JsonOutputStream outstream)
            throws java.io.IOException
Encode this ASN.1 INTEGER value to JSON

Throws:
java.io.IOException

toString

public java.lang.String toString()
This method will return a string representation of the integer value. The format is the ASN.1 value format for this type..

Overrides:
toString in class java.lang.Object
Returns:
Stringified representation of the value

encode

public void encode(Asn1BerOutputStream out,
                   boolean explicit)
            throws Asn1Exception,
                   java.io.IOException
This method encodes and writes to the stream an ASN.1 integer 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 unconstrained ASN.1 integer value using the Packed Encoding Rules (PER). The length and contents components of the message are encoded.

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,
                   java.math.BigInteger lower,
                   java.math.BigInteger upper)
            throws Asn1Exception,
                   java.io.IOException
This method encodes an ASN.1 integer value using Packed Encoding Rules (PER). The length and contents components of the message are encoded.

Parameters:
buffer - PER Encode message buffer object
lower - The PER-visible lower bound; null if there is not a lower bound.
upper - The PER-visible upper bound; null if there is not an upper bound.
Throws:
Asn1Exception
java.io.IOException