#include <XKMSMessageAbstractType.hpp>
Inheritance diagram for XKMSMessageAbstractType:
The <MessageAbstractType> is an abstract type on which all other XKMS messages are built. All request/response messages have :
In addition, such messages may have :
The schema definition for MessageAbstractType is as follows :
<!-- MessageAbstractType --> <complexType name="MessageAbstractType" abstract="true"> <sequence> <element ref="ds:Signature" minOccurs="0"/> <element ref="xkms:MessageExtension" minOccurs="0" maxOccurs="unbounded"/> <element ref="xkms:OpaqueClientData" minOccurs="0"/> </sequence> <attribute name="Id" type="ID" use="required"/> <attribute name="Service" type="anyURI" use="required"/> <attribute name="Nonce" type="base64Binary" use="optional"/> </complexType> <!-- /MessageAbstractType -->
Constructors and Destructors | |
enum | messageType { None, CompoundRequest, CompoundResult, LocateRequest, LocateResult, ValidateRequest, ValidateResult, PendingRequest, StatusRequest, StatusResult, Result, RegisterRequest, RegisterResult, RevokeRequest, RevokeResult, RecoverRequest, RecoverResult, ReissueRequest, ReissueResult } |
virtual | ~XKMSMessageAbstractType () |
XKMSMessageAbstractType () | |
Public Member Functions | |
Message Manipulation Methods | |
virtual messageType | getMessageType (void)=0 |
Getter Interface Methods | |
virtual bool | isSigned (void) const =0 |
Find out whether this is a signed Message. | |
virtual DSIGSignature * | getSignature (void) const =0 |
Retrieve the Signature information (if any is attached). | |
virtual XERCES_CPP_NAMESPACE_QUALIFIER DOMElement * | getElement (void) const =0 |
virtual const XMLCh * | getId (void) const =0 |
Get the Id for the Message. | |
virtual const XMLCh * | getService (void) const =0 |
Get the Service identifier for this message. | |
virtual const XMLCh * | getNonce (void) const =0 |
Get the Nonce of the message. | |
Setter interface methods | |
virtual void | setId (const XMLCh *id)=0 |
Set the Id URI for the Message. | |
virtual void | setService (const XMLCh *service)=0 |
Set the Service for the Message. | |
virtual void | setNonce (const XMLCh *uri)=0 |
Set the Nonce value. | |
virtual DSIGSignature * | addSignature (canonicalizationMethod cm=CANON_C14N_NOC, signatureMethod sm=SIGNATURE_DSA, hashMethod hm=HASH_SHA1)=0 |
Add a signature to the message. | |
Opaque client data handling | |
virtual int | getOpaqueClientDataSize (void)=0 |
Find the number of <OpaqueData> elements. | |
virtual const XMLCh * | getOpaqueClientDataItemStr (int item)=0 |
virtual void | appendOpaqueClientDataItem (const XMLCh *item)=0 |
|
|
|
|
|
|
Add a signature to the message. Allows an application to sign the message
|
|
|
|
Implemented in XKMSCompoundRequest, XKMSCompoundResult, XKMSLocateRequest, XKMSLocateResult, XKMSPendingRequest, XKMSRecoverRequest, XKMSRecoverResult, XKMSRegisterRequest, XKMSRegisterResult, XKMSReissueRequest, XKMSReissueResult, XKMSRequestAbstractType, XKMSResult, XKMSRevokeRequest, XKMSRevokeResult, XKMSStatusRequest, XKMSStatusResult, XKMSValidateRequest, and XKMSValidateResult. |
|
Get the Id for the Message. All messages are required to have an Id attribute that uniquely identifies the message. This method is used to retrieve a pointer to the Id string.
|
|
|
|
Get the Nonce of the message. All messages MAY have a nonce, used to provide cryptographically random data that will help defend against a replay attack.
|
|
|
|
Find the number of <OpaqueData> elements. The <OpaqueClientData> element can have multiple <OpaqueData> children. This method allows an application to determine how many such children exist
|
|
Get the Service identifier for this message. All Messages are associated with a particular XKMS service. This method can be used to retrieve the Service URI for a particular message.
|
|
Retrieve the Signature information (if any is attached). All XKMS messages MAY have a <Signature> node that is used to attest to the validity of the message.
|
|
Find out whether this is a signed Message.
|
|
Set the Id URI for the Message. Allows a calling application to set a new Id for the message Note: Great care should be taken on resetting Id attributes, as they are used to track a particular transaction through its liefcycle.
|
|
Set the Nonce value. Allows the application to set a new Nonce value (overwriting any that is currently set).
|
|
Set the Service for the Message. Used to set a new service URI for a particular message. In general, the service attribute would not be expected to change.
|