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

rwsf::TransportImp

Group:  Web Services


rwsf::TransportImprwsf::MessageHandlerImp

Local Index

Members

Header File

#include rwsf/webservice/transport/TransportImp.h

Description

rwsf::TransportImp is an abstract base class and the body of the handle represented by rwsf::Transport.

All rwsf transports derive from this class. This class may be used to create a customized transport. To create your own transport, you must derive from this class and implement at least the following four pure virtual functions.

For an example on creating a custom transport, see Section 11.6, "Creating a Transport," in the HydraExpress Web Service Development Guide.

Multithread Safety

To support multithread safety, rwsf::TransportImp provides the invoke implementation for all transports. The method invoke() creates a multithread guard and then calls doInvoke(), which is implemented in the derived classes. This design provides thread safety for all derived classes during asynchronous processing, and allows your application to share transports safely.

If you are not using asynchronous processing and want to avoid using the mutex guard, you may want to reimplement invoke() in your derived classes.

Public Constructors

TransportImp();

Public Destructors

virtual
~TransportImp();

Public Member Functions

TransportImp *
clone() const = 0;
void
doConnect() = 0;
void
doDisconnect() = 0;
void
doInit(const rwsf::Config & initParams);
void
doInvoke(rwsf::CallInfo & callInfo) = 0;
void
doSetProperty(const std::string & key,
    const std::string & value);
std::string
getProperty(const std::string & key) const;
void
invoke(rwsf::CallInfo & callInfo);
bool
isConnected() const = 0;
void
log(const std::string & message,
    rwsf::CallInfo::LogLevel l = rwsf::CallInfo::Info);
void
log(rwsf::CallInfo & callInfo,
    rwsf::CallInfo::LogLevel l = rwsf::CallInfo::Info);
void
setInitParams(const rwsf::Config & initParams);
void
setProperty(const std::string & key,
    const std::string & value);


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.