if (seq.size() != 2 && seq.size() != 3) { throw new IllegalArgumentException("Bad sequence size: " + seq.size()); } issuer = GeneralNames.getInstance(seq.getObjectAt(0)); serial = DERInteger.getInstance(seq.getObjectAt(1)); if (seq.size() == 3) { issuerUID = DERBitString.getInstance(seq.getObjectAt(2)); }
this.issuer = issuer; this.serial = serial;
if (obj == null || obj instanceof IssuerSerial) { return (IssuerSerial)obj; } if (obj instanceof ASN1Sequence) { return new IssuerSerial((ASN1Sequence)obj); } throw new IllegalArgumentException("illegal object in getInstance: " + obj.getClass().getName());
return getInstance(ASN1Sequence.getInstance(obj, explicit));
return issuer;
return issuerUID;
return serial;
Produce an object suitable for an ASN1OutputStream. IssuerSerial ::= SEQUENCE { issuer GeneralNames, serial CertificateSerialNumber, issuerUID UniqueIdentifier OPTIONAL } ASN1EncodableVector v = new ASN1EncodableVector(); v.add(issuer); v.add(serial); if (issuerUID != null) { v.add(issuerUID); } return new DERSequence(v);
IssuerSerial ::= SEQUENCE { issuer GeneralNames, serial CertificateSerialNumber, issuerUID UniqueIdentifier OPTIONAL }
ASN1EncodableVector v = new ASN1EncodableVector(); v.add(issuer); v.add(serial); if (issuerUID != null) { v.add(issuerUID); } return new DERSequence(v);