1b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallampackage org.bouncycastle.asn1.x509;
2b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
3c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstromimport java.math.BigInteger;
4c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom
54c111300c39cb2e27f07fc2ae3b00e23ed4443b2Brian Carlstromimport org.bouncycastle.asn1.ASN1Integer;
64c111300c39cb2e27f07fc2ae3b00e23ed4443b2Brian Carlstromimport org.bouncycastle.asn1.ASN1Object;
74c111300c39cb2e27f07fc2ae3b00e23ed4443b2Brian Carlstromimport org.bouncycastle.asn1.ASN1Primitive;
84c111300c39cb2e27f07fc2ae3b00e23ed4443b2Brian Carlstrom
9b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam/**
10b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam * The CRLNumber object.
11b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam * <pre>
12b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam * CRLNumber::= INTEGER(0..MAX)
13b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam * </pre>
14b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam */
15b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallampublic class CRLNumber
164c111300c39cb2e27f07fc2ae3b00e23ed4443b2Brian Carlstrom    extends ASN1Object
17b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam{
184c111300c39cb2e27f07fc2ae3b00e23ed4443b2Brian Carlstrom    private BigInteger number;
19b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
20b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    public CRLNumber(
21b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam        BigInteger number)
22b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    {
234c111300c39cb2e27f07fc2ae3b00e23ed4443b2Brian Carlstrom        this.number = number;
24b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    }
25b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
26b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    public BigInteger getCRLNumber()
27b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    {
284c111300c39cb2e27f07fc2ae3b00e23ed4443b2Brian Carlstrom        return number;
29b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    }
30c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom
31c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom    public String toString()
32c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom    {
33c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom        return "CRLNumber: " + getCRLNumber();
34c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom    }
354c111300c39cb2e27f07fc2ae3b00e23ed4443b2Brian Carlstrom
364c111300c39cb2e27f07fc2ae3b00e23ed4443b2Brian Carlstrom    public ASN1Primitive toASN1Primitive()
374c111300c39cb2e27f07fc2ae3b00e23ed4443b2Brian Carlstrom    {
384c111300c39cb2e27f07fc2ae3b00e23ed4443b2Brian Carlstrom        return new ASN1Integer(number);
394c111300c39cb2e27f07fc2ae3b00e23ed4443b2Brian Carlstrom    }
404c111300c39cb2e27f07fc2ae3b00e23ed4443b2Brian Carlstrom
414c111300c39cb2e27f07fc2ae3b00e23ed4443b2Brian Carlstrom    public static CRLNumber getInstance(Object o)
424c111300c39cb2e27f07fc2ae3b00e23ed4443b2Brian Carlstrom    {
434c111300c39cb2e27f07fc2ae3b00e23ed4443b2Brian Carlstrom        if (o instanceof CRLNumber)
444c111300c39cb2e27f07fc2ae3b00e23ed4443b2Brian Carlstrom        {
454c111300c39cb2e27f07fc2ae3b00e23ed4443b2Brian Carlstrom            return (CRLNumber)o;
464c111300c39cb2e27f07fc2ae3b00e23ed4443b2Brian Carlstrom        }
474c111300c39cb2e27f07fc2ae3b00e23ed4443b2Brian Carlstrom        else if (o != null)
484c111300c39cb2e27f07fc2ae3b00e23ed4443b2Brian Carlstrom        {
494c111300c39cb2e27f07fc2ae3b00e23ed4443b2Brian Carlstrom            return new CRLNumber(ASN1Integer.getInstance(o).getValue());
504c111300c39cb2e27f07fc2ae3b00e23ed4443b2Brian Carlstrom        }
514c111300c39cb2e27f07fc2ae3b00e23ed4443b2Brian Carlstrom
524c111300c39cb2e27f07fc2ae3b00e23ed4443b2Brian Carlstrom        return null;
534c111300c39cb2e27f07fc2ae3b00e23ed4443b2Brian Carlstrom    }
54b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam}
55