⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 distributionpoint.java

📁 bouncycastle 是一个JAVA安全提供者
💻 JAVA
字号:
package org.bouncycastle.asn1.x509;import org.bouncycastle.asn1.ASN1Encodable;import org.bouncycastle.asn1.ASN1EncodableVector;import org.bouncycastle.asn1.ASN1Sequence;import org.bouncycastle.asn1.ASN1TaggedObject;import org.bouncycastle.asn1.DERBitString;import org.bouncycastle.asn1.DERObject;import org.bouncycastle.asn1.DERSequence;import org.bouncycastle.asn1.DERTaggedObject;/** * The DistributionPoint object. * <pre> * DistributionPoint ::= SEQUENCE { *      distributionPoint [0] DistributionPointName OPTIONAL, *      reasons           [1] ReasonFlags OPTIONAL, *      cRLIssuer         [2] GeneralNames OPTIONAL * } * </pre> */public class DistributionPoint    extends ASN1Encodable{    DistributionPointName       distributionPoint;    ReasonFlags                 reasons;    GeneralNames                cRLIssuer;    public static DistributionPoint getInstance(        ASN1TaggedObject obj,        boolean          explicit)    {        return getInstance(ASN1Sequence.getInstance(obj, explicit));    }    public static DistributionPoint getInstance(        Object obj)    {        if(obj == null || obj instanceof DistributionPoint)         {            return (DistributionPoint)obj;        }                if(obj instanceof ASN1Sequence)         {            return new DistributionPoint((ASN1Sequence)obj);        }                throw new IllegalArgumentException("Invalid DistributionPoint: " + obj.getClass().getName());    }    public DistributionPoint(        ASN1Sequence seq)    {        for (int i = 0; i != seq.size(); i++)        {            ASN1TaggedObject    t = (ASN1TaggedObject)seq.getObjectAt(i);            switch (t.getTagNo())            {            case 0:                distributionPoint = DistributionPointName.getInstance(t, true);                break;            case 1:                reasons = new ReasonFlags(DERBitString.getInstance(t, false));                break;            case 2:                cRLIssuer = GeneralNames.getInstance(t, false);            }        }    }        public DistributionPoint(        DistributionPointName distributionPoint,        ReasonFlags                 reasons,        GeneralNames            cRLIssuer)    {        this.distributionPoint = distributionPoint;        this.reasons = reasons;        this.cRLIssuer = cRLIssuer;    }        public DistributionPointName getDistributionPoint()    {        return distributionPoint;    }    public ReasonFlags getReasons()    {        return reasons;    }        public GeneralNames getCRLIssuer()    {        return cRLIssuer;    }        public DERObject toASN1Object()    {        ASN1EncodableVector  v = new ASN1EncodableVector();                if (distributionPoint != null)        {            //            // as this is a CHOICE it must be explicitly tagged            //            v.add(new DERTaggedObject(0, distributionPoint));        }        if (reasons != null)        {            v.add(new DERTaggedObject(false, 1, reasons));        }        if (cRLIssuer != null)        {            v.add(new DERTaggedObject(false, 2, cRLIssuer));        }        return new DERSequence(v);    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -