java.security.cert
Class PolicyQualifierInfo

java.lang.Object sample code for java.lang.Object definition code for java.lang.Object 
  extended by java.security.cert.PolicyQualifierInfo

public class PolicyQualifierInfo
extends Object sample code for java.lang.Object definition code for java.lang.Object

An immutable policy qualifier represented by the ASN.1 PolicyQualifierInfo structure.

The ASN.1 definition is as follows:

   PolicyQualifierInfo ::= SEQUENCE {
        policyQualifierId       PolicyQualifierId,
        qualifier               ANY DEFINED BY policyQualifierId }
 

A certificate policies extension, if present in an X.509 version 3 certificate, contains a sequence of one or more policy information terms, each of which consists of an object identifier (OID) and optional qualifiers. In an end-entity certificate, these policy information terms indicate the policy under which the certificate has been issued and the purposes for which the certificate may be used. In a CA certificate, these policy information terms limit the set of policies for certification paths which include this certificate.

A Set of PolicyQualifierInfo objects are returned by the PolicyNode.getPolicyQualifiers sample code for java.security.cert.PolicyNode.getPolicyQualifiers() definition code for java.security.cert.PolicyNode.getPolicyQualifiers() method. This allows applications with specific policy requirements to process and validate each policy qualifier. Applications that need to process policy qualifiers should explicitly set the policyQualifiersRejected flag to false (by calling the PKIXParameters.setPolicyQualifiersRejected sample code for java.security.cert.PKIXParameters.setPolicyQualifiersRejected(boolean) definition code for java.security.cert.PKIXParameters.setPolicyQualifiersRejected(boolean) method) before validating a certification path.

Note that the PKIX certification path validation algorithm specifies that any policy qualifier in a certificate policies extension that is marked critical must be processed and validated. Otherwise the certification path must be rejected. If the policyQualifiersRejected flag is set to false, it is up to the application to validate all policy qualifiers in this manner in order to be PKIX compliant.

Concurrent Access

All PolicyQualifierInfo objects must be immutable and thread-safe. That is, multiple threads may concurrently invoke the methods defined in this class on a single PolicyQualifierInfo object (or more than one) with no ill effects. Requiring PolicyQualifierInfo objects to be immutable and thread-safe allows them to be passed around to various pieces of code without worrying about coordinating access.

Since:
1.4

Constructor Summary
PolicyQualifierInfo sample code for java.security.cert.PolicyQualifierInfo.PolicyQualifierInfo(byte[]) definition code for java.security.cert.PolicyQualifierInfo.PolicyQualifierInfo(byte[]) (byte[] encoded)
          Creates an instance of PolicyQualifierInfo from the encoded bytes.
 
Method Summary
 byte[] getEncoded sample code for java.security.cert.PolicyQualifierInfo.getEncoded() definition code for java.security.cert.PolicyQualifierInfo.getEncoded() ()
          Returns the ASN.1 DER encoded form of this PolicyQualifierInfo.
 byte[] getPolicyQualifier sample code for java.security.cert.PolicyQualifierInfo.getPolicyQualifier() definition code for java.security.cert.PolicyQualifierInfo.getPolicyQualifier() ()
          Returns the ASN.1 DER encoded form of the qualifier field of this PolicyQualifierInfo.
 String sample code for java.lang.String definition code for java.lang.String getPolicyQualifierId sample code for java.security.cert.PolicyQualifierInfo.getPolicyQualifierId() definition code for java.security.cert.PolicyQualifierInfo.getPolicyQualifierId() ()
          Returns the policyQualifierId field of this PolicyQualifierInfo.
 String sample code for java.lang.String definition code for java.lang.String toString sample code for java.security.cert.PolicyQualifierInfo.toString() definition code for java.security.cert.PolicyQualifierInfo.toString() ()
          Return a printable representation of this PolicyQualifierInfo.
 
Methods inherited from class java.lang.Object sample code for java.lang.Object definition code for java.lang.Object
clone sample code for java.lang.Object.clone() definition code for java.lang.Object.clone() , equals sample code for java.lang.Object.equals(java.lang.Object) definition code for java.lang.Object.equals(java.lang.Object) , finalize sample code for java.lang.Object.finalize() definition code for java.lang.Object.finalize() , getClass sample code for java.lang.Object.getClass() definition code for java.lang.Object.getClass() , hashCode sample code for java.lang.Object.hashCode() definition code for java.lang.Object.hashCode() , notify sample code for java.lang.Object.notify() definition code for java.lang.Object.notify() , notifyAll sample code for java.lang.Object.notifyAll() definition code for java.lang.Object.notifyAll() , wait sample code for java.lang.Object.wait() definition code for java.lang.Object.wait() , wait sample code for java.lang.Object.wait(long) definition code for java.lang.Object.wait(long) , wait sample code for java.lang.Object.wait(long, int) definition code for java.lang.Object.wait(long, int)
 

Constructor Detail

PolicyQualifierInfo sample code for java.security.cert.PolicyQualifierInfo(byte[]) definition code for java.security.cert.PolicyQualifierInfo(byte[])

public PolicyQualifierInfo(byte[] encoded)
                    throws IOException sample code for java.io.IOException definition code for java.io.IOException 
Creates an instance of PolicyQualifierInfo from the encoded bytes. The encoded byte array is copied on construction.

Parameters:
encoded - a byte array containing the qualifier in DER encoding
Throws:
IOException sample code for java.io.IOException definition code for java.io.IOException - thrown if the byte array does not represent a valid and parsable policy qualifier
Method Detail

getPolicyQualifierId sample code for java.security.cert.PolicyQualifierInfo.getPolicyQualifierId() definition code for java.security.cert.PolicyQualifierInfo.getPolicyQualifierId()

public final String sample code for java.lang.String definition code for java.lang.String  getPolicyQualifierId()
Returns the policyQualifierId field of this PolicyQualifierInfo. The policyQualifierId is an Object Identifier (OID) represented by a set of nonnegative integers separated by periods.

Returns:
the OID (never null)

getEncoded sample code for java.security.cert.PolicyQualifierInfo.getEncoded() definition code for java.security.cert.PolicyQualifierInfo.getEncoded()

public final byte[] getEncoded()
Returns the ASN.1 DER encoded form of this PolicyQualifierInfo.

Returns:
the ASN.1 DER encoded bytes (never null). Note that a copy is returned, so the data is cloned each time this method is called.

getPolicyQualifier sample code for java.security.cert.PolicyQualifierInfo.getPolicyQualifier() definition code for java.security.cert.PolicyQualifierInfo.getPolicyQualifier()

public final byte[] getPolicyQualifier()
Returns the ASN.1 DER encoded form of the qualifier field of this PolicyQualifierInfo.

Returns:
the ASN.1 DER encoded bytes of the qualifier field. Note that a copy is returned, so the data is cloned each time this method is called.

toString sample code for java.security.cert.PolicyQualifierInfo.toString() definition code for java.security.cert.PolicyQualifierInfo.toString()

public String sample code for java.lang.String definition code for java.lang.String  toString()
Return a printable representation of this PolicyQualifierInfo.

Overrides:
toString sample code for java.lang.Object.toString() definition code for java.lang.Object.toString() in class Object sample code for java.lang.Object definition code for java.lang.Object
Returns:
a String describing the contents of this PolicyQualifierInfo