Rogue Wave banner
Previous fileTop of DocumentContentsIndex pageNext file
HydraExpress C++ API Reference Guide
Rogue Wave web site:  Home Page  |  Main Documentation Page

rwsf::CallInfo

Group:  Web Services


rwsf::CallInforwsf::MessageProperties

Local Index

Members

Header File

#include rwsf/webservice/CallInfo.h

Description

An instance of rwsf::CallInfo contains data about a message, including session or transaction data, SOAP headers, or transport headers. This class can also be used to hold any other desired data relevant to this SOAP message. A rwsf::CallInfo object is passed from the client to the transport on the client side, and from the servlet to the skeleton and down to the service implementation on the server side.

Each callinfo object is automatically initialized with three attributes: a rwsf:SessionID, a rwsf:Session, and a rwsf:RequestURL, while all other elements are optional. If no transport header is defined in this class, the default transport type is HTTP. (See rwsf::Transport.) Any number of headers or other objects may be added to the callinfo object.

Each service operation method takes a callinfo object as a parameter. A callinfo object carries data as a key/value pair. Each key is a simple string identifier. Each value is a rwsf::Attribute.

Additional SOAP headers or transport headers may be added or deleted at any point during processing. Any headers attached to the request message will appear as requestHeaders in the callInfo object. Likewise, any headers returning to the client in the response message will show up as responseHeaders.

The service operation methods in the generated client proxy are overloaded with either a callInfo object as a parameter or not, as follows:

If your message does not contain any customized headers or objects, there is no need to pass the callInfo object throughout the service, so you may want to use the first method when creating your proxy.

Public Constructors

CallInfo();

Public Destructors

~CallInfo();

Public Member Functions

void
addParameter(const ParameterObject & p);
void
addRequestAttachment(const rwsf::MessageAttachment & a);
void
addRequestSoapHeader(const rwsf::XmlName & headerName,
    const std::string & value,
    bool mustUnderstand = false,
    const std::string & actor = "",
    const XmlAttributeSet & attrs = XmlAttributeSet());
void
addRequestSoapHeader(const rwsf::XmlName & headerName,
    const std::string & value,
    const char * type,
    bool mustUnderstand = false,
    const std::string & actor = "",
    const XmlAttributeSet & attrs = XmlAttributeSet());
void
addRequestSoapHeader(const rwsf::XmlName & headerName,
    const std::string & value,
    const std::string & type,
    bool mustUnderstand = false,
    const std::string & actor = "",
    const XmlAttributeSet & attrs = XmlAttributeSet());
void
addRequestTransportHeader(const std::string & name,
    const std::string & value);
void
addResponseAttachment(const rwsf::MessageAttachment & a);
void
addResponseSoapHeader(const rwsf::XmlName & headerName,
    const std::string & value,
    bool mustUnderstand = false,
    const std::string & actor = "",
    const XmlAttributeSet & attrs = XmlAttributeSet());
void
addResponseSoapHeader(const rwsf::XmlName & headerName,
    const std::string & value,
    const char * type,
    bool mustUnderstand = false,
    const std::string & actor = "",
    const XmlAttributeSet & attrs = XmlAttributeSet());
void
addResponseSoapHeader(const rwsf::XmlName & headerName,
    const std::string & value,
    const std::string & type,
    bool mustUnderstand = false,
    const std::string & actor = "",
    const XmlAttributeSet & attrs = XmlAttributeSet());
void
addResponseTransportHeader(const std::string & name,
    const std::string & value);
void
clearAll();
void
clearParameters();
void
clearRequestAttachments();
void
clearRequestSoapHeaders();
void
clearRequestTransportHeaders();
void
clearResponseAttachments();
void
clearResponseSoapHeaders();
void
clearResponseTransportHeaders();
rwsf::Attribute
get(const std::string & attributeName) const;
rwsf::Enumeration< std::string >
getAttributeNames() const;
std::string
getMethodEncoding();
rwsf::XmlName
getMethodName();
ParameterObject
getParameterObject(const rwsf::XmlName & name) const;
std::list< ParameterObject > &
getParameters() const;
rwsf::MessageAttachment
getRequestAttachment(const std::string & reference) const;
std::list< rwsf::MessageAttachment > &
getRequestAttachments() const;
rwsf::MessageMarshaller
getRequestMessageMarshaller() const;
rwsf::Enumeration< rwsf::XmlName >
getRequestSoapHeaderNames() const;
SoapHeaderObject
getRequestSoapHeaderObject(const rwsf::XmlName & name) const;
std::string
getRequestSoapHeaderValue(const rwsf::XmlName & headerName) const;
rwsf::Enumeration< std::string >
getRequestTransportHeaderNames() const;
TransportHeaderObject
getRequestTransportHeaderObject(const std::string & name) const;
rwsf::Enumeration< TransportHeaderObject >
getRequestTransportHeaders() const;
std::string
getRequestTransportHeaderValue(const std::string & name) const;
rwsf::MessageAttachment
getResponseAttachment(const std::string & reference) const;
std::list< rwsf::MessageAttachment > &
getResponseAttachments() const;
rwsf::Enumeration< rwsf::XmlName >
getResponseSoapHeaderNames() const;
SoapHeaderObject
getResponseSoapHeaderObject(const rwsf::XmlName & name) const;
std::string
getResponseSoapHeaderValue(const rwsf::XmlName & headerName) const;
rwsf::Enumeration< std::string >
getResponseTransportHeaderNames() const;
TransportHeaderObject
getResponseTransportHeaderObject(const std::string & name) const;
rwsf::Enumeration< TransportHeaderObject >
getResponseTransportHeaders() const;
std::string
getResponseTransportHeaderValue(const std::string & name) const;
bool
isMarshal();
bool
isOneWay() const;
bool
isRequestSoapHeaderSet(const rwsf::XmlName & headerName) const;
bool
isRequestTransportHeaderSet(const std::string & name) const;
bool
isResponseSoapHeaderSet(const rwsf::XmlName & headerName) const;
bool
isResponseTransportHeaderSet(const std::string & name) const;
void
put(const std::string & attributeName,
    const rwsf::Attribute & value);
void
removeParameter(const rwsf::XmlName & name);
void
removeRequestAttachment(const std::string & reference);
void
removeRequestSoapHeader(const rwsf::XmlName & headerName);
void
removeRequestTransportHeader(const std::string & name);
void
removeResponseAttachment(const std::string & reference);
void
removeResponseSoapHeader(const rwsf::XmlName & headerName);
void
removeResponseTransportHeader(const std::string & name);
void
setIsMarshal(bool isMarshal);
void
setIsOneWay(const bool isOneWay);
void
setMethodEncoding(const std::string & encoding);
void
setMethodName(const rwsf::XmlName & method);
std::string
soapRequestHeadersAsString(const std::string & soapEnvPrefix = "SOAP-ENV") const;
std::string
soapResponseHeadersAsString(const std::string & soapEnvPrefix = "SOAP-ENV") const;


Previous fileTop of DocumentContentsIndex pageNext file

© Copyright Rogue Wave Software, Inc. All Rights Reserved. All Rights Reserved. Rogue Wave is a registered trademark of Rogue Wave Software, Inc. in the United States and other countries. HydraExpress is a trademark of Rogue Wave Software, Inc. All other trademarks are the property of their respective owners.
Contact Rogue Wave about documentation or support issues.