public class

IssuingDistributionPointExtension

extends Extension
implements CertAttrSet<T>
java.lang.Object
   ↳ sun.security.x509.Extension
     ↳ sun.security.x509.IssuingDistributionPointExtension

Class Overview

Represents the CRL Issuing Distribution Point Extension (OID = 2.5.29.28).

The issuing distribution point is a critical CRL extension that identifies the CRL distribution point and scope for a particular CRL, and it indicates whether the CRL covers revocation for end entity certificates only, CA certificates only, attribute certificates only, or a limited set of reason codes.

The extension is defined in Section 5.2.5 of Internet X.509 PKI Certific ate and Certificate Revocation List (CRL) Profile.

Its ASN.1 definition is as follows:

     id-ce-issuingDistributionPoint OBJECT IDENTIFIER ::= { id-ce 28 }

     issuingDistributionPoint ::= SEQUENCE {
          distributionPoint          [0] DistributionPointName OPTIONAL,
          onlyContainsUserCerts      [1] BOOLEAN DEFAULT FALSE,
          onlyContainsCACerts        [2] BOOLEAN DEFAULT FALSE,
          onlySomeReasons            [3] ReasonFlags OPTIONAL,
          indirectCRL                [4] BOOLEAN DEFAULT FALSE,
          onlyContainsAttributeCerts [5] BOOLEAN DEFAULT FALSE }
 

Summary

Constants
String IDENT Identifier for this attribute, to be used with the get, set, delete methods of Certificate, x509 type.
String INDIRECT_CRL
String NAME Attribute names.
String ONLY_ATTRIBUTE_CERTS
String ONLY_CA_CERTS
String ONLY_USER_CERTS
String POINT
String REASONS
[Expand]
Inherited Fields
From class sun.security.x509.Extension
Public Constructors
IssuingDistributionPointExtension(DistributionPointName distributionPoint, ReasonFlags revocationReasons, boolean hasOnlyUserCerts, boolean hasOnlyCACerts, boolean hasOnlyAttributeCerts, boolean isIndirectCRL)
Creates a critical IssuingDistributionPointExtension.
IssuingDistributionPointExtension(Boolean critical, Object value)
Creates a critical IssuingDistributionPointExtension from its DER-encoding.
Public Methods
void delete(String name)
Deletes the attribute value.
void encode(OutputStream out)
Encodes the issuing distribution point extension and writes it to the DerOutputStream.
Object get(String name)
Gets the attribute value.
Enumeration<String> getElements()
Returns an enumeration of names of attributes existing within this attribute.
String getName()
Returns the name of this attribute.
void set(String name, Object obj)
Sets the attribute value.
String toString()
Returns the extension as user readable string.
[Expand]
Inherited Methods
From class sun.security.x509.Extension
From class java.lang.Object
From interface sun.security.x509.CertAttrSet

Constants

public static final String IDENT

Identifier for this attribute, to be used with the get, set, delete methods of Certificate, x509 type.

Constant Value: "x509.info.extensions.IssuingDistributionPoint"

public static final String INDIRECT_CRL

Constant Value: "indirect_crl"

public static final String NAME

Attribute names.

Constant Value: "IssuingDistributionPoint"

public static final String ONLY_ATTRIBUTE_CERTS

Constant Value: "only_attribute_certs"

public static final String ONLY_CA_CERTS

Constant Value: "only_ca_certs"

public static final String ONLY_USER_CERTS

Constant Value: "only_user_certs"

public static final String POINT

Constant Value: "point"

public static final String REASONS

Constant Value: "reasons"

Public Constructors

public IssuingDistributionPointExtension (DistributionPointName distributionPoint, ReasonFlags revocationReasons, boolean hasOnlyUserCerts, boolean hasOnlyCACerts, boolean hasOnlyAttributeCerts, boolean isIndirectCRL)

Creates a critical IssuingDistributionPointExtension.

Parameters
distributionPoint the name of the distribution point, or null for none.
revocationReasons the revocation reasons associated with the distribution point, or null for none.
hasOnlyUserCerts if true then scope of the CRL includes only user certificates.
hasOnlyCACerts if true then scope of the CRL includes only CA certificates.
hasOnlyAttributeCerts if true then scope of the CRL includes only attribute certificates.
isIndirectCRL if true then the scope of the CRL includes certificates issued by authorities other than the CRL issuer. The responsible authority is indicated by a certificate issuer CRL entry extension.
Throws
IllegalArgumentException if more than one of hasOnlyUserCerts, hasOnlyCACerts, hasOnlyAttributeCerts is set to true.
IOException on encoding error.

public IssuingDistributionPointExtension (Boolean critical, Object value)

Creates a critical IssuingDistributionPointExtension from its DER-encoding.

Parameters
critical true if the extension is to be treated as critical.
value the DER-encoded value. It must be a byte[].
Throws
IOException on decoding error.

Public Methods

public void delete (String name)

Deletes the attribute value.

Parameters
name the name of the attribute to delete.
Throws
IOException

public void encode (OutputStream out)

Encodes the issuing distribution point extension and writes it to the DerOutputStream.

Parameters
out the output stream.
Throws
IOException on encoding error.

public Object get (String name)

Gets the attribute value.

Parameters
name the name of the attribute to return.
Throws
IOException

public Enumeration<String> getElements ()

Returns an enumeration of names of attributes existing within this attribute.

Returns
  • an enumeration of the attribute names.

public String getName ()

Returns the name of this attribute.

Returns
  • the name of this CertAttrSet.

public void set (String name, Object obj)

Sets the attribute value.

Parameters
name the name of the attribute (e.g. "x509.info.key")
obj the attribute object.
Throws
IOException

public String toString ()

Returns the extension as user readable string.

Returns
  • a string representation of the object.