1 package org.bouncycastle.asn1.x509;
3 import java.math.BigInteger;
5 import org.bouncycastle.asn1.*;
7 public class BasicConstraints
8 implements DEREncodable
10 DERBoolean cA = new DERBoolean(false);
11 DERInteger pathLenConstraint = null;
13 public BasicConstraints(
14 DERConstructedSequence seq)
16 if (seq.getSize() != 0)
18 this.cA = (DERBoolean)seq.getObjectAt(0);
19 this.pathLenConstraint = (DERInteger)seq.getObjectAt(1);
23 public BasicConstraints(
25 int pathLenConstraint)
27 this.cA = new DERBoolean(cA);
28 this.pathLenConstraint = new DERInteger(pathLenConstraint);
31 public BasicConstraints(
34 this.cA = new DERBoolean(cA);
35 this.pathLenConstraint = null;
43 public BigInteger getPathLenConstraint()
45 if (pathLenConstraint != null)
47 return pathLenConstraint.getValue();
55 * BasicConstraints := SEQUENCE {
56 * cA BOOLEAN DEFAULT FALSE,
57 * pathLenConstraint INTEGER (0..MAX) OPTIONAL
61 public DERObject getDERObject()
63 DERConstructedSequence seq = new DERConstructedSequence();
67 if (pathLenConstraint != null)
69 seq.addObject(pathLenConstraint);
75 public String toString()
77 return "BasicConstraints: isCa(" + this.isCA() + "), pathLenConstraint = " + pathLenConstraint.getValue();