Org.BouncyCastle.Asn1.X509.Holder.GetInstance C# (CSharp) Method

GetInstance() public static method

public static GetInstance ( object obj ) : Holder
obj object
return Holder
		public static Holder GetInstance(
            object obj)
        {
            if (obj is Holder)
            {
                return (Holder) obj;
            }

			if (obj is Asn1Sequence)
            {
                return new Holder((Asn1Sequence) obj);
            }

			if (obj is Asn1TaggedObject)
			{
				return new Holder((Asn1TaggedObject) obj);
			}

			throw new ArgumentException("unknown object in factory: " + obj.GetType().Name, "obj");
		}

Usage Example

Ejemplo n.º 1
0
        private AttributeCertificateInfo(
            Asn1Sequence seq)
        {
            if (seq.Count < 7 || seq.Count > 9)
            {
                throw new ArgumentException("Bad sequence size: " + seq.Count);
            }

            this.version                = DerInteger.GetInstance(seq[0]);
            this.holder                 = Holder.GetInstance(seq[1]);
            this.issuer                 = AttCertIssuer.GetInstance(seq[2]);
            this.signature              = AlgorithmIdentifier.GetInstance(seq[3]);
            this.serialNumber           = DerInteger.GetInstance(seq[4]);
            this.attrCertValidityPeriod = AttCertValidityPeriod.GetInstance(seq[5]);
            this.attributes             = Asn1Sequence.GetInstance(seq[6]);

            for (int i = 7; i < seq.Count; i++)
            {
                Asn1Encodable obj = (Asn1Encodable)seq[i];

                if (obj is DerBitString)
                {
                    this.issuerUniqueID = DerBitString.GetInstance(seq[i]);
                }
                else if (obj is Asn1Sequence || obj is X509Extensions)
                {
                    this.extensions = X509Extensions.GetInstance(seq[i]);
                }
            }
        }
All Usage Examples Of Org.BouncyCastle.Asn1.X509.Holder::GetInstance