Class ConstructedBERTag


  • public final class ConstructedBERTag
    extends BERTag
    The ConstructedBERTag class encapsulates a constructed BER TLV tag. The rules on the allowed encoding of the Tag field is based on the ASN.1 BER encoding rules of ISO/IEC 8825-1:2002.

    The BERTag class and the subclasses ConstructedBERTag and PrimitiveBERTag, also provide static methods to parse or edit a BER Tag structure representation in a byte array.

    Since:
    2.2.2
    • Constructor Detail

      • ConstructedBERTag

        public ConstructedBERTag()
        Constructor creates an empty constructed BERTLV Tag object capable of encapsulating a constructed BER TLV Tag. All implementations must support at least 3 byte Tags which can encode tag numbers up to 0x3FFF.
    • Method Detail

      • init

        public void init​(byte tagClass,
                         short tagNumber)
                  throws TLVException
        (Re-)Initialize this ConstructedBERTag object with the specified tag class, and tag number. All implementations must support tag numbers up to 0x3FFF.
        Parameters:
        tagClass - encodes the tag class. Valid codes listed in BER_TAG_CLASS_.. constants.
        tagNumber - is the tag number.
        Throws:
        TLVException - with the following reason codes:
        • TLVException.ILLEGAL_SIZE if the tag number requested is larger than the supported maximum size
        • TLVException.INVALID_PARAM if tag class parameter is invalid or if the tag number parameter is negative.
        See Also:
        BERTag
      • init

        public void init​(byte[] bArray,
                         short bOff)
                  throws TLVException
        (Re-)Initialize this ConstructedBERTag object from the binary representation in the byte array. All implementations must support tag numbers up to 0x3FFF.
        Specified by:
        init in class BERTag
        Parameters:
        bArray - the byte array containing the binary representation
        bOff - the offset within bArray where the tag binary begins
        Throws:
        ArrayIndexOutOfBoundsException - if accessing the input array would cause access of data outside array bounds, or if the array offset parameter is negative
        NullPointerException - if bArray is null
        TLVException - with the following reason codes:
        • TLVException.ILLEGAL_SIZE if the tag number requested is larger than the supported maximum size
        • TLVException.MALFORMED_TAG if tag representation in the byte array is malformed or is a primitive array tag