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

rwsf::MessageListener

Group:  Listener


rwsf::MessageListener rwsf::MessageHandler

Local Index

Members

Header File

#include <rw/rwsf/soapworx/listener/MessageListener.h>

Description

rwsf::MessageListener is the handle class for all listeners.

Listeners wait for messages in a separate thread and forward received messages to the relevant handler. Listeners are used in clients when there is need for the client to listen for messages, such as when implementing the notification and solicit-response patterns.

For more information about the notification pattern and asynchronous processing, see Chapter 13, "Asynchronous Messaging," in the HydraExpress Web Service Development Guide. For more information on handlers, see Section 15.3, "The Message Handler API," in the HydraExpress Web Service Development Guide

To create a new listener, extend the body class rwsf::MessageHandlerImp. Configure your listener in the configuration file client-transports.xml. This file is a static file that is copied to your output directory at the time of code generation, and contains initialization parameters for client transports and listeners. For a discussion on creating or customizing transports or listeners, see Chapter 11, "Dynamic Transports," in the HydraExpress Web Service Development Guide

rwsf::MessageListener implements the handle/body idiom in which rwsf::MessageListener is the handle, and rwsf::MessageListenerImp is the body. An instance of this class is a handle to a private, reference-counted body. When a handle is copy-constructed, the new handle attaches to the same body as the original. When one handle is assigned to another handle, the handle on the left side detaches from its current body and attaches to the body pointed to by the handle on the right side. Logical operators return truth values based on whether the handles being compared point to the same body instance.


NOTE -- Handle methods that just call the corresponding method on the body are described only in the body class. For instance, if the handle class includes a method invoke() that calls the body's corresponding method doInvoke(), that method is documented only in the body class.

Public Constructors

MessageListener();
MessageListener(MessageListenerImp* imp);
MessageListener(const MessageListener& listener);

Public Destructor

virtual 
~MessageListener();

Public Member Operators

MessageListener& 
operator=(const MessageListener& listener);

Public Member Functions

MessageListenerImp& 
body() const;
void 
init(const rwsf::Config& initParams);
std::string 
getProperty(const std::string& value);
void 
setProperty(const std::string& key, 
             const std::string& value);.
void 
log(const std::string& message, 
    rwsf::CallInfo::LogLevel l = rwsf::CallInfo::Error);
void 
log(rwsf::CallInfo& callInfo, 
    rwsf::CallInfo::LogLevel l = rwsf::CallInfo::Error);
void 
setHandler(const rwsf::MessageHandler& handler);
void 
start();
void 
stop();


Previous fileTop of DocumentContentsIndex pageNext file

©2004-2007 Copyright Quovadx, Inc. All Rights Reserved.
Quovadx and Rogue Wave are registered trademarks of Quovadx, Inc. in the United States and other countries. All other trademarks are the property of their respective owners.
Contact Rogue Wave about documentation or support issues.