* Builds the structure of the class ready for decoding
*/
public GeneralName() {
super();
otherNameID_ = new ASN1ObjectIdentifier();
otherNameValue_ = new ASN1OpenType();
otherNameValueTag_ = new ASN1TaggedType(0, otherNameValue_, true, false);
otherNameSequence_ = new ASN1Sequence();
otherNameSequence_.add(otherNameID_);
otherNameSequence_.add(otherNameValueTag_);
otherName_ = new ASN1TaggedType(TYPE_OTHER_NAME, otherNameSequence_,
false, false);
addType(otherName_);
rfc822N_ = new ASN1IA5String();
rfc822Name_ = new ASN1TaggedType(TYPE_RFC822_NAME, rfc822N_, false,
false);
addType(rfc822Name_);
dNSN_ = new ASN1IA5String();
dNSName_ = new ASN1TaggedType(TYPE_DNS_NAME, dNSN_, false, false);
addType(dNSName_);
// x400Address is not supported yet...
dirN_ = new Name();
// directoryName *MUST* be marked explicit here for the decoding
// operation
// to succeed. see also the setDirectoryName() method for more
// information
// --volker roth & ralf weinmann
directoryName_ = new ASN1TaggedType(TYPE_DIRECTORY_NAME, dirN_, true,
false);
addType(directoryName_);
// ediPartyName is not supported yet...
uniformResourceId_ = new ASN1IA5String();
uniformResourceIdentifier_ = new ASN1TaggedType(
TYPE_UNIFORM_RESOURCE_IDENTIFIER, uniformResourceId_, false,
false);
addType(uniformResourceIdentifier_);
iPAdr_ = new ASN1OctetString();
iPAddress_ = new ASN1TaggedType(TYPE_IP_ADDRESS, iPAdr_, false, false);
addType(iPAddress_);
regID_ = new ASN1ObjectIdentifier();
registeredID_ = new ASN1TaggedType(TYPE_REGISTERED_ID, regID_, false,
false);
addType(registeredID_);
}