#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 } |
| 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, XKMSRegisterRequest, XKMSRegisterResult, XKMSRequestAbstractType, XKMSResult, 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.
|
1.4.2