Asn1XmlEncodeBuffer Class Reference

Inheritance diagram for Asn1XmlEncodeBuffer:
Asn1XmlEncoder Asn1XmlXerEncoder

List of all members.

Public Member Functions

 Asn1XmlEncodeBuffer (int sizeIncrement)
 Asn1XmlEncodeBuffer ()
override void BinDump (System.IO.StreamWriter outs, System.String varName)
virtual void Copy (System.String data)
virtual void DecrLevel ()
virtual void EncodeAttr (System.String qname, System.String data)
virtual void EncodeBinStrValue (byte[] bits, int nbits)
virtual void EncodeByte (byte data)
virtual void EncodeData (System.String data)
virtual void EncodeDoubleValue (double data, System.String elemName, System.String nsPrefix)
virtual void EncodeEmptyElement (System.String elemName, System.String nsPrefix, bool terminate)
virtual void EncodeEndDocument ()
virtual void EncodeEndElement (System.String elemName, System.String nsPrefix, bool indent)
virtual void EncodeEndElement (System.String elemName, System.String nsPrefix)
virtual void EncodeHexStrValue (byte[] data)
virtual void EncodeNamedValue (System.String valueName, System.String elemName, System.String nsPrefix)
virtual void EncodeNamedValueElement (System.String valueName)
virtual void EncodeStartDocument ()
virtual void EncodeStartElement (System.String elemName, System.String nsPrefix, bool terminate)
virtual void EncodeXSIAttrs ()
virtual void IncrLevel ()
virtual void Indent ()
virtual bool IsCanonical ()
virtual void SetXSIAttrs (Asn1XmlXSIAttrs data)

Properties

virtual bool Canonical [set]
Asn1XmlEncodeHelper Helper [get]
virtual int State [get, set]

Detailed Description

This class handles the encoding of ASN.1 messages as specified in the XML Encoding (non-XER) by the XML schema standard(generated by asn2xsd).


Constructor & Destructor Documentation

The default constructor creates an XML encode buffer object with the default size increment and canonical set to false.

Asn1XmlEncodeBuffer ( int  sizeIncrement  ) 

The parameterized constructor creates an XML encode buffer object with size increment and canonical set to the given values.

Parameters:
canonical Boolean indicating a canonical or non-canonical encoding should be produced as defined in the X.693 standard.
sizeIncrement The initial size in bytes of an encode buffer. If the buffer becomes full, it will be expanded by this amount. If this parameter is set to zero, the default increment will be used.

Member Function Documentation

override void BinDump ( System.IO.StreamWriter  outs,
System.String  varName 
) [virtual]

This method dumps the encoded message in a human-readable format showing a bit trace of all fields to the given print output stream.

Parameters:
outs Output will be written to this stream
varName Name of the Decoded ASN1 Type

Implements Asn1EncodeBuffer.

virtual void Copy ( System.String  data  )  [virtual]

This method copies a character string to the encode buffer.

Parameters:
data The string value to copy

Implements Asn1XmlXerEncoder.

virtual void DecrLevel (  )  [virtual]

This method decrements the element nesting level counter.

Implements Asn1XmlXerEncoder.

virtual void EncodeAttr ( System.String  qname,
System.String  data 
) [virtual]

This method encodes an XML attribute value.

Parameters:
qname Attribute qualified name.
value Attribute value in string form.

Implements Asn1XmlEncoder.

virtual void EncodeBinStrValue ( byte[]  bits,
int  nbits 
) [virtual]

This method encodes XML binary string data

Parameters:
bits Bit string to encode

<throws> IOException Any exception thrown by the underlying OutputStream. </throws> <throws> Asn1Exception Thrown, if operation is failed. </throws>

Implements Asn1XmlXerEncoder.

virtual void EncodeByte ( byte  data  )  [virtual]

This method is used to encode a single byte to the encode buffer. It first converts the byte to a hex character representation and then copies it to the output buffer.

Parameters:
data The byte value to copy

Implements Asn1XmlXerEncoder.

virtual void EncodeData ( System.String  data  )  [virtual]

This method encodes XML string data

Parameters:
value String value to encode

<throws> IOException Any exception thrown by the underlying OutputStream. </throws> <throws> Asn1Exception Thrown, if operation is failed. </throws>

Implements Asn1XmlXerEncoder.

virtual void EncodeDoubleValue ( double  data,
System.String  elemName,
System.String  nsPrefix 
) [virtual]

This method encodes an XML REAL (double) value (with start and end tags).

Parameters:
data The value to be encoded.
elemName The name of element. If null, then start and end tags won't be encoded.
Exceptions:
Asn1Exception Thrown, if operation is failed.

Implements Asn1XmlEncoder.

virtual void EncodeEmptyElement ( System.String  elemName,
System.String  nsPrefix,
bool  terminate 
) [virtual]

This method encodes an XML empty element tag

Parameters:
elemName The name of element.
nsPrefix The namespace prefix of element.

<throws> Asn1Exception Thrown, if operation is failed. </throws>

Implements Asn1XmlEncoder.

virtual void EncodeEndDocument (  )  [virtual]

This method encodes standard trailor information at the end of the XML document.

Implements Asn1XmlXerEncoder.

virtual void EncodeEndElement ( System.String  elemName,
System.String  nsPrefix,
bool  indent 
) [virtual]

This method encodes an XML end element tag without indenting

Parameters:
elemName The name of element.

<throws> Asn1Exception Thrown, if operation is failed. </throws>

virtual void EncodeEndElement ( System.String  elemName,
System.String  nsPrefix 
) [virtual]

This method encodes an XML end element tag

Parameters:
elemName The name of element, as String.

Implements Asn1XmlEncoder.

virtual void EncodeHexStrValue ( byte[]  data  )  [virtual]

This method encodes XML hexadecimal string data

Parameters:
data Data to encode

<throws> IOException Any exception thrown by the underlying OutputStream. </throws> <throws> Asn1Exception Thrown, if operation is failed. </throws>

Implements Asn1XmlXerEncoder.

virtual void EncodeNamedValue ( System.String  valueName,
System.String  elemName,
System.String  nsPrefix 
) [virtual]

This method encodes an XML named value (with start and end tags)

Implements Asn1XmlEncoder.

virtual void EncodeNamedValueElement ( System.String  valueName  )  [virtual]

This method encodes an XML named value element tag

Parameters:
valueName The named value, as String.
Exceptions:
Asn1Exception Thrown, if operation is failed.

Implements Asn1XmlXerEncoder.

virtual void EncodeStartDocument (  )  [virtual]

This method encodes standard header information at the beginning of the XML document.

Implements Asn1XmlXerEncoder.

virtual void EncodeStartElement ( System.String  elemName,
System.String  nsPrefix,
bool  terminate 
) [virtual]

This method encodes an XML start element tag.

Parameters:
elemName The name of element.
nsPrefix The namespace prefix of element.

<throws> Asn1Exception Thrown, if operation is failed. </throws>

Implements Asn1XmlEncoder.

virtual void EncodeXSIAttrs (  )  [virtual]

This method encodes XSI attributes.

Implements Asn1XmlEncoder.

virtual void IncrLevel (  )  [virtual]

This method increments the element nesting level counter.

Implements Asn1XmlXerEncoder.

virtual void Indent (  )  [virtual]

This methods indents by adding a new-line followed by whitespace corresponding to the current nesting level to the encode buffer.

Implements Asn1XmlXerEncoder.

virtual bool IsCanonical (  )  [virtual]

For XER, canonical mode turns off extra whitespace output.

Return true if the encoder has been put into canonical mode. For XML and XER, canonical mode signals the generated encoders to always encode ASN.1 elements that have a DEFAULT value.

Implements Asn1XmlXerEncoder.

virtual void SetXSIAttrs ( Asn1XmlXSIAttrs  data  )  [virtual]

This method sets the XSI attributes object to the given value.

Parameters:
value XSI attributes object

Implements Asn1XmlEncoder.


Property Documentation

virtual bool Canonical [set]

Sets the canonical encoding rule.

Value: true if canonical encoding; otherwise false.

Asn1XmlEncodeHelper Helper [get]

Gets the encoding helper object.

Implements Asn1XmlEncoder.

virtual int State [get, set]

Sets the state of the buffer.

Value: buffer stat

Implements Asn1XmlEncoder.