Asn1Type Class Reference

Inheritance diagram for Asn1Type:
Asn1TypeIF Asn1ArrayType Asn1BigInteger Asn1BitString Asn1Boolean Asn1CharString Asn1Choice Asn1Enumerated Asn1Integer Asn1Null Asn1ObjectIdentifier Asn1OctetString Asn1OpenExt Asn1Real Asn1SeqOrSet Asn1SeqSetOf Asn1UniversalString Asn1X694OrderElement

List of all members.

Public Member Functions

void _SetKey (byte[] rtkey)
virtual void Decode (Asn1MderDecodeBuffer buffer)
virtual void Decode (System.Object reader, System.IO.Stream byteStream)
virtual void Decode (System.Object reader, System.String xmlURI)
virtual void Decode (Asn1PerDecodeBuffer buffer)
virtual void Decode (Asn1OerDecodeBuffer buffer)
virtual void Decode (Asn1BerDecodeBuffer buffer)
virtual void Decode (Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength)
virtual void DecodeXML (String buffer, String attrs)
virtual void Encode (Asn1PerOutputStream outs)
virtual void Encode (Asn1CerOutputStream outs, bool explicitTagging)
virtual void Encode (Asn1BerOutputStream outs, bool explicitTagging)
virtual void Encode (Asn1MderOutputStream buffer, bool useCachedLength)
virtual void Encode (Asn1MderOutputStream buffer)
virtual void Encode (Asn1XmlEncoder buffer, System.String elemName, System.String nsPrefix)
virtual void Encode (Asn1XmlEncoder buffer)
virtual void Encode (Asn1XerEncoder buffer, System.String elemName)
virtual void Encode (Asn1XerEncoder buffer)
virtual void Encode (Asn1PerEncodeBuffer buffer)
virtual void Encode (Asn1OerEncodeBuffer buffer)
virtual int Encode (Asn1BerEncodeBuffer buffer)
virtual int Encode (Asn1BerEncodeBuffer buffer, bool explicitTagging)
void EncodeAsOpenType (Asn1OerEncodeBuffer buffer)
virtual void EncodeAttribute (Asn1XmlEncoder buffer, System.String attrName)
virtual bool Equals (Asn1Type obj)
String GetNonParameterizedTypeName ()
virtual void Indent (System.IO.TextWriter outs, int level)
virtual bool IsOpenType ()
virtual bool MatchTypeName (System.String typeName)
virtual void Pdiag (System.String s)
virtual void Print (System.String varName)
virtual void Print (System.IO.TextWriter outs, System.String varName, int level)
void SetNonParameterizedTypeName (String value)
virtual void SetOpenType ()

Static Public Member Functions

static void _SetKey2 (byte[] rtkey)
static Asn1Type Decode (Asn1PerDecodeBuffer buffer, Asn1OpenTypeField openTypeField)
static Asn1Type Decode (Asn1OerDecodeBuffer buffer, Asn1OpenTypeField openTypeField)
static Asn1Type Decode (Asn1BerDecodeBuffer buffer, Asn1OpenTypeField openTypeField, bool explicitTag, int implicitLength)
static System.String GetTypeName (short typeCode)

Public Attributes

const short BIT_STRING = 3
const short BMPString = 30
const short BOOLEAN = 1
const short DATE = 31
const short ENUMERATED = 10
const short EOC = 0
const short EXTERNAL = 8
const short GeneralString = 27
const short GeneralTime = 24
const short GraphicString = 25
const short IA5String = 22
const short INTEGER = 2
const short NULL = 5
const short NumericString = 18
const short OBJECT_IDENTIFIER = 6
const short ObjectDescriptor = 7
const short OCTET_STRING = 4
const short OpenType = 99
const short PrintableString = 19
const short REAL = 9
const short RELATIVE_OID_IRI = 36
const short RelativeOID = 13
const short SEQUENCE = 16
const short SET = 17
const short T61String = TeletexString
const short TeletexString = 20
const short TIME = 14
const short UniversalString = 28
const short UTCTime = 23
const short UTF8String = 12
const short VideotexString = 21
const short VisibleString = 26

Static Public Attributes

static readonly Asn1Tag _TAG

Static Protected Member Functions

static internal int MatchTag (Asn1BerDecodeBuffer buffer, Asn1Tag tag)
static internal int MatchTag (Asn1BerDecodeBuffer buffer, short tagClass, short tagForm, int tagIDCode)

Properties

virtual String AsnTypeName [get]
virtual int Length [get]

Detailed Description

This is the base class for all ASN.1 built-in types.


Member Function Documentation

void _SetKey ( byte[]  rtkey  ) 

This method is used with the limited run-time to set a run-time key value generated by the compiler to allow the run-time to operate on the licensed hosts. This is not used in the unlimited redistribution versions.

Parameters:
rtkey Run-time key generated by ASN1C
static void _SetKey2 ( byte[]  rtkey  )  [static]

This method is used with the limited run-time to set a run-time key value generated by the compiler to allow the run-time to operate on the licensed hosts. This is not used in the unlimited redistribution versions. This is the static version of _SetKey.

Parameters:
rtkey Run-time key generated by ASN1C
virtual void Decode ( Asn1MderDecodeBuffer  buffer  )  [virtual]

This method decodes this object's data from an MDER encoding. The implementation for this class throws an exception. When generating MDER code, subclasses will override this implementation.

Parameters:
buffer MDER Decode message buffer object

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

Implements Asn1TypeIF.

Reimplemented in Asn1OctetString.

virtual void Decode ( System.Object  reader,
System.IO.Stream  byteStream 
) [virtual]

This method declaration is the signature of the standard XML Encoding Rules (XER) Decode method.

Also throws any IO exception from the parser, possibly from a byte stream or character stream supplied by the application.

Parameters:
reader XML reader object
byteStream Input byte stream object
Exceptions:
Asn1Exception Thrown, if operation is failed.

Implements Asn1TypeIF.

virtual void Decode ( System.Object  reader,
System.String  xmlURI 
) [virtual]

This method declaration is the signature of the standard XML Encoding Rules (XER) Decode method.

Also throws any IO exception from the parser, possibly from a byte stream or character stream supplied by the application.

Parameters:
reader XML reader object
xmlURI URI of a source
Exceptions:
Asn1Exception Thrown, if operation is failed.

Implements Asn1TypeIF.

virtual void Decode ( Asn1PerDecodeBuffer  buffer  )  [virtual]

This method is the base implementation of the standard Packed Encoding Rules (PER) Decode method. It throws an exception because it should never be invoked. Inherited class implementes this method in Compiler generated code.

Parameters:
buffer PER Encode message buffer object
Exceptions:
Asn1Exception if invoked directly

Implements Asn1TypeIF.

Reimplemented in Asn18BitCharString, Asn1AbstractTime, Asn1BigInteger, Asn1BitString, Asn1BMPString, Asn1Boolean, Asn1ChoiceExt, Asn1Date, Asn1DateTime, Asn1Duration, Asn1Integer, Asn1Null, Asn1NumericString, Asn1ObjectIdentifier, Asn1OctetString, Asn1OID_IRI, Asn1OpenExt, Asn1OpenType, Asn1Real, Asn1Real10, Asn1RelativeOID, Asn1TimeOfDay, Asn1UniversalString, Asn1UTF8String, and Asn1VarWidthCharString.

static Asn1Type Decode ( Asn1PerDecodeBuffer  buffer,
Asn1OpenTypeField  openTypeField 
) [static]

Decode an open type field value from the given buffer.

Parameters:
buffer Decode message buffer object
openTypeField Describes the actual type.
virtual void Decode ( Asn1OerDecodeBuffer  buffer  )  [virtual]

This method decodes an ASN.1 value into this object, following the Octet Encoding Rules (OER).

This method MUST be overridden by all subclasses, except for Asn1Enumerated and subclasses thereof, in order to implement the correct decode behavior for the corresponding ASN.1 type.

This method MUST NOT be invoked on an Asn1Enumerated object. Such objects are immutable and cannot be decoded into.

This method is used polymorphically when table constraint code is generated and Asn1Type is used as the declared type for an open type.

Reimplemented in Asn18BitCharString, Asn1BigInteger, Asn1BitString, Asn1BMPString, Asn1Boolean, Asn1Date, Asn1DateTime, Asn1Duration, Asn1Integer, Asn1Null, Asn1ObjectIdentifier, Asn1OctetString, Asn1OID_IRI, Asn1OpenType, Asn1Real, Asn1Real10, Asn1RelativeOID, Asn1TimeOfDay, Asn1UniversalString, Asn1UTF8String, and Asn1VarWidthCharString.

static Asn1Type Decode ( Asn1OerDecodeBuffer  buffer,
Asn1OpenTypeField  openTypeField 
) [static]

Decode an open type field value from the given buffer.

Parameters:
openTypeField Describes the open type being decoded.
static Asn1Type Decode ( Asn1BerDecodeBuffer  buffer,
Asn1OpenTypeField  openTypeField,
bool  explicitTag,
int  implicitLength 
) [static]

Decode an open type field value from the given buffer.

Parameters:
buffer Decode message buffer object
openTypeField Provides the actual type.
explicitTag if true, the value to be decoded is preceded by a tag and length, which must first be decoded. Otherwise, implicitLength provides the length of the value to be decoded.
implicitLength The length of the value to be decoded if explicitTag was given as false.
virtual void Decode ( Asn1BerDecodeBuffer  buffer  )  [virtual]

This method is used to Decode a message that is encoded in BER or DER format. This version of the method sets tagging to explicit (Asn1Tag.EXPL) and implicit length to zero.

Parameters:
buffer Decode message buffer object
virtual void Decode ( Asn1BerDecodeBuffer  buffer,
bool  explicitTagging,
int  implicitLength 
) [virtual]

This method is used to Decode a message that is encoded in BER or DER format.

Parameters:
buffer Decode message buffer object
explicitTagging Flag indicating explicit tag should be parsed from the encoded type.
implicitLength Length of the contents field (only required if explicitTagging is false).

Implements Asn1TypeIF.

Reimplemented in Asn1BigInteger, Asn1BitString, Asn1BMPString, Asn1Boolean, Asn1ChoiceExt, Asn1Date, Asn1DateTime, Asn1Duration, Asn1GeneralizedTime, Asn1GeneralString, Asn1GraphicString, Asn1IA5String, Asn1Integer, Asn1Null, Asn1NumericString, Asn1ObjectDescriptor, Asn1ObjectIdentifier, Asn1OctetString, Asn1OID_IRI, Asn1OpenExt, Asn1OpenType, Asn1PrintableString, Asn1Real, Asn1Real10, Asn1RelativeOID, Asn1T61String, Asn1Time, Asn1TimeOfDay, Asn1UniversalString, Asn1UTCTime, Asn1UTF8String, Asn1VideotexString, Asn1VisibleString, and Asn1X694OrderElement.

virtual void DecodeXML ( String  buffer,
String  attrs 
) [virtual]

This method decodes the XML content of a simple type.

Parameters:
buffer String containing data to be decoded
attrs Attributes string from element tag
virtual void Encode ( Asn1PerOutputStream  outs  )  [virtual]

This method is the base implementation of the standard Packed Encoding Rules (PER) encode method using output stream. It throws an exception because it should never be invoked by compiler generated code.

Also throws any exception thrown by the Asn1PerOutputStream.

Parameters:
outs PER Output Stream object
Exceptions:
Asn1Exception Thrown, if operation is failed.

Implements Asn1TypeIF.

Reimplemented in Asn18BitCharString, Asn1AbstractTime, Asn1BigInteger, Asn1BitString, Asn1BMPString, Asn1Boolean, Asn1ChoiceExt, Asn1Date, Asn1DateTime, Asn1Duration, Asn1Integer, Asn1Null, Asn1ObjectIdentifier, Asn1OctetString, Asn1OID_IRI, Asn1OpenExt, Asn1OpenType, Asn1Real, Asn1Real10, Asn1RelativeOID, Asn1TimeOfDay, Asn1UniversalString, Asn1UTF8String, Asn1VarWidthCharString, and Asn1X694OrderElement.

virtual void Encode ( Asn1CerOutputStream  outs,
bool  explicitTagging 
) [virtual]

This method writes to the stream an encoded ASN.1 type value including the UNIVERSAL tag value and length if explicit tagging is specified. This overloaded version uses the Cer Encoding Rules (CER).

Throws, Exception thrown by C# System.IO.Stream for I/O error

Parameters:
outs CER Output Stream object
explicitTagging Flag indicating explicit tagging should be done
Exceptions:
Asn1Exception Thrown, if operation is failed.

Reimplemented in Asn1Real10.

virtual void Encode ( Asn1BerOutputStream  outs,
bool  explicitTagging 
) [virtual]

This method writes to the stream an encoded ASN.1 type value 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 C# System.IO.Stream for I/O error

Parameters:
outs BER Output Stream object
explicitTagging Flag indicating explicit tagging should be done
Exceptions:
Asn1Exception Thrown, if operation is failed.

Implements Asn1TypeIF.

Reimplemented in Asn1BigInteger, Asn1BitString, Asn1BMPString, Asn1Boolean, Asn1ChoiceExt, Asn1Date, Asn1DateTime, Asn1Duration, Asn1Enumerated, Asn1GeneralizedTime, Asn1GeneralString, Asn1GraphicString, Asn1IA5String, Asn1Integer, Asn1Null, Asn1NumericString, Asn1ObjectDescriptor, Asn1ObjectIdentifier, Asn1OctetString, Asn1OID_IRI, Asn1OpenExt, Asn1OpenType, Asn1PrintableString, Asn1Real, Asn1Real10, Asn1RelativeOID, Asn1T61String, Asn1Time, Asn1TimeOfDay, Asn1UniversalString, Asn1UTCTime, Asn1UTF8String, Asn1VideotexString, Asn1VisibleString, and Asn1X694OrderElement.

virtual void Encode ( Asn1MderOutputStream  buffer,
bool  useCachedLength 
) [virtual]

This method encodes this object's data to an MDER encoding. The implementation for this class throws an exception. When generating MDER code, subclasses will override this implementation or else will override the Encode(Asn1MderOutputStream) overload. Do not invoke this function unless you are certain the subclass has overridden it.

Parameters:
buffer MDER Encode message buffer object
useCachedLength Indicates whether cached length of encoding should be used. In general, only generated code should pass true.

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

virtual void Encode ( Asn1MderOutputStream  buffer  )  [virtual]

This method encodes this object's data to an MDER encoding. The implementation for this class invokes Encode(buffer, false). When generating MDER code, subclasses will override this implementation or else will override the Encode(Asn1MderOutputStream, bool) overload. Invoke this method if you are not certain which overload has been overridden by the subclass.

Parameters:
buffer MDER Encode message buffer object

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

Implements Asn1TypeIF.

Reimplemented in Asn1OctetString.

virtual void Encode ( Asn1XmlEncoder  buffer,
System.String  elemName,
System.String  nsPrefix 
) [virtual]

This method is the base implementation of the standard XML Encoding as specified in the XML schema standard(asn2xsd). It throws an exception because it should never be invoked. Inherited class implementes this method in Compiler generated code.

Also throws any exception thrown by the underlying stream.

Parameters:
buffer XML Encode message buffer object
elemName XML element name of item
nsPrefix Element namespace value
Exceptions:
Asn1Exception Thrown, if operation is failed.

Implements Asn1TypeIF.

Reimplemented in Asn1AbstractTime, Asn1Base64BinaryString, Asn1BigInteger, Asn1BitString, Asn1Boolean, Asn1CharString, Asn1Enumerated, Asn1Integer, Asn1Null, Asn1ObjectIdentifier, Asn1OctetString, Asn1Real, Asn1Real10, Asn1RelativeOID, and Asn1UniversalString.

virtual void Encode ( Asn1XmlEncoder  buffer  )  [virtual]

This method is the base implementation of the standard XML Encoding as specified in the XML schema standard(asn2xsd). This method invokes the generated method with element name and attribute name set to null. This will cause the ASN.1 type name to be used as the top-level element name.

Also throws any exception thrown by the underlying stream.

Parameters:
buffer XML Encode message buffer object
Exceptions:
Asn1Exception Thrown, if operation is failed.

Implements Asn1TypeIF.

Reimplemented in Asn1OpenExt, and Asn1OpenType.

virtual void Encode ( Asn1XerEncoder  buffer,
System.String  elemName 
) [virtual]

This method is the base implementation of the standard XML Encoding Rules (XER) encode method. It throws an exception because it should never be invoked by compiler generated code.

Also throws any exception thrown by the underlying stream.

Parameters:
buffer XER Encode message buffer object
elemName XML element name of item
Exceptions:
Asn1Exception if invoked directly

Implements Asn1TypeIF.

Reimplemented in Asn1BigInteger, Asn1BitString, Asn1Boolean, Asn1CharString, Asn1Enumerated, Asn1Integer, Asn1Null, Asn1ObjectIdentifier, Asn1OctetString, Asn1Real, Asn1Real10, Asn1RelativeOID, and Asn1UniversalString.

virtual void Encode ( Asn1XerEncoder  buffer  )  [virtual]

This method is the base implementation of the standard XML Encoding Rules (XER) encode method. This method invokes the generated method with element name set to null. This will cause the ASN.1 type name to be used as the top-level element name.

Also throws any exception thrown by the underlying stream.

Parameters:
buffer XER Encode message buffer object
Exceptions:
Asn1Exception Thrown, if operation is failed.

Implements Asn1TypeIF.

Reimplemented in Asn1OpenExt, and Asn1OpenType.

virtual void Encode ( Asn1PerEncodeBuffer  buffer  )  [virtual]

This method is the base implementation of the standard Packed Encoding Rules (PER) encode method. It throws an exception because it should never be invoked. Inherited class implementes this method in Compiler generated code.

Parameters:
buffer PER Encode message buffer object
Exceptions:
Asn1Exception if invoked directly

Implements Asn1TypeIF.

Reimplemented in Asn18BitCharString, Asn1AbstractTime, Asn1BigInteger, Asn1BitString, Asn1BMPString, Asn1Boolean, Asn1ChoiceExt, Asn1Date, Asn1DateTime, Asn1Duration, Asn1Integer, Asn1Null, Asn1NumericString, Asn1ObjectIdentifier, Asn1OctetString, Asn1OID_IRI, Asn1OpenExt, Asn1OpenType, Asn1Real, Asn1Real10, Asn1RelativeOID, Asn1TimeOfDay, Asn1UniversalString, Asn1UTF8String, and Asn1VarWidthCharString.

virtual void Encode ( Asn1OerEncodeBuffer  buffer  )  [virtual]

This method encodes the ASN.1 value represented by this object, following the Octet Encoding Rules (OER).

This method MUST be overridden by all subclasses in order to implement the correct encode behavior for the corresponding type.

This method is used polymorphically when table constraint code is generated and Asn1Type is used as the declared type for an open type.

Reimplemented in Asn18BitCharString, Asn1BigInteger, Asn1BitString, Asn1BMPString, Asn1Boolean, Asn1ChoiceExt, Asn1Date, Asn1DateTime, Asn1Duration, Asn1Enumerated, Asn1Integer, Asn1Null, Asn1ObjectIdentifier, Asn1OctetString, Asn1OID_IRI, Asn1OpenExt, Asn1OpenType, Asn1Real, Asn1Real10, Asn1RelativeOID, Asn1TimeOfDay, Asn1UniversalString, Asn1UTF8String, and Asn1VarWidthCharString.

virtual int Encode ( Asn1BerEncodeBuffer  buffer  )  [virtual]

This method is used to encode a message in BER or DER format. This version of the method sets tagging to explicit (Asn1Tag.EXPL).

Parameters:
buffer Decode message buffer object
Returns:
Length of component or negative status value
virtual int Encode ( Asn1BerEncodeBuffer  buffer,
bool  explicitTagging 
) [virtual]

This method is used to encode this data type in BER or DER format.

Parameters:
buffer Encode message buffer object
explicitTagging Flag indicating explicit tag should be added to the encoded type.
Returns:
Length of component or negative status value

Implements Asn1TypeIF.

Reimplemented in Asn1BigInteger, Asn1BitString, Asn1BMPString, Asn1Boolean, Asn1ChoiceExt, Asn1Date, Asn1DateTime, Asn1Duration, Asn1Enumerated, Asn1GeneralizedTime, Asn1GeneralString, Asn1GraphicString, Asn1IA5String, Asn1Integer, Asn1Null, Asn1NumericString, Asn1ObjectDescriptor, Asn1ObjectIdentifier, Asn1OctetString, Asn1OID_IRI, Asn1OpenExt, Asn1OpenType, Asn1PrintableString, Asn1Real, Asn1Real10, Asn1RelativeOID, Asn1T61String, Asn1Time, Asn1TimeOfDay, Asn1UniversalString, Asn1UTCTime, Asn1UTF8String, Asn1VideotexString, Asn1VisibleString, and Asn1X694OrderElement.

void EncodeAsOpenType ( Asn1OerEncodeBuffer  buffer  ) 

This method encodes the ASN.1 value represented by this object, following the Octet Encoding Rules (OER), as the value for the actual type of an open type (i.e., it precedes its encoding with a length).

virtual void EncodeAttribute ( Asn1XmlEncoder  buffer,
System.String  attrName 
) [virtual]

This method is the base implementation of the standard XML Encoding as specified in the XML schema standard(asn2xsd). It throws an exception because it should never be invoked by compiler generated code.

Parameters:
buffer XML Encode message buffer object
attrName XML attribute name of item
attribute Element attribute value

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

Reimplemented in Asn1Base64BinaryString, Asn1Boolean, Asn1Integer, Asn1OctetString, Asn1Real, and Asn1Real10.

virtual bool Equals ( Asn1Type  obj  )  [virtual]

Return true if the two objects are equal. /p> Note: in generated code, we will implement Equals(Asn1Type) rather than Equals(Object) to avoid the need to also implement HashCode. The default implementation here is to invoke Equals(Object). This is acceptable for the runtime classes, which have overridden Equals(Object).

String GetNonParameterizedTypeName (  ) 

Return this type's NonParameterizedTypeName, if set.

static System.String GetTypeName ( short  typeCode  )  [static]

This method will convert a type code into a type name as defined in the X.680 standard..

Parameters:
typeCode Type code to be converted
Returns:
ASN.1 type name
virtual void Indent ( System.IO.TextWriter  outs,
int  level 
) [virtual]

This method will indent three spaces in the given print stream. It is used by the print methods to provide a formatted output of an encoded element value.

Parameters:
outs Print stream
level Indentation level (no of spaces is 3 x this number)
virtual bool IsOpenType (  )  [virtual]

Returns open type mode for XML encoding/decoding.

Returns:
true if open type mode is on.

Implements Asn1TypeIF.

static internal int MatchTag ( Asn1BerDecodeBuffer  buffer,
Asn1Tag  tag 
) [static, protected]

This method will compare the next parsed tag with the given tag value. If they do not match, an exception will be thrown.

Parameters:
buffer Decode message buffer object
tag Tag value to compare
Returns:
Decoded length value
Exceptions:
Asn1TagMatchFailedException Tag is not equal to expected value
static internal int MatchTag ( Asn1BerDecodeBuffer  buffer,
short  tagClass,
short  tagForm,
int  tagIDCode 
) [static, protected]

This method will compare the next parsed tag with the given tag value. If they do not match, an exception will be thrown.

Parameters:
buffer Decode message buffer object
tagClass Tag class value (UNIV, APPL, CTXT, or PRIV)
tagForm Tag form value (PRIM or CONS)
tagIDCode Tag identifier code
Returns:
Decoded length value
Exceptions:
Asn1TagMatchFailedException Tag is not equal to expected value
virtual bool MatchTypeName ( System.String  typeName  )  [virtual]

This method is used to check the outer level tag in an XER message to verify it matches the expected value. This method is overridden by generated code. The default implementation always returns true.

Parameters:
typeName Type name to compare.
Returns:
True if name matches internal name.
virtual void Pdiag ( System.String  s  )  [virtual]

This is a diagnostics print method. It is a shorthand way to invoke the Diag object's println method.

Parameters:
s diagnostics message to be printed.
virtual void Print ( System.String  varName  )  [virtual]

This method will format and output a primitive value to the standard console output.

Parameters:
varName Name of variable
virtual void Print ( System.IO.TextWriter  outs,
System.String  varName,
int  level 
) [virtual]

This method will format and output a primitive value to the given print stream.

Parameters:
outs Print output stream
varName Name of variable
level Indentation level

Implements Asn1TypeIF.

Reimplemented in Asn1ArrayType, and Asn1X694OrderElement.

void SetNonParameterizedTypeName ( String  value  ) 

Set this type's NonParameterizedTypeName. The value is specified, based on the ASN.1 type, by X.680.

virtual void SetOpenType (  )  [virtual]

Sets open type mode for XML encoding/decoding.

Implements Asn1TypeIF.


Member Data Documentation

const short BIT_STRING = 3

BIT_STRING type code = 3

const short BMPString = 30

BMPString type code = 30

const short BOOLEAN = 1

BOOLEAN type code = 1

const short DATE = 31

DATE type code = 31

const short ENUMERATED = 10

ENUMERATED type code = 10

const short EOC = 0

EOC type code = 0

const short EXTERNAL = 8

EXTERNAL type code = 8

const short GeneralString = 27

GeneralString type code = 27

const short GeneralTime = 24

GeneralTime type code = 24

const short GraphicString = 25

GraphicString type code = 25

const short IA5String = 22

IA5String type code = 22

const short INTEGER = 2

INTEGER type code = 2

const short NULL = 5

NULL type code = 5

const short NumericString = 18

NumericString type code = 18

const short OBJECT_IDENTIFIER = 6

OBJECT_IDENTIFIER type code = 6

const short ObjectDescriptor = 7

ObjectDescriptor type code = 7

const short OCTET_STRING = 4

OCTET_STRING type code = 4

const short OpenType = 99

OpenType type code = 99

const short PrintableString = 19

PrintableString type code = 19

const short REAL = 9

REAL type code = 9

const short RELATIVE_OID_IRI = 36

RELATIVE-OID-IRI type code = 35

const short RelativeOID = 13

RELATIVE_OID type code = 13

const short SEQUENCE = 16

SEQUENCE type code = 16

const short SET = 17

SET type code = 17

const short T61String = TeletexString

T61String type code = TeletexString

const short TeletexString = 20

TeletexString type code = 20

const short TIME = 14

TIME type code = 14

const short UniversalString = 28

UniversalString type code = 28

const short UTCTime = 23

UTCTime type code = 23

const short UTF8String = 12

UTF8String type code = 12

const short VideotexString = 21

VideotexString type code = 21

const short VisibleString = 26

VisibleString type code = 26


Property Documentation

virtual 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 in Asn1OpenExt, and Asn1OpenType.

virtual int Length [get]

Gets the length of types that can be bound by a size constraint (BIT STRING, OCTET STRING, character string, and SEQUENCE OF/SET OF). An attempt to invoke it on any other type will cause an exception to be thrown.

Value: Length of item in units (for example, bits for BIT STRING, octets for OCTET STRING, etc.)

Exceptions:
Asn1InvalidLengthException if called by type rather than size constrainted (BIT STRING, OCTET STRING, character string, or SEQUENCE OF/SET OF)

Reimplemented in Asn1BitString, Asn1CharString, Asn1OctetString, and Asn1UniversalString.