gSOAP WS-ReliableMessaging: /Users/engelen/Projects/gsoap/plugin/wsrmapi.h File Reference
Main Page | Class List | File List | Class Members | File Members | Related Pages

/Users/engelen/Projects/gsoap/plugin/wsrmapi.h File Reference

#include "wsaapi.h"
#include "threads.h"

Include dependency graph for wsrmapi.h:

Include dependency graph

This graph shows which files directly or indirectly include this file:

Included by dependency graph

Classes

struct  soap_wsrm_data
 Plugin data. More...
struct  soap_wsrm_message
 Linked list of unacknowledged messages stored for retransmission. More...
struct  soap_wsrm_content
 Linked list of message content blocks. More...
struct  soap_wsrm_range
struct  soap_wsrm_sequence
 Linked list of currently active message sequences. More...

Defines

#define SOAP_WSRM_ID   "WS-RM-1.1"
#define SOAP_WSRM_MAX_RETRIES   100
#define SOAP_WSRM_MAX_SEC_TO_EXPIRE   3600
#define SOAP_WSRM_TIMEOUT   10

Typedefs

typedef soap_wsrm_sequencesoap_wsrm_sequence_handle

Enumerations

enum  soap_wsrm_enable { SOAP_WSRM_OFF, SOAP_WSRM_ON }
enum  soap_wsrm_message_state { SOAP_WSRM_INIT, SOAP_WSRM_NACK, SOAP_WSRM_ACK }
 Message state (init, nack or ack). More...
enum  soap_wsrm_state {
  SOAP_WSRM_NONE, SOAP_WSRM_UNKNOWN, SOAP_WSRM_CREATED, SOAP_WSRM_CLOSED,
  SOAP_WSRM_TERMINATED
}
 Sequence state. More...

Functions

int soap_wsrm (struct soap *soap, struct soap_plugin *plugin, void *arg)
 Plugin registry function, used with soap_register_plugin.
int soap_wsrm_create (struct soap *soap, const char *to, const char *acksto, LONG64 expires, const char *wsa_id, soap_wsrm_sequence_handle *seq)
 Creates a new sequence. Sequences are usually created by the sender (client) and confirmed by the receiver (server). The 'to' server address must be used for all messages of the sequence to be sent to the server. Optionally the 'acksto' address can be given for acknowledgement messages to be sent to. A sequence ID is generated by the server upon success.
int soap_wsrm_create_offer (struct soap *soap, const char *to, const char *acksto, const char *id, LONG64 expires, enum wsrm__IncompleteSequenceBehaviorType behavior, const char *wsa_id, soap_wsrm_sequence_handle *seq)
 Creates a new sequence by offering suggested WS-RM parameters to the destination. Sequences are usually created by the sender (client) and confirmed by the receiver (server). The 'to' server address must be used for all messages of the sequence to be sent to the server. Optionally the 'acksto' address can be given for acknowledgement messages to be sent to. server upon success.
int soap_wsrm_request_num (struct soap *soap, soap_wsrm_sequence_handle seq, const char *wsa_id, const char *wsa_action, ULONG64 num)
 Adds a WS-RM sequence message number to the next message transmitted. No acks are requested.
int soap_wsrm_request (struct soap *soap, soap_wsrm_sequence_handle seq, const char *wsa_id, const char *wsa_action)
 Adds a WS-RM sequence message number to the next message transmitted to the WS-RM destination and increments the message counter by one. No acks are requested.
int soap_wsrm_request_acks (struct soap *soap, soap_wsrm_sequence_handle seq, const char *wsa_id, const char *wsa_action)
 Adds a WS-RM sequence message number to the next message transmitted to the WS-RM destination and increments the message counter by one. Message acks for the current sequence are requested.
int soap_wsrm_check_retry (struct soap *soap, soap_wsrm_sequence_handle seq)
 Client-side check to verify if the remote call can be retried when a failure occured. Increases the robustness of messages sends, by ensuring that the message was at least transmitted (but not necessarily received). Also implements HTTP 307 Temporary Redirect. Retries are limited to SOAP_WSRM_MAX_RETRIES iterations.
int soap_wsrm_resend (struct soap *soap, soap_wsrm_sequence_handle seq, ULONG64 lower, ULONG64 upper)
 Client-side call to resend all non-acknowledged messages that were automatically cached for this sequence. Messages stored in the sequence for retransmission (those that were previously sent but not acknowledged) are resent to the soap_wsrm_to() address, which was set by soap_wsrm_create() or soap_wsrm_create_offer(). It is recommended to resend messages after the last message in the sequence was transmitted before closing the sequence. To reduce unnecessary resend attempts, it is recommended to use soap_wsrm_request_ack() with the last message to request acks for messages already delivered.
int soap_wsrm_close (struct soap *soap, soap_wsrm_sequence_handle seq, const char *wsa_id)
 Closes the sequence, but does not yet terminate it. No new messages should be send, but messages can be resend with soap_wsrm_resend() if desired.
int soap_wsrm_terminate (struct soap *soap, soap_wsrm_sequence_handle seq, const char *wsa_id)
 Terminates the sequence. No new messages should be send and no resends should be tried. Usually done after soap_wsrm_close() or any time to terminate the sequence prematurely.
void soap_wsrm_seq_free (struct soap *soap, soap_wsrm_sequence_handle seq)
 Must be called to free the sequence allocated by soap_wsrm_create() or by soap_wsrm_create_offer(). Sequence handles are not automatically reclaimed by the engine.
void soap_wsrm_cleanup (struct soap *soap)
 Cleans up all expired sequences and releases resources. To be used at the server side to periodically clean up WS-RM sequences. Server-side cleanup is automatic, as long as WS-RM is in use. Does not release client-side sequences allocated by soap_wsrm_create() or soap_wsrm_create_offer().
const char * soap_wsrm_to (soap_wsrm_sequence_handle seq)
 Returns the endpoint address of the destination service that serves the sequence. Initially set with soap_wsrm_create or soap_wsrm_create_offer. HTTP 307 Temporary Redirect can change the endpoint during the lifetime of a message sequence. Thus, this function returns the most recent endpoint binding that can be used to send message to the server endpoint.
const char * soap_wsrm_acksto (soap_wsrm_sequence_handle seq)
 Returns the endpoint address of the AcksTo acknowledgement service that serves the sequence, when set with soap_wsrm_create() or soap_wsrm_create_offer() or NULL otherwise. HTTP 307 Temporary Redirect can change the endpoint during the lifetime of a message sequence. Thus, this function returns the most recent endpoint binding.
ULONG64 soap_wsrm_num (soap_wsrm_sequence_handle seq)
 Returns the current message number of the sequence.
ULONG64 soap_wsrm_nack (soap_wsrm_sequence_handle seq)
 Returns the number of non-acknowledged messages sent.
int soap_wsrm_check (struct soap *soap)
 Server-side check for the presence of WS-Addressing and WS-RM header blocks in the SOAP header. Also prepares the return WS-RM header. This function should be called in the each service operation that supports WS-RM. Do not use this function in a ReplyTo response-accepting destination service operation.
int soap_wsrm_reply_num (struct soap *soap)
 Adds a WS-RM sequence message number to the next message transmitted. No acks are requested. No WS-Addressing relay.
int soap_wsrm_reply (struct soap *soap, const char *wsa_id, const char *wsa_action)
 Server-side server operation reply to be performed when the service operation returns. Server operations that support WS-Addressing and WS-RM must call this function to return normally (and allow the response to be relayed).
int soap_wsrm_reply_request_acks (struct soap *soap, const char *wsa_id, const char *wsa_action)
 Server-side server operation reply to be performed when the service operation returns. Message acks for the current sequence are requested, but only when client made a create sequence offer. Server operations that support WS-Addressing and WS-RM must call this function or soap_wsrm_reply() to return normally (and allow the response to be relayed).
int soap_wsrm_fault_subcode (struct soap *soap, int flag, const char *faultsubcode, const char *faultstring, const char *faultdetail)
 Sets sender/receiver SOAP Fault (sub)code for server faults (can be user defined faults). When called before soap_wsrm_check() in the server operation, terminates the current sequence. Otherwise, the sequence is not terminated. In either case the fault is returned to sender (client) or to the FaultTo server when the WS-Addressing FaultTo header was set by the sender.
int soap_wsrm_sender_fault_subcode (struct soap *soap, const char *faultsubcode, const char *faultstring, const char *faultdetail)
 Sets sender SOAP Fault (sub)code for server faults (can be user defined faults). When called before soap_wsrm_check() in the server operation, terminates the current sequence. Otherwise, the sequence is not terminated. In either case the fault is returned to sender (client) or to the FaultTo server when the WS-Addressing FaultTo header was set by the sender.
int soap_wsrm_receiver_fault_subcode (struct soap *soap, const char *faultsubcode, const char *faultstring, const char *faultdetail)
 Sets receiver SOAP Fault (sub)code for server faults (can be user defined faults). When called before soap_wsrm_check() in the server operation, terminates the current sequence. Otherwise, the sequence is not terminated. In either case the fault is returned to sender (client) or to the FaultTo server when the WS-Addressing FaultTo header was set by the sender.
int soap_wsrm_sender_fault (struct soap *soap, const char *faultstring, const char *faultdetail)
 Sets sender SOAP Fault for server faults (can be user defined faults). When called before soap_wsrm_check() in the server operation, terminates the current sequence. Otherwise, the sequence is not terminated. In either case the fault is returned to sender (client) or to the FaultTo server when the WS-Addressing FaultTo header was set by the sender.
int soap_wsrm_receiver_fault (struct soap *soap, const char *faultstring, const char *faultdetail)
 Sets receiver SOAP Fault for server faults (can be user defined faults). When called before soap_wsrm_check() in the server operation, terminates the current sequence. Otherwise, the sequence is not terminated. In either case the fault is returned to sender (client) or to the FaultTo server when the WS-Addressing FaultTo header was set by the sender.
int soap_wsrm_check_fault (struct soap *soap, enum wsrm__FaultCodes *fault, const char **info)
 Checks the presence of a WS-RM fault at the client side (or in the FaultTo destination service) when a response is received.
int soap_wsrm_error (struct soap *soap, struct soap_wsrm_sequence *seq, enum wsrm__FaultCodes fault)
 Sets SOAP Fault (sub)code for server WS-RM fault response. Terminates the sequence.
void soap_wsrm_dump (struct soap *soap, FILE *fd)
 Dumps the current sequences and details of the wsrm plugin for diagnotics purposes.

Variables

const char soap_wsrm_id []

Define Documentation

#define SOAP_WSRM_ID   "WS-RM-1.1"
 

Plugin identification for plugin registry

#define SOAP_WSRM_MAX_RETRIES   100
 

Max number of retries that soap_wsrm_check_retry can succeed

#define SOAP_WSRM_MAX_SEC_TO_EXPIRE   3600
 

Max seconds to expire a non-terminated sequence and reclaim its resources

#define SOAP_WSRM_TIMEOUT   10
 

Seconds to timeout when sending ack messages to independent acksto server


Typedef Documentation

typedef struct soap_wsrm_sequence* soap_wsrm_sequence_handle
 


Enumeration Type Documentation

enum soap_wsrm_enable
 

Enumeration values:
SOAP_WSRM_OFF 
SOAP_WSRM_ON 

enum soap_wsrm_message_state
 

Message state (init, nack or ack).

Enumeration values:
SOAP_WSRM_INIT 
SOAP_WSRM_NACK 
SOAP_WSRM_ACK 

enum soap_wsrm_state
 

Sequence state.

Enumeration values:
SOAP_WSRM_NONE 
SOAP_WSRM_UNKNOWN 
SOAP_WSRM_CREATED 
SOAP_WSRM_CLOSED 
SOAP_WSRM_TERMINATED 


Function Documentation

int soap_wsrm struct soap *  soap,
struct soap_plugin *  p,
void *  arg
 

Plugin registry function, used with soap_register_plugin.

Parameters:
soap context
[in,out] p plugin created in registry
[in] arg optional argument passed from soap_register_plugin_arg
Returns:
SOAP_OK

const char * soap_wsrm_acksto soap_wsrm_sequence_handle  seq  ) 
 

Returns the endpoint address of the AcksTo acknowledgement service that serves the sequence, when set with soap_wsrm_create() or soap_wsrm_create_offer() or NULL otherwise. HTTP 307 Temporary Redirect can change the endpoint during the lifetime of a message sequence. Thus, this function returns the most recent endpoint binding.

Parameters:
seq sequence handle set by soap_wsrm_create() or soap_wsrm_create_offer()
Returns:
the sequence endpoint address

int soap_wsrm_check struct soap *  soap  ) 
 

Server-side check for the presence of WS-Addressing and WS-RM header blocks in the SOAP header. Also prepares the return WS-RM header. This function should be called in the each service operation that supports WS-RM. Do not use this function in a ReplyTo response-accepting destination service operation.

Parameters:
soap context
Returns:
SOAP_OK or error code (and server operation must return this value)

int soap_wsrm_check_fault struct soap *  soap,
enum wsrm__FaultCodes fault,
const char **  info
 

Checks the presence of a WS-RM fault at the client side (or in the FaultTo destination service) when a response is received.

Parameters:
soap context
[out] fault code
[out] info string pointer related to the fault (or NULL)
Returns:
SOAP_OK (no fault or not a WS-RM fault) or error when not WS-RM fault

int soap_wsrm_check_retry struct soap *  soap,
soap_wsrm_sequence_handle  seq
 

Client-side check to verify if the remote call can be retried when a failure occured. Increases the robustness of messages sends, by ensuring that the message was at least transmitted (but not necessarily received). Also implements HTTP 307 Temporary Redirect. Retries are limited to SOAP_WSRM_MAX_RETRIES iterations.

Parameters:
soap context
seq sequence handle set by soap_wsrm_create or soap_wsrm_create_offer
Returns:
SOAP_OK when retry is safe, error code otherwise

void soap_wsrm_cleanup struct soap *  soap  ) 
 

Cleans up all expired sequences and releases resources. To be used at the server side to periodically clean up WS-RM sequences. Server-side cleanup is automatic, as long as WS-RM is in use. Does not release client-side sequences allocated by soap_wsrm_create() or soap_wsrm_create_offer().

Parameters:
soap context

int soap_wsrm_close struct soap *  soap,
soap_wsrm_sequence_handle  seq,
const char *  wsa_id
 

Closes the sequence, but does not yet terminate it. No new messages should be send, but messages can be resend with soap_wsrm_resend() if desired.

Parameters:
soap context
seq sequence handle set by soap_wsrm_create or soap_wsrm_create_offer
[in] wsa_id WS-Addressing message ID (optional)
Returns:
SOAP_OK or error code

int soap_wsrm_create struct soap *  soap,
const char *  to,
const char *  acksto,
LONG64  expires,
const char *  wsa_id,
soap_wsrm_sequence_handle seq
 

Creates a new sequence. Sequences are usually created by the sender (client) and confirmed by the receiver (server). The 'to' server address must be used for all messages of the sequence to be sent to the server. Optionally the 'acksto' address can be given for acknowledgement messages to be sent to. A sequence ID is generated by the server upon success.

Parameters:
soap context
[in] to endpoint address of the WS-RM destination server (required)
[in] acksto endpoint address of the WS-RM acknowledgement server (optional, use NULL when acks are piggy-backed on response messages to the source)
[in] expires max sequence duration (its lifetime) in ms (use 0 for inifinite)
[in] wsa_id WS-Addressing message ID (optional, use NULL when omitted)
[out] seq sequence handle is set
Returns:
SOAP_OK or error code

int soap_wsrm_create_offer struct soap *  soap,
const char *  to,
const char *  acksto,
const char *  id,
LONG64  expires,
enum wsrm__IncompleteSequenceBehaviorType  behavior,
const char *  wsa_id,
soap_wsrm_sequence_handle seq
 

Creates a new sequence by offering suggested WS-RM parameters to the destination. Sequences are usually created by the sender (client) and confirmed by the receiver (server). The 'to' server address must be used for all messages of the sequence to be sent to the server. Optionally the 'acksto' address can be given for acknowledgement messages to be sent to. server upon success.

Parameters:
soap context
[in] to endpoint address of the WS-RM destination server (required)
[in] acksto endpoint address of the WS-RM acknowledgement server (optional, use NULL when acks are piggy-backed on response messages to the source)
[in] id offered WS-RM sequence identifier (optional, generate when NULL)
[in] expires max sequence duration (its lifetime) in ms (use 0 for inifinite)
[in] behavior offered DiscardEntireSequence, DiscardFollowingFirstGap, or NoDiscard, which specifies the WS-RM destination's action when a sequence is closed/terminated when it is incomplete, and notifies the source when failed.
[in] wsa_id WS-Addressing message ID (optional, use NULL when omitted)
[out] seq sequence handle is set
Returns:
SOAP_OK or error code

void soap_wsrm_dump struct soap *  soap,
FILE *  fd
 

Dumps the current sequences and details of the wsrm plugin for diagnotics purposes.

Parameters:
soap context
[in] fd file descriptor to send text to

int soap_wsrm_error struct soap *  soap,
struct soap_wsrm_sequence seq,
enum wsrm__FaultCodes  fault
 

Sets SOAP Fault (sub)code for server WS-RM fault response. Terminates the sequence.

Parameters:
soap context
[in] seq pointer to sequence to terminate or NULL
[in] fault is one of enum wsrm__FaultCodes enumeration values
Returns:
SOAP_FAULT

int soap_wsrm_fault_subcode struct soap *  soap,
int  flag,
const char *  faultsubcode,
const char *  faultstring,
const char *  faultdetail
 

Sets sender/receiver SOAP Fault (sub)code for server faults (can be user defined faults). When called before soap_wsrm_check() in the server operation, terminates the current sequence. Otherwise, the sequence is not terminated. In either case the fault is returned to sender (client) or to the FaultTo server when the WS-Addressing FaultTo header was set by the sender.

Parameters:
soap context
[in] flag 0=receiver, 1=sender
[in] faultsubcode sub code string
[in] faultstring fault string
[in] faultdetail detail string
Returns:
SOAP_FAULT

ULONG64 soap_wsrm_nack soap_wsrm_sequence_handle  seq  ) 
 

Returns the number of non-acknowledged messages sent.

Parameters:
seq sequence handle set by soap_wsrm_create() or soap_wsrm_create_offer()
Returns:
the sequence endpoint address

ULONG64 soap_wsrm_num soap_wsrm_sequence_handle  seq  ) 
 

Returns the current message number of the sequence.

Parameters:
seq sequence handle set by soap_wsrm_create() or soap_wsrm_create_offer()
Returns:
the sequence endpoint address

int soap_wsrm_receiver_fault struct soap *  soap,
const char *  faultstring,
const char *  faultdetail
 

Sets receiver SOAP Fault for server faults (can be user defined faults). When called before soap_wsrm_check() in the server operation, terminates the current sequence. Otherwise, the sequence is not terminated. In either case the fault is returned to sender (client) or to the FaultTo server when the WS-Addressing FaultTo header was set by the sender.

Parameters:
soap context
[in] faultstring fault string
[in] faultdetail detail string
Returns:
SOAP_FAULT

int soap_wsrm_receiver_fault_subcode struct soap *  soap,
const char *  faultsubcode,
const char *  faultstring,
const char *  faultdetail
 

Sets receiver SOAP Fault (sub)code for server faults (can be user defined faults). When called before soap_wsrm_check() in the server operation, terminates the current sequence. Otherwise, the sequence is not terminated. In either case the fault is returned to sender (client) or to the FaultTo server when the WS-Addressing FaultTo header was set by the sender.

Parameters:
soap context
[in] faultsubcode sub code string
[in] faultstring fault string
[in] faultdetail detail string
Returns:
SOAP_FAULT

int soap_wsrm_reply struct soap *  soap,
const char *  wsa_id,
const char *  wsa_action
 

Server-side server operation reply to be performed when the service operation returns. Server operations that support WS-Addressing and WS-RM must call this function to return normally (and allow the response to be relayed).

Parameters:
soap context
[in] wsa_id WS-Addressing message ID (optional)
[in] wsa_action mandatory WS-Addressing action of the response
Returns:
SOAP_OK or error code (and server operation must return this value)

int soap_wsrm_reply_num struct soap *  soap  ) 
 

Adds a WS-RM sequence message number to the next message transmitted. No acks are requested. No WS-Addressing relay.

Parameters:
soap context
Returns:
SOAP_OK or error code (and server operation must return this value)

int soap_wsrm_reply_request_acks struct soap *  soap,
const char *  wsa_id,
const char *  wsa_action
 

Server-side server operation reply to be performed when the service operation returns. Message acks for the current sequence are requested, but only when client made a create sequence offer. Server operations that support WS-Addressing and WS-RM must call this function or soap_wsrm_reply() to return normally (and allow the response to be relayed).

Parameters:
soap context
[in] wsa_id WS-Addressing message ID (optional)
[in] wsa_action mandatory WS-Addressing action of the response
Returns:
SOAP_OK or error code (and server operation must return this value)

int soap_wsrm_request struct soap *  soap,
soap_wsrm_sequence_handle  seq,
const char *  wsa_id,
const char *  wsa_action
 

Adds a WS-RM sequence message number to the next message transmitted to the WS-RM destination and increments the message counter by one. No acks are requested.

Parameters:
soap context
seq sequence handle set by soap_wsrm_create() or soap_wsrm_create_offer()
[in] wsa_id WS-Addressing message ID (optional, use NULL when omitted)
[in] wsa_action mandatory WS-Addressing action of the next message sent
Returns:
SOAP_OK or error code

int soap_wsrm_request_acks struct soap *  soap,
soap_wsrm_sequence_handle  seq,
const char *  wsa_id,
const char *  wsa_action
 

Adds a WS-RM sequence message number to the next message transmitted to the WS-RM destination and increments the message counter by one. Message acks for the current sequence are requested.

Parameters:
soap context
seq sequence handle set by soap_wsrm_create() or soap_wsrm_create_offer()
[in] wsa_id WS-Addressing message ID (optional, use NULL when omitted)
[in] wsa_action mandatory WS-Addressing action of the next message sent
Returns:
SOAP_OK or error code

int soap_wsrm_request_num struct soap *  soap,
soap_wsrm_sequence_handle  seq,
const char *  wsa_id,
const char *  wsa_action,
ULONG64  num
 

Adds a WS-RM sequence message number to the next message transmitted. No acks are requested.

Parameters:
soap context
seq sequence handle set by soap_wsrm_create() or soap_wsrm_create_offer()
[in] wsa_id WS-Addressing message ID (optional, use NULL when omitted)
[in] wsa_action mandatory WS-Addressing action of the next message sent
[in] num WS-RM sequence message number
Returns:
SOAP_OK or error code

int soap_wsrm_resend struct soap *  soap,
soap_wsrm_sequence_handle  seq,
ULONG64  lower,
ULONG64  upper
 

Client-side call to resend all non-acknowledged messages that were automatically cached for this sequence. Messages stored in the sequence for retransmission (those that were previously sent but not acknowledged) are resent to the soap_wsrm_to() address, which was set by soap_wsrm_create() or soap_wsrm_create_offer(). It is recommended to resend messages after the last message in the sequence was transmitted before closing the sequence. To reduce unnecessary resend attempts, it is recommended to use soap_wsrm_request_ack() with the last message to request acks for messages already delivered.

Parameters:
soap context
seq sequence handle set by soap_wsrm_create or soap_wsrm_create_offer
[in] lower resend message range lower bound (0 for lowest)
[in] upper resend message range upper bound (or 0 for infinite)
Returns:
SOAP_OK or error code (can be ignored when resends are retried later)

int soap_wsrm_sender_fault struct soap *  soap,
const char *  faultstring,
const char *  faultdetail
 

Sets sender SOAP Fault for server faults (can be user defined faults). When called before soap_wsrm_check() in the server operation, terminates the current sequence. Otherwise, the sequence is not terminated. In either case the fault is returned to sender (client) or to the FaultTo server when the WS-Addressing FaultTo header was set by the sender.

Parameters:
soap context
[in] faultstring fault string
[in] faultdetail detail string
Returns:
SOAP_FAULT

int soap_wsrm_sender_fault_subcode struct soap *  soap,
const char *  faultsubcode,
const char *  faultstring,
const char *  faultdetail
 

Sets sender SOAP Fault (sub)code for server faults (can be user defined faults). When called before soap_wsrm_check() in the server operation, terminates the current sequence. Otherwise, the sequence is not terminated. In either case the fault is returned to sender (client) or to the FaultTo server when the WS-Addressing FaultTo header was set by the sender.

Parameters:
soap context
[in] faultsubcode sub code string
[in] faultstring fault string
[in] faultdetail detail string
Returns:
SOAP_FAULT

void soap_wsrm_seq_free struct soap *  soap,
soap_wsrm_sequence_handle  seq
 

Must be called to free the sequence allocated by soap_wsrm_create() or by soap_wsrm_create_offer(). Sequence handles are not automatically reclaimed by the engine.

Parameters:
soap context
seq sequence handle set by soap_wsrm_create() or soap_wsrm_create_offer()

int soap_wsrm_terminate struct soap *  soap,
soap_wsrm_sequence_handle  seq,
const char *  wsa_id
 

Terminates the sequence. No new messages should be send and no resends should be tried. Usually done after soap_wsrm_close() or any time to terminate the sequence prematurely.

Parameters:
soap context
seq sequence handle set by soap_wsrm_create or soap_wsrm_create_offer
[in] wsa_id WS-Addressing message ID (optional)
Returns:
SOAP_OK or error code

const char * soap_wsrm_to soap_wsrm_sequence_handle  seq  ) 
 

Returns the endpoint address of the destination service that serves the sequence. Initially set with soap_wsrm_create or soap_wsrm_create_offer. HTTP 307 Temporary Redirect can change the endpoint during the lifetime of a message sequence. Thus, this function returns the most recent endpoint binding that can be used to send message to the server endpoint.

Parameters:
seq sequence handle set by soap_wsrm_create() or soap_wsrm_create_offer()
Returns:
the sequence endpoint address


Variable Documentation

const char soap_wsrm_id[]
 

Plugin identification for plugin registry


Generated on Sat Oct 16 17:32:02 2010 for gSOAP WS-ReliableMessaging by doxygen 1.3.8