Package com.oss.asn1
Class HugeContainingOctetString<T extends AbstractData>
java.lang.Object
com.oss.asn1.AbstractData
com.oss.asn1.HugeBinaryString
com.oss.asn1.HugeOctetString
com.oss.asn1.HugeContainingOctetString<T>
- Type Parameters:
T
- type of contained value
- All Implemented Interfaces:
com.oss.asn1.PDUContainer<T>
,com.oss.asn1.Sizeable
,Serializable
,Cloneable
public class HugeContainingOctetString<T extends AbstractData>
extends HugeOctetString
implements com.oss.asn1.Sizeable, com.oss.asn1.PDUContainer<T>
The HugeContainingOctetString class represents an OCTET STRING
constrained by a ContentsConstraint, with the ValueInFile
directive applied.
The runtime presents the value of
this type in two forms: interpreted (the unencoded contained value) or
uninterpreted (raw octets).
For this reason, the class could behave differently when compared with the
For this reason, the class could behave differently when compared with the
HugeOctetString
class:
- When the automatic decoding of contained values is enabled and the content
constraint allows automatic decoding, the coder constructs the decoded
value using the interpreted form. Hence,
getDecodedValue()
returns the contained value, whilebyteStorageValue()
returnsnull
, andgetSize()
returns zero. Otherwise, the value is constructed using the uninterpreted form, wherebyteStorageValue()
andgetSize()
return raw octets, andgetDecodedValue()
returnsnull
. - When the automatic encoding of contained values is enabled, the content constraint allows automatic encoding, and the input value is specified in the interpreted form, the coder automatically constructs the octets of the OCTET STRING from contained the value and writes them to the output encoding. Otherwise, the coder requires that the uninterpreted form is available before encoding, and throws an exception if it is not.
- Since:
- ASN.1/Java 1.5
- See Also:
-
Field Summary
Fields inherited from class com.oss.asn1.AbstractData
EQUALS, GREATER_THAN, LESS_THAN
-
Constructor Summary
ConstructorsConstructorDescriptionThe default constructor.Construct from a ByteStorage object.HugeContainingOctetString
(T decodedValue) Construct an instance of this class with an AbstractData object that represents an unencoded value of a contained ASN.1 type. -
Method Summary
Modifier and TypeMethodDescriptionclone()
Clone 'this' object.final boolean
Compare 'this' object to another HugeOctetString object to see if their contents are the same.Get the unencoded value of contained ASN.1 type.final T
Get the unencoded value of contained ASN.1 type.int
getSize()
Get the number of elements in the array of objects.void
setContainedValue
(T decodedValue) Set the value to the interpreted form (the value of the contained ASN.1 type).final void
setDecodedValue
(T decodedValue) Set the value to the interpreted form (the value of the contained ASN.1 type).Methods inherited from class com.oss.asn1.HugeOctetString
equalTo, getSize
Methods inherited from class com.oss.asn1.HugeBinaryString
byteStorageValue, delete, setValue
Methods inherited from class com.oss.asn1.AbstractData
equals, hashCode, isEncodable, isPDU, isValid, toString, toString
-
Constructor Details
-
HugeContainingOctetString
public HugeContainingOctetString()The default constructor. -
HugeContainingOctetString
Construct from a ByteStorage object.- Parameters:
value
- the ByteStorage to set 'this' object to.
-
HugeContainingOctetString
Construct an instance of this class with an AbstractData object that represents an unencoded value of a contained ASN.1 type.- Parameters:
decodedValue
- the AbstractData object to set.
-
-
Method Details
-
getDecodedValue
Get the unencoded value of contained ASN.1 type. This will be useful when automatic decoding has been used. See the methodenableAutomaticDecoding()
in the Coder class.- Specified by:
getDecodedValue
in interfacecom.oss.asn1.PDUContainer<T extends AbstractData>
- Returns:
- reference to the AbstractData object representing the unencoded value of 'this' object.
-
setDecodedValue
Set the value to the interpreted form (the value of the contained ASN.1 type). After this method is invoked thebyteStorageValue()
method will returnnull
and thegetSize()
method will return zero.- Specified by:
setDecodedValue
in interfacecom.oss.asn1.PDUContainer<T extends AbstractData>
- Parameters:
decodedValue
- the reference to the AbstractData object to set.
-
getContainedValue
Get the unencoded value of contained ASN.1 type. This will be useful when automatic decoding has been used. See the methodenableAutomaticDecoding()
in the Coder class.- Returns:
- reference to the AbstractData object representing the unencoded value of 'this' object.
-
setContainedValue
Set the value to the interpreted form (the value of the contained ASN.1 type). After this method is invoked thebyteStorageValue()
method will returnnull
and thegetSize()
method will return zero.- Parameters:
decodedValue
- the reference to the AbstractData object to set.
-
equalTo
Compare 'this' object to another HugeOctetString object to see if their contents are the same.- Parameters:
that
- the HugeOctetString object to compare 'this' object to.- Returns:
- true if contents of both objects are the same.
-
clone
Clone 'this' object.- Overrides:
clone
in classHugeBinaryString
- Returns:
- deep copy of 'this' object.
-
getSize
int getSize()Get the number of elements in the array of objects.- Returns:
- number of elements in the array.
-