com.unboundid.asn1
Class ASN1Sequence

java.lang.Object
  extended by com.unboundid.asn1.ASN1Element
      extended by com.unboundid.asn1.ASN1Sequence
All Implemented Interfaces:
java.io.Serializable

public final class ASN1Sequence
extends ASN1Element

This class provides an ASN.1 sequence element, which is used to hold an ordered set of zero or more other elements (potentially including additional "envelope" element types like other sequences and/or sets).

See Also:
Serialized Form

Constructor Summary
ASN1Sequence()
          Creates a new ASN.1 sequence with the default BER type and no encapsulated elements.
ASN1Sequence(ASN1Element... elements)
          Creates a new ASN.1 sequence with the default BER type and the provided set of elements.
ASN1Sequence(byte type)
          Creates a new ASN.1 sequence with the specified BER type and no encapsulated elements.
ASN1Sequence(byte type, ASN1Element... elements)
          Creates a new ASN.1 sequence with the specified BER type and the provided set of elements.
ASN1Sequence(byte type, java.util.Collection<? extends ASN1Element> elements)
          Creates a new ASN.1 sequence with the specified BER type and the provided set of elements.
ASN1Sequence(java.util.Collection<? extends ASN1Element> elements)
          Creates a new ASN.1 sequence with the default BER type and the provided set of elements.
 
Method Summary
static ASN1Sequence decodeAsSequence(ASN1Element element)
          Decodes the provided ASN.1 element as a sequence element.
static ASN1Sequence decodeAsSequence(byte[] elementBytes)
          Decodes the contents of the provided byte array as a sequence element.
 ASN1Element[] elements()
          Retrieves the set of encapsulated elements held in this sequence.
 void encodeTo(ByteStringBuffer buffer)
          Appends an encoded representation of this ASN.1 element to the provided buffer.
 byte[] getValue()
          Retrieves the encoded value for this element.
 int getValueLength()
          Retrieves the number of bytes contained in the value.
 void toString(java.lang.StringBuilder buffer)
          Appends a string representation of this ASN.1 element to the provided buffer.
 
Methods inherited from class com.unboundid.asn1.ASN1Element
decode, decodeAsBoolean, decodeAsEnumerated, decodeAsInteger, decodeAsLong, decodeAsNull, decodeAsOctetString, decodeAsSequence, decodeAsSet, encode, encodeLength, equals, equalsIgnoreType, getType, hashCode, readFrom, readFrom, toString, writeTo
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ASN1Sequence

public ASN1Sequence()
Creates a new ASN.1 sequence with the default BER type and no encapsulated elements.


ASN1Sequence

public ASN1Sequence(byte type)
Creates a new ASN.1 sequence with the specified BER type and no encapsulated elements.

Parameters:
type - The BER type to use for this element.

ASN1Sequence

public ASN1Sequence(ASN1Element... elements)
Creates a new ASN.1 sequence with the default BER type and the provided set of elements.

Parameters:
elements - The set of elements to include in this sequence.

ASN1Sequence

public ASN1Sequence(java.util.Collection<? extends ASN1Element> elements)
Creates a new ASN.1 sequence with the default BER type and the provided set of elements.

Parameters:
elements - The set of elements to include in this sequence.

ASN1Sequence

public ASN1Sequence(byte type,
                    ASN1Element... elements)
Creates a new ASN.1 sequence with the specified BER type and the provided set of elements.

Parameters:
type - The BER type to use for this element.
elements - The set of elements to include in this sequence.

ASN1Sequence

public ASN1Sequence(byte type,
                    java.util.Collection<? extends ASN1Element> elements)
Creates a new ASN.1 sequence with the specified BER type and the provided set of elements.

Parameters:
type - The BER type to use for this element.
elements - The set of elements to include in this sequence.
Method Detail

getValueLength

public int getValueLength()
Retrieves the number of bytes contained in the value.

Overrides:
getValueLength in class ASN1Element
Returns:
The number of bytes contained in the value.

getValue

public byte[] getValue()
Retrieves the encoded value for this element.

Overrides:
getValue in class ASN1Element
Returns:
The encoded value for this element.

encodeTo

public void encodeTo(ByteStringBuffer buffer)
Appends an encoded representation of this ASN.1 element to the provided buffer.

Overrides:
encodeTo in class ASN1Element
Parameters:
buffer - The buffer to which the encoded representation should be appended.

elements

public ASN1Element[] elements()
Retrieves the set of encapsulated elements held in this sequence.

Returns:
The set of encapsulated elements held in this sequence.

decodeAsSequence

public static ASN1Sequence decodeAsSequence(byte[] elementBytes)
                                     throws ASN1Exception
Decodes the contents of the provided byte array as a sequence element.

Parameters:
elementBytes - The byte array to decode as an ASN.1 sequence element.
Returns:
The decoded ASN.1 sequence element.
Throws:
ASN1Exception - If the provided array cannot be decoded as a sequence element.

decodeAsSequence

public static ASN1Sequence decodeAsSequence(ASN1Element element)
                                     throws ASN1Exception
Decodes the provided ASN.1 element as a sequence element.

Parameters:
element - The ASN.1 element to be decoded.
Returns:
The decoded ASN.1 sequence element.
Throws:
ASN1Exception - If the provided element cannot be decoded as a sequence element.

toString

public void toString(java.lang.StringBuilder buffer)
Appends a string representation of this ASN.1 element to the provided buffer.

Overrides:
toString in class ASN1Element
Parameters:
buffer - The buffer to which to append the information.