Asn1OpenExt Class Reference

Inheritance diagram for Asn1OpenExt:
Asn1Type Asn1TypeIF

List of all members.

Public Member Functions

override void Decode (Asn1PerDecodeBuffer buffer)
override void Decode (Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength)
virtual void DecodeComponent (Asn1BerDecodeBuffer buffer)
virtual void DecodeEventComponent (Asn1BerDecodeBuffer buffer)
void DecodeExtension (Asn1JsonDecodeBuffer buffer, String name)
Asn1OpenType DecodeOpenType (Asn1OerDecodeBuffer buffer, bool present, int index)
virtual Asn1OpenType DecodeOpenType (Asn1PerDecodeBuffer buffer, bool present, int index)
override void Encode (Asn1PerOutputStream outs)
override void Encode (Asn1BerOutputStream outs, bool explicitTagging)
void Encode (Asn1JsonOutputStream outstream)
override void Encode (Asn1XmlEncoder buffer)
override void Encode (Asn1XerEncoder buffer)
override void Encode (Asn1PerEncodeBuffer buffer)
override int Encode (Asn1BerEncodeBuffer buffer, bool explicitTagging)
override void Encode (Asn1OerEncodeBuffer buffer)
virtual void EncodeExtBits (Asn1PerEncodeBuffer buffer)
void EncodeExtBits (Asn1OerEncodeBuffer buffer)
bool HasPresentExtensions ()
virtual void SetOpenType (Asn1OpenType obj, int index)
virtual void ShrinkArray (int numrecs)
override System.String ToString ()

Public Attributes

System.Collections.ArrayList mValue

Properties

override string AsnTypeName [get]

Detailed Description

This is a container class for holding open type elements that may occur within an open type extension (i.e. a ... at the end of a constructed type or a ..., ... at some other point in a constructed type).


Member Function Documentation

override void Decode ( Asn1PerDecodeBuffer  buffer  )  [virtual]

This method decodes an open type extension in a SEQUENCE or SET construct using the packed encoding rules (PER). This method will capture each extension item in a separate open type object and store it in the mValue public member list variable. If optional items are absent, null placeholders will be inserted in the list.

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 open type extension value using the Basic Encoding Rules (BER).

Parameters:
buffer Decode message buffer object
explicitTagging Flag indicating element is explicitly tagged
implicitLength Length if implicit element

Reimplemented from Asn1Type.

virtual void DecodeComponent ( Asn1BerDecodeBuffer  buffer  )  [virtual]

This method decodes a single component of a BER open type extension by decoding an open type value and appending it to the list of open type objects.

Parameters:
buffer Decode message buffer object
virtual void DecodeEventComponent ( Asn1BerDecodeBuffer  buffer  )  [virtual]

This method decodes a single component of a BER open type extension by decoding an open type value and appending it to the list of open type objects, this function also triggers event handler code, with element name "..."

Parameters:
buffer Decode message buffer object
void DecodeExtension ( Asn1JsonDecodeBuffer  buffer,
String  name 
)

Decode a single occurrence of an extension from JSON and add an Asn1OpenType for it to the list of extensions.

Parameters:
name The name of the extension element (previously decoded). This becomes a part of the character data held in the Asn1OpenType object, so that the character data represents a full JSONNamedValue.
Asn1OpenType DecodeOpenType ( Asn1OerDecodeBuffer  buffer,
bool  present,
int  index 
)

This method decodes a single open type extension item in a SEQUENCE or SET construct using the octet encoding rules (OER). It will then add the item to the open extension element list.

Parameters:
buffer Decode message buffer object
present Flag indicating whether element is present.
index Index of element in the object array. If index >= value.Count, the item is appended to the list (all such values of index thus have the same behavior).
virtual Asn1OpenType DecodeOpenType ( Asn1PerDecodeBuffer  buffer,
bool  present,
int  index 
) [virtual]

This method decodes a single open type extension item in a SEQUENCE or SET construct using the packed encoding rules (PER). It will then add the item to the open extension element list.

Parameters:
buffer Decode message buffer object
present Flag indicating whether element is present
index Index of element in the object array
Returns:
Decoded open type
override void Encode ( Asn1PerOutputStream  outs  )  [virtual]

This method encodes an ASN.1 open type extension value using the Packed Encoding Rules (PER).

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 an ASN.1 open type extension value using the Basic Encoding Rules (BER) and writes it into the stream.

Also throws any exception thrown by the underlying Asn1BerOutputStream.

Parameters:
outs BER Output Stream object
explicitTagging Flag indicating element is explicitly tagged
Exceptions:
Asn1Exception Thrown, if operation is failed.

Reimplemented from Asn1Type.

void Encode ( Asn1JsonOutputStream  outstream  ) 

Encode the open extension elements to JSON

override void Encode ( Asn1XmlEncoder  buffer  )  [virtual]

This method encodes an ASN.1 open type extension value using the XML Encoding as specified in the XML schema standard (asn2xsd).

Parameters:
buffer Encode message buffer object

Reimplemented from Asn1Type.

override void Encode ( Asn1XerEncoder  buffer  )  [virtual]

This method encodes an ASN.1 open type extension value using the XML Encoding Rules (XER).

Parameters:
buffer Encode message buffer object

Reimplemented from Asn1Type.

override void Encode ( Asn1PerEncodeBuffer  buffer  )  [virtual]

This method encodes an ASN.1 open type extension value using the Packed Encoding Rules (PER).

Parameters:
buffer Encode message buffer object

Reimplemented from Asn1Type.

override int Encode ( Asn1BerEncodeBuffer  buffer,
bool  explicitTagging 
) [virtual]

This method encodes an ASN.1 open type extension value using the Basic Encoding Rules (BER).

Parameters:
buffer Encode message buffer object
explicitTagging Flag indicating element is explicitly tagged
Returns:
Length of encoded component

Reimplemented from Asn1Type.

override void Encode ( Asn1OerEncodeBuffer  buffer  )  [virtual]

This method encodes the ASN.1 open type extensions using Octet Encoding Rules (OER).

Parameters:
buffer Encode message buffer object

Reimplemented from Asn1Type.

virtual void EncodeExtBits ( Asn1PerEncodeBuffer  buffer  )  [virtual]

This method encodes an ASN.1 open type extension value bits using the Packed Encoding Rules (PER).

Parameters:
buffer Encode message buffer object
void EncodeExtBits ( Asn1OerEncodeBuffer  buffer  ) 

This method encodes an ASN.1 open type extension value bits using the Packed Encoding Rules (PER).

Parameters:
buffer Encode message buffer object
bool HasPresentExtensions (  ) 

Return true if this contains present extensions. Null values in the value list represent absent extensions.

virtual void SetOpenType ( Asn1OpenType  obj,
int  index 
) [virtual]

This method will add the given open type object to the open extension element list at the given index.

Parameters:
obj Open type object
index Index in open type list where element is to be placed
virtual void ShrinkArray ( int  numrecs  )  [virtual]

This method adjusts the size of the open type component array downward to the given size value.

Parameters:
numrecs Number of entries the array should hold
override System.String ToString (  ) 

This method will return a string representation of the open extension value. The format is the ASN.1 value format for each open type in the extension.

Returns:
Stringified representation of the value

Member Data Documentation

System.Collections.ArrayList mValue
Initial value:
         new System.Collections.ArrayList()

The value is a list of Asn1OpenType objects. Each of these objects contains a fully encoded extension item.


Property Documentation

override string AsnTypeName [get]

Gets the ASN.1 type name that is associated with this type. The ASN.1 type name is derived from the input specification and cannot be set by users of the class.

Value: The ASN.1 type name for this type.

Reimplemented from Asn1Type.