com.ibm.security12.sun.security.x509
Class BasicConstraintsExtension

java.lang.Object
  |
  +--com.ibm.security12.sun.security.x509.Extension
        |
        +--com.ibm.security12.sun.security.x509.BasicConstraintsExtension

public class BasicConstraintsExtension
extends Extension
implements CertAttrSet

This class represents the Basic Constraints Extension.

The basic constraints extension identifies whether the subject of the certificate is a CA and how deep a certification path may exist through that CA.

 The ASN.1 syntax for this extension is:
 BasicConstraints ::= SEQUENCE {
     cA                BOOLEAN DEFAULT FALSE,
     pathLenConstraint INTEGER (0..MAX) OPTIONAL
 }
 

Version:
1.10
Author:
Amit Kapoor, Hemma Prafullchandra
See Also:
CertAttrSet, Extension

Field Summary
static String IDENT
          Identifier for this attribute, to be used with the get, set, delete methods of Certificate, x509 type.
static String IS_CA
           
static String NAME
          Attribute names.
static String PATH_LEN
           
 
Fields inherited from class com.ibm.security12.sun.security.x509.Extension
critical, extensionId, extensionValue
 
Constructor Summary
BasicConstraintsExtension(boolean ca, int len)
          Default constructor for this object.
BasicConstraintsExtension(Boolean critical, Object value)
          Create the extension from the passed DER encoded value of the same.
 
Method Summary
 void decode(InputStream in)
          Decode the extension from the InputStream.
 void delete(String name)
          Delete the attribute value.
 void encode(OutputStream out)
          Encode this extension value to the output stream.
 Object get(String name)
          Get the attribute value.
 Enumeration getElements()
          Return an enumeration of names of attributes existing within this attribute.
 String getName()
          Return the name of this attribute.
 void set(String name, Object obj)
          Set the attribute value.
 String toString()
          Return user readable form of extension.
 
Methods inherited from class com.ibm.security12.sun.security.x509.Extension
encode, equals, getExtensionId, getExtensionValue, hashCode, isCritical
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

IDENT

public static final String IDENT
Identifier for this attribute, to be used with the get, set, delete methods of Certificate, x509 type.

NAME

public static final String NAME
Attribute names.

IS_CA

public static final String IS_CA

PATH_LEN

public static final String PATH_LEN
Constructor Detail

BasicConstraintsExtension

public BasicConstraintsExtension(boolean ca,
                                 int len)
                          throws IOException
Default constructor for this object.
Parameters:
ca - true, if the subject of the Certificate is a CA.
len - specifies the depth of the certification path.

BasicConstraintsExtension

public BasicConstraintsExtension(Boolean critical,
                                 Object value)
                          throws IOException
Create the extension from the passed DER encoded value of the same.
Parameters:
extension - the DER encoded value of the extension.
Throws:
IOException - on error.
Method Detail

toString

public String toString()
Return user readable form of extension.
Specified by:
toString in interface CertAttrSet
Overrides:
toString in class Extension

decode

public void decode(InputStream in)
            throws IOException
Decode the extension from the InputStream.
Specified by:
decode in interface CertAttrSet
Parameters:
in - the InputStream to unmarshal the contents from.
Throws:
IOException - on decoding or validity errors.

encode

public void encode(OutputStream out)
            throws IOException
Encode this extension value to the output stream.
Specified by:
encode in interface CertAttrSet
Parameters:
out - the DerOutputStream to encode the extension to.

set

public void set(String name,
                Object obj)
         throws IOException
Set the attribute value.
Specified by:
set in interface CertAttrSet

get

public Object get(String name)
           throws IOException
Get the attribute value.
Specified by:
get in interface CertAttrSet

delete

public void delete(String name)
            throws IOException
Delete the attribute value.
Specified by:
delete in interface CertAttrSet

getElements

public Enumeration getElements()
Return an enumeration of names of attributes existing within this attribute.
Specified by:
getElements in interface CertAttrSet

getName

public String getName()
Return the name of this attribute.
Specified by:
getName in interface CertAttrSet