Java Card
v2.2.2

javacardx.framework.tlv
Class ConstructedBERTag

java.lang.Object
  extended by javacardx.framework.tlv.BERTag
      extended by javacardx.framework.tlv.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

Field Summary
 
Fields inherited from class javacardx.framework.tlv.BERTag
BER_TAG_CLASS_MASK_APPLICATION, BER_TAG_CLASS_MASK_CONTEXT_SPECIFIC, BER_TAG_CLASS_MASK_PRIVATE, BER_TAG_CLASS_MASK_UNIVERSAL, BER_TAG_TYPE_CONSTRUCTED, BER_TAG_TYPE_PRIMITIVE
 
Constructor Summary
ConstructedBERTag()
          Constructor creates an empty constructed BERTLV Tag object capable of encapsulating a constructed BER TLV Tag.
 
Method Summary
 void init(byte[] bArray, short bOff)
          (Re-)Initialize this ConstructedBERTag object from the binary representation in the byte array.
 void init(byte tagClass, short tagNumber)
          (Re-)Initialize this ConstructedBERTag object with the specified tag class, and tag number.
 
Methods inherited from class javacardx.framework.tlv.BERTag
equals, getInstance, isConstructed, isConstructed, size, size, tagClass, tagClass, tagNumber, tagNumber, toBytes, toBytes, verifyFormat
 
Methods inherited from class java.lang.Object
equals
 

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

Java Card
v2.2.2

Copyright © 1993-2005 Sun Microsystems, Inc. 4150 Network Circle,
Santa Clara, CA, 95054, U.S.A. All Rights Reserved.