Asn1BMPString Class Reference
Public Member Functions | |
Asn1BMPString (System.String data) | |
Asn1BMPString () | |
void | Decode (Asn1OerDecodeBuffer buffer, int length) |
override void | Decode (Asn1OerDecodeBuffer buffer) |
virtual void | Decode (Asn1PerDecodeBuffer buffer, Asn1CharSet charSet, long lower, long upper) |
virtual void | Decode (Asn1PerDecodeBuffer buffer, Asn1CharSet charSet) |
override void | Decode (Asn1PerDecodeBuffer buffer) |
override void | Decode (Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) |
virtual void | Encode (Asn1PerOutputStream outs, Asn1CharSet charSet, long lower, long upper) |
virtual void | Encode (Asn1PerOutputStream outs, Asn1CharSet charSet) |
override void | Encode (Asn1PerOutputStream outs) |
override void | Encode (Asn1BerOutputStream outs, bool explicitTagging) |
virtual void | Encode (Asn1OerEncodeBuffer buffer, bool withLength) |
override void | Encode (Asn1OerEncodeBuffer buffer) |
virtual void | Encode (Asn1PerEncodeBuffer buffer, Asn1CharSet charSet, long lower, long upper) |
virtual void | Encode (Asn1PerEncodeBuffer buffer, Asn1CharSet charSet) |
override void | Encode (Asn1PerEncodeBuffer buffer) |
override int | Encode (Asn1BerEncodeBuffer buffer, bool explicitTagging) |
Public Attributes | |
const int | BITSPERCHAR = 16 |
Static Public Attributes | |
static new readonly Asn1Tag | _TAG |
Detailed Description
This is a container class for holding the components of an ASN.1 BMP string value.
Constructor & Destructor Documentation
Asn1BMPString | ( | ) |
The default constructor creates an empty string object.
Asn1BMPString | ( | System.String | data | ) |
This version of the constructor can be used to set the string mValue
member variable to the given string value.
- Parameters:
-
data string representation of BMPString
Member Function Documentation
void Decode | ( | Asn1OerDecodeBuffer | buffer, | |
int | length | |||
) |
Decode the value in accordance with OER.
This class's implementation decodes a string of the given length. This method is non-virtual as I don't see any reason for overriding it.
- Parameters:
-
length Length of string to decode, in characters.
override void Decode | ( | Asn1OerDecodeBuffer | buffer | ) | [virtual] |
Decode the value in accordance with OER.
This class's implementation decodes the string with a length determinant. If a subclass should be decoded without a length determinant, it should override this method to invoke decode(buffer, length). Subclasses may override this to add constraint checks after invoking this method to decode the string.
Reimplemented from Asn1Type.
virtual void Decode | ( | Asn1PerDecodeBuffer | buffer, | |
Asn1CharSet | charSet, | |||
long | lower, | |||
long | upper | |||
) | [virtual] |
This overloaded version of the Decode method decodes an ASN.1 character string value in accordance with the packed encoding rules (PER). This version of the method assumes both a size constraint and permitted alphabet constraint are present.
The decoded result is stored in the public mValue
member variable in the Asn1CharString
base class.
- Parameters:
-
buffer Decode message buffer object charSet Object representing permitted alphabet constraint character set (optional) lower Effective size constraint lower bound upper Effective size constraint upper bound
virtual void Decode | ( | Asn1PerDecodeBuffer | buffer, | |
Asn1CharSet | charSet | |||
) | [virtual] |
This method decodes an ASN.1 character string value in accordance with the packed encoding rules (PER). This version of the method assumes no size constraints but allows a permitted alphabet character set to be specified. Decoded characters are assigned as-is to the output string. The decoded result is stored in the public mValue
member variable in the Asn1CharString
base class.
- Parameters:
-
buffer Decode message buffer object charSet Object representing permitted alphabet constraint character set (optional)
override void Decode | ( | Asn1PerDecodeBuffer | buffer | ) | [virtual] |
This method decodes an ASN.1 character string value in accordance with the packed encoding rules (PER). This version of the method assumes no permitted alphabet or size constraints. Decoded characters are assigned as-is to the output string. The decoded result is stored in the public mValue
member variable in the Asn1CharString
base class.
- Parameters:
-
buffer Decode message buffer object
Reimplemented from Asn1Type.
override void Decode | ( | Asn1BerDecodeBuffer | buffer, | |
bool | explicitTagging, | |||
int | implicitLength | |||
) | [virtual] |
This method decodes an ASN.1 BMP string value including the UNIVERSAL tag value and length if explicit tagging is specified. This string type uses 16-bit characters.
- Parameters:
-
buffer Decode message buffer object explicitTagging Flag indicating element is explicitly tagged implicitLength Length of contents if implicit
Reimplemented from Asn1Type.
virtual void Encode | ( | Asn1PerOutputStream | outs, | |
Asn1CharSet | charSet, | |||
long | lower, | |||
long | upper | |||
) | [virtual] |
This overloaded version of the encode method encodes an ASN.1 BMP string value in accordance with the packed encoding rules (PER). This version of the method assumes both a size constraint and permitted alphabet constraint are present.
The value to encode is stored in the public mValue
member variable.
Also throws any exception thrown by the underlying Asn1PerOutputStream.
- Parameters:
-
outs PER Output Stream object charSet Object representing the permitted alphabet constraint character set (optional) lower Effective size constraint lower bound upper Effective size constraint upper bound
- Exceptions:
-
Asn1Exception Thrown, if operation is failed.
virtual void Encode | ( | Asn1PerOutputStream | outs, | |
Asn1CharSet | charSet | |||
) | [virtual] |
This method encodes an ASN.1 BMP string value in accordance with the packed encoding rules (PER). This version of the method assumes no size constraints but does allow a permitted alphabet character set to be specified.
The value to encode is stored in the public mValue
member variable in the Asn1CharString
base class.
Also throws any exception thrown by the underlying Asn1PerOutputStream.
- Parameters:
-
outs PER Output Stream object charSet Object representing permitted alphabet constraint character set (optional)
- Exceptions:
-
Asn1Exception Thrown, if operation is failed.
override void Encode | ( | Asn1PerOutputStream | outs | ) | [virtual] |
This method encodes an ASN.1 BMP string value in accordance with the packed encoding rules (PER). This version of the method assumes no permitted alphabet or size constraints.
The value to encode is stored in the public mValue
member variable in the Asn1CharString
base class.
Also throws any exception thrown by the underlying Asn1PerOutputStream.
- Parameters:
-
outs PER Output Stream object
- Exceptions:
-
Asn1Exception Thrown, if operation is failed.
Reimplemented from Asn1Type.
override void Encode | ( | Asn1BerOutputStream | outs, | |
bool | explicitTagging | |||
) | [virtual] |
This method encodes and writes to the stream an ASN.1 BMP string including the UNIVERSAL tag value and length if explicit tagging is specified. This overloaded version uses the Basic Encoding Rules (BER).
Throws, exception thrown by the underlying System.IO.Stream object.
- Parameters:
-
outs BER Output Stream object explicitTagging Flag indicating explicit tagging should be done
- Exceptions:
-
Asn1Exception Thrown, if operation is failed.
Reimplemented from Asn1Type.
virtual void Encode | ( | Asn1OerEncodeBuffer | buffer, | |
bool | withLength | |||
) | [virtual] |
Encode the string, with or without a length determinant.
Subclasses may override this (e.g. to add constraint checks) and invoke this method to perform the encoding.
- Parameters:
-
withLength true if a length determinant should be encoded.
override void Encode | ( | Asn1OerEncodeBuffer | buffer | ) | [virtual] |
Encode the value in accordance with OER.
This class's implementation invokes encode(buffer, true) to encode the string with a length determinant. If a subclass should be encoded without a length determinant, it should override this to invoke encode(buffer, false).
Reimplemented from Asn1Type.
virtual void Encode | ( | Asn1PerEncodeBuffer | buffer, | |
Asn1CharSet | charSet, | |||
long | lower, | |||
long | upper | |||
) | [virtual] |
This overloaded version of the encode method encodes an ASN.1 character string value in accordance with the packed encoding rules (PER). This version of the method assumes both a size constraint and permitted alphabet constraint are present.
The value to encode is stored in the public mValue
member variable.
- Parameters:
-
buffer Encode message buffer object charSet Object representing the permitted alphabet constraint character set lower Effective size constraint lower bound upper Effective size constraint upper bound
virtual void Encode | ( | Asn1PerEncodeBuffer | buffer, | |
Asn1CharSet | charSet | |||
) | [virtual] |
This method encodes an ASN.1 character string value in accordance with the packed encoding rules (PER). This version of the method assumes no size constraints but does allow a permitted alphabet character set to be specified.
The value to encode is stored in the public mValue
member variable in the Asn1CharString
base class.
- Parameters:
-
buffer Encode message buffer object charSet Object representing permitted alphabet constraint character set (optional)
override void Encode | ( | Asn1PerEncodeBuffer | buffer | ) | [virtual] |
This method encodes an ASN.1 character string value in accordance with the packed encoding rules (PER). This version of the method assumes no permitted alphabet or size constraints.
The value to encode is stored in the public mValue
member variable in the Asn1CharString
base class.
- Parameters:
-
buffer Encode message buffer object
Reimplemented from Asn1Type.
override int Encode | ( | Asn1BerEncodeBuffer | buffer, | |
bool | explicitTagging | |||
) | [virtual] |
This method encodes an ASN.1 string type. The UNIVERSAL tag value and length is also encoded if explicit tagging is specified.
- Parameters:
-
buffer Encode message buffer object explicitTagging Flag indicating explicit tagging should be done
- Returns:
- Length in octets of encoded component
Reimplemented from Asn1Type.
Member Data Documentation
The _TAG
constant describes the universal tag for this data type (UNIVERSAL 30).
Reimplemented from Asn1Type.
const int BITSPERCHAR = 16 |
The BITSPERCHAR
constant specifies the number of bits per character for PER (aligned or unaligned).