iaik.x509.extensions.qualified.structures
Class QCStatementInfo

java.lang.Object
  |
  +--iaik.x509.extensions.qualified.structures.QCStatementInfo
Direct Known Subclasses:
MyPrivateQCStatement, QcEuCompliance, QcEuLimitValue, QcEuRetentionPeriod, SemanticsInformation, UnknownQCStatementInfo

public abstract class QCStatementInfo
extends Object

This class is the basic implementation for QC statement infos. Any class which implements a QC statement info must be derived from this class.

The PKIX Qualified Certificate Profile specifies the Qualified Certificate Statements (QCStatements) extension for including defined statements related to Qualified Certificates. The QCStatements extension simply consists of a ASN.1 SEQUENCE of QC statements:

 QCStatements ::= SEQUENCE OF QCStatement
 
Each QC statement itsself consists of an object identifier and an optional statement info identified by the object identifer (statement ID):
 QCStatement ::= SEQUENCE {
   statementId OBJECT IDENTIFIER,
   statementInfo ANY DEFINED BY statementId OPTIONAL }
 
Any class implementing a particular statement info has to extend this class and therefore has to implement the abstract methods decode, toASN1Object and getStatementID. The statement ID to be returned by method getStatementID is the one identifying the particular statement info and shall be used for registering the corresponding class as implemenation for this statement info, e.g.:
 public class MyQCStatementInfo extends QCStatementInfo {
 ...
 // the statement id:
   public static final ObjectID statementID = ...;
 ...
 }
 ...
 // register the implementation:
 QCStatement.register(MyQCStatementInfo.statementID, MyQCStatementInfo.class);
 
The Qualified Certificate Profile currently defines one statement info which already is implemented and registered: When implementing a statement info by extending this class please be aware that methods toASN1Object and decode only have to convert the statement info itself (and NOT the statementID) into respectively from an ASN1Object.

Version:
File Revision 14
See Also:
QCStatement, QCStatements

Constructor Summary
QCStatementInfo()
           
 
Method Summary
abstract  void decode(ASN1Object obj)
          Decodes a statement info from its ASN.1 representation.
 String getName()
          Returns the name of the statement info.
abstract  ObjectID getStatementID()
          Returns the statement ID identifying this statement info.
abstract  ASN1Object toASN1Object()
          Returns an ASN.1 representation of a particular statement info.
abstract  String toString()
          Returns a String representation of the QCStatementInfo.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

QCStatementInfo

public QCStatementInfo()
Method Detail

decode

public abstract void decode(ASN1Object obj)
                     throws CodingException
Decodes a statement info from its ASN.1 representation. This method is used by the QCStatement class when parsing the ASN.1 representation of a statement info. This method only expects the ASN.1 representation of the statement info, but not the corresponding statement ID. This method shall not be explicitly called by an application.
Parameters:
obj - the statement info as ASN1Object
Throws:
CodingException - if the ASN1Object cannot be parsed

toASN1Object

public abstract ASN1Object toASN1Object()
                                 throws CodingException
Returns an ASN.1 representation of a particular statement info.

The ASN1Object returned by this method only represents the statement info but does not include the corresponding statement id.

Returns:
the statement info as ASN1Object
Throws:
CodingException - if the statement info cannot be represented as ASN.1 object

getStatementID

public abstract ObjectID getStatementID()
Returns the statement ID identifying this statement info.
Returns:
the statement ID identifying the statement info this class implements

toString

public abstract String toString()
Returns a String representation of the QCStatementInfo.
Overrides:
toString in class Object
Returns:
a String representation of the QCStatementInfo.

getName

public String getName()
Returns the name of the statement info.
Returns:
the name of the statement info

This Javadoc may contain text parts from Internet Standard specifications (RFC 2459, 3280, 3039, 2560, 1521, 821, 822, 2253, 1319, 1321, ,2630, 2631, 2268, 3058, 2984, 2104, 2144, 2040, 2311, 2279, see copyright note) and RSA Data Security Public-Key Cryptography Standards (PKCS#1,3,5,7,8,9,10,12, see copyright note).

IAIK-JCE 3.1 with IAIK-JCE CC Core 3.1, (c) 1997-2004 IAIK