org::xmlBlaster::util::dispatch::ConnectionsHandler Class Reference

Interface for XmlBlaster, the supported methods on c++ client side. More...

Inheritance diagram for org::xmlBlaster::util::dispatch::ConnectionsHandler:

Inheritance graph
[legend]
Collaboration diagram for org::xmlBlaster::util::dispatch::ConnectionsHandler:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 ConnectionsHandler (org::xmlBlaster::util::Global &global, std::string &instanceName)
virtual ~ConnectionsHandler ()
org::xmlBlaster::util::qos::ConnectReturnQosRef connect (org::xmlBlaster::util::qos::ConnectQosRef &qos)
 connect() is a login or authentication as well, the authentication schema is transported in the qos.
bool disconnect (org::xmlBlaster::util::qos::DisconnectQos &qos)
 Logout from xmlBlaster.
std::string getProtocol ()
 
Returns:
The connection protocol name "IOR" or "SOCKET" etc.

bool shutdown ()
 Is invoked when we poll for the server, for example after we have lost the connection.
std::string getLoginName ()
bool isLoggedIn ()
std::string ping (std::string &qos)
org::xmlBlaster::client::qos::SubscribeReturnQos subscribe (org::xmlBlaster::client::key::SubscribeKey &key, org::xmlBlaster::client::qos::SubscribeQos &qos)
std::vector< org::xmlBlaster::util::MessageUnitget (org::xmlBlaster::client::key::GetKey &key, org::xmlBlaster::client::qos::GetQos &qos)
std::vector< org::xmlBlaster::client::qos::UnSubscribeReturnQosunSubscribe (org::xmlBlaster::client::key::UnSubscribeKey &key, org::xmlBlaster::client::qos::UnSubscribeQos &qos)
org::xmlBlaster::client::qos::PublishReturnQos publish (org::xmlBlaster::util::MessageUnit &msgUnit)
void publishOneway (std::vector< org::xmlBlaster::util::MessageUnit > &msgUnitArr)
std::vector< org::xmlBlaster::client::qos::PublishReturnQospublishArr (std::vector< org::xmlBlaster::util::MessageUnit > &msgUnitArr)
std::vector< org::xmlBlaster::client::qos::EraseReturnQoserase (org::xmlBlaster::client::key::EraseKey &key, org::xmlBlaster::client::qos::EraseQos &qos)
org::xmlBlaster::util::dispatch::I_PostSendListenerregisterPostSendListener (org::xmlBlaster::util::dispatch::I_PostSendListener *listener)
 Register a listener for to receive information about the progress of incoming data.
void initFailsafe (org::xmlBlaster::client::I_ConnectionProblems *connectionProblems)
void timeout (void *userData)
 You will be notified about the timeout through this method.
bool putToQueue ()
 On POLLING or if the client side queue contains entries further messages need to be put to the queue to maintain sequence.
bool isRecoverable (org::xmlBlaster::util::XmlBlasterException *reason)
long flushQueue ()
 Flushes all entries in the queue, i.e.
org::xmlBlaster::util::queue::I_QueuegetQueue ()
 gets a pointer to the queue used.
bool isFailsafe ()
 Returns true if the connection is in failsafe mode.
bool isConnected ()
 Same as isAlive() || isPolling().
bool isAlive ()
 
Returns:
true if connected with server and ready

bool isPolling ()
 
Returns:
true if polling for the server

bool isDead ()
 
Returns:
true if we have given up

std::string getStatusString ()
 Get connection status string for logging.
org::xmlBlaster::util::qos::ConnectReturnQosRef connectRaw (org::xmlBlaster::util::qos::ConnectQosRef &connectQos)
virtual org::xmlBlaster::client::protocol::I_XmlBlasterConnectiongetConnection ()
virtual org::xmlBlaster::util::qos::ConnectReturnQosRef getConnectReturnQos ()
virtual org::xmlBlaster::util::qos::ConnectQosRef getConnectQos ()

Protected Member Functions

long flushQueueUnlocked (org::xmlBlaster::util::queue::I_Queue *queueToFlush, bool doRemove=true)
 only used inside the class to avoid deadlock
org::xmlBlaster::client::qos::PublishReturnQos queuePublish (org::xmlBlaster::util::MessageUnit &msgUnit)
org::xmlBlaster::client::qos::SubscribeReturnQos queueSubscribe (org::xmlBlaster::client::key::SubscribeKey &key, org::xmlBlaster::client::qos::SubscribeQos &qos)
org::xmlBlaster::util::qos::ConnectReturnQosRefqueueConnect ()
bool startPinger (bool withInitialPing)
 
Parameters:
withInitialPing If true do an immediate ping without delay

void toPollingOrDead (org::xmlBlaster::util::XmlBlasterException *reason)
 Going to polling status in case we are in failsafe mode or to DEAD if we are not in failsafe mode.

Detailed Description

Interface for XmlBlaster, the supported methods on c++ client side.

This is a pure virtual class.

See also:
CORBA xmlBlaster.idl

Definition at line 36 of file ConnectionsHandler.h.


Constructor & Destructor Documentation

org::xmlBlaster::util::dispatch::ConnectionsHandler::ConnectionsHandler ( org::xmlBlaster::util::Global global,
std::string &  instanceName 
)

org::xmlBlaster::util::dispatch::ConnectionsHandler::~ConnectionsHandler (  )  [virtual]

Definition at line 56 of file ConnectionsHandler.cpp.

References org::xmlBlaster::util::I_Log::call(), org::xmlBlaster::util::dispatch::END, org::xmlBlaster::util::Global::getDefaultProtocol(), org::xmlBlaster::util::Global::getDispatchManager(), org::xmlBlaster::util::Global::getPingTimer(), org::xmlBlaster::util::ReferenceHolder< T >::isNull(), org::xmlBlaster::util::dispatch::DispatchManager::releasePlugin(), org::xmlBlaster::util::Timeout::removeTimeoutListener(), and org::xmlBlaster::util::I_Log::trace().


Member Function Documentation

ConnectReturnQosRef org::xmlBlaster::util::dispatch::ConnectionsHandler::connect ( org::xmlBlaster::util::qos::ConnectQosRef qos  )  [virtual]

connect() is a login or authentication as well, the authentication schema is transported in the qos.

It is more general then the login() method, since it allows to transport any authentication info in the xml based qos.

You can still use login() for simple name/password based authentication.

Parameters:
qos The authentication and other informations
client A handle to your callback if desired or null
Returns:
org::xmlBlaster::util::qos::ConnectReturnQos

Implements org::xmlBlaster::client::protocol::I_XmlBlasterConnection.

Definition at line 86 of file ConnectionsHandler.cpp.

References org::xmlBlaster::util::dispatch::ALIVE, org::xmlBlaster::util::I_Log::call(), org::xmlBlaster::client::protocol::I_XmlBlasterConnection::connect(), org::xmlBlaster::util::I_Log::dump(), flushQueue(), org::xmlBlaster::util::Global::getDispatchManager(), org::xmlBlaster::util::XmlBlasterException::getErrorCodeStr(), org::xmlBlaster::util::dispatch::DispatchManager::getPlugin(), org::xmlBlaster::util::I_Log::info(), org::xmlBlaster::util::INTERNAL_ILLEGALARGUMENT, org::xmlBlaster::util::XmlBlasterException::isCommunication(), isConnected(), org::xmlBlaster::util::ReferenceHolder< T >::isNull(), queueConnect(), org::xmlBlaster::client::I_ConnectionProblems::reachedAlive(), org::xmlBlaster::util::Global::setId(), org::xmlBlaster::util::Global::setImmutableId(), org::xmlBlaster::util::Global::setSessionName(), startPinger(), org::xmlBlaster::util::XmlBlasterException::toString(), org::xmlBlaster::util::XmlBlasterException::toXml(), org::xmlBlaster::util::I_Log::trace(), and org::xmlBlaster::util::I_Log::warn().

Referenced by org::xmlBlaster::client::XmlBlasterAccess::connect().

bool org::xmlBlaster::util::dispatch::ConnectionsHandler::disconnect ( org::xmlBlaster::util::qos::DisconnectQos qos  )  [virtual]

Logout from xmlBlaster.

If the status is DEAD it returns false and writes a warning. If the status is ALIVE it disconnects. If the status is something else, it throws an exception.

Parameters:
qos The QoS or null

Implements org::xmlBlaster::client::protocol::I_XmlBlasterConnection.

Definition at line 155 of file ConnectionsHandler.cpp.

References org::xmlBlaster::util::I_Log::call(), org::xmlBlaster::util::queue::I_Queue::clear(), org::xmlBlaster::util::COMMUNICATION_NOCONNECTION, org::xmlBlaster::util::COMMUNICATION_NOCONNECTION_POLLING, org::xmlBlaster::util::dispatch::DEAD, org::xmlBlaster::client::protocol::I_XmlBlasterConnection::disconnect(), org::xmlBlaster::util::MethodName::DISCONNECT, org::xmlBlaster::util::I_Log::dump(), org::xmlBlaster::util::qos::DisconnectQos::getClearClientQueue(), putToQueue(), org::xmlBlaster::client::I_ConnectionProblems::reachedDead(), org::xmlBlaster::util::dispatch::START, org::xmlBlaster::util::qos::DisconnectQos::toXml(), and org::xmlBlaster::util::I_Log::warn().

Referenced by org::xmlBlaster::client::XmlBlasterAccess::disconnect().

string org::xmlBlaster::util::dispatch::ConnectionsHandler::getProtocol (  )  [virtual]

Returns:
The connection protocol name "IOR" or "SOCKET" etc.

Implements org::xmlBlaster::client::protocol::I_XmlBlasterConnection.

Definition at line 177 of file ConnectionsHandler.cpp.

References org::xmlBlaster::client::protocol::I_XmlBlasterConnection::getProtocol().

bool org::xmlBlaster::util::dispatch::ConnectionsHandler::shutdown (  )  [virtual]

Is invoked when we poll for the server, for example after we have lost the connection.

Implements org::xmlBlaster::client::protocol::I_XmlBlasterConnection.

Definition at line 189 of file ConnectionsHandler.cpp.

References org::xmlBlaster::client::protocol::I_XmlBlasterConnection::shutdown().

Referenced by org::xmlBlaster::client::XmlBlasterAccess::disconnect(), and org::xmlBlaster::client::XmlBlasterAccess::leaveServer().

string org::xmlBlaster::util::dispatch::ConnectionsHandler::getLoginName (  )  [virtual]

Implements org::xmlBlaster::client::protocol::I_XmlBlasterConnection.

Definition at line 197 of file ConnectionsHandler.cpp.

References org::xmlBlaster::client::protocol::I_XmlBlasterConnection::getLoginName().

bool org::xmlBlaster::util::dispatch::ConnectionsHandler::isLoggedIn (  )  [virtual]

Implements org::xmlBlaster::client::protocol::I_XmlBlasterConnection.

Definition at line 202 of file ConnectionsHandler.cpp.

References org::xmlBlaster::client::protocol::I_XmlBlasterConnection::isLoggedIn().

std::string org::xmlBlaster::util::dispatch::ConnectionsHandler::ping ( std::string &  qos  )  [virtual]

Implements org::xmlBlaster::client::protocol::I_XmlBlasterConnection.

Referenced by org::xmlBlaster::client::XmlBlasterAccess::ping().

SubscribeReturnQos org::xmlBlaster::util::dispatch::ConnectionsHandler::subscribe ( org::xmlBlaster::client::key::SubscribeKey key,
org::xmlBlaster::client::qos::SubscribeQos qos 
) [virtual]

Implements org::xmlBlaster::client::protocol::I_XmlBlasterConnection.

Definition at line 213 of file ConnectionsHandler.cpp.

References org::xmlBlaster::util::I_Log::call(), org::xmlBlaster::util::COMMUNICATION_NOCONNECTION, org::xmlBlaster::util::COMMUNICATION_NOCONNECTION_DEAD, org::xmlBlaster::util::dispatch::DEAD, org::xmlBlaster::util::I_Log::dump(), org::xmlBlaster::client::key::UnSubscribeKey::getOid(), org::xmlBlaster::util::I_Log::info(), isRecoverable(), putToQueue(), queueSubscribe(), org::xmlBlaster::util::dispatch::START, org::xmlBlaster::client::protocol::I_XmlBlasterConnection::subscribe(), org::xmlBlaster::util::MethodName::SUBSCRIBE, toPollingOrDead(), org::xmlBlaster::client::qos::UnSubscribeQos::toXml(), org::xmlBlaster::client::key::UnSubscribeKey::toXml(), and org::xmlBlaster::util::I_Log::warn().

Referenced by org::xmlBlaster::client::XmlBlasterAccess::subscribe().

vector< MessageUnit > org::xmlBlaster::util::dispatch::ConnectionsHandler::get ( org::xmlBlaster::client::key::GetKey key,
org::xmlBlaster::client::qos::GetQos qos 
) [virtual]

Implements org::xmlBlaster::client::protocol::I_XmlBlasterConnection.

Definition at line 242 of file ConnectionsHandler.cpp.

References org::xmlBlaster::util::I_Log::call(), org::xmlBlaster::util::COMMUNICATION_NOCONNECTION, org::xmlBlaster::util::COMMUNICATION_NOCONNECTION_DEAD, org::xmlBlaster::util::COMMUNICATION_NOCONNECTION_POLLING, org::xmlBlaster::util::dispatch::DEAD, org::xmlBlaster::util::I_Log::dump(), org::xmlBlaster::client::protocol::I_XmlBlasterConnection::get(), putToQueue(), org::xmlBlaster::util::dispatch::START, toPollingOrDead(), org::xmlBlaster::client::qos::UnSubscribeQos::toXml(), and org::xmlBlaster::client::key::UnSubscribeKey::toXml().

Referenced by org::xmlBlaster::client::XmlBlasterAccess::get().

vector< UnSubscribeReturnQos > org::xmlBlaster::util::dispatch::ConnectionsHandler::unSubscribe ( org::xmlBlaster::client::key::UnSubscribeKey key,
org::xmlBlaster::client::qos::UnSubscribeQos qos 
) [virtual]

Implements org::xmlBlaster::client::protocol::I_XmlBlasterConnection.

Definition at line 261 of file ConnectionsHandler.cpp.

References org::xmlBlaster::util::I_Log::call(), org::xmlBlaster::util::COMMUNICATION_NOCONNECTION, org::xmlBlaster::util::COMMUNICATION_NOCONNECTION_DEAD, org::xmlBlaster::util::COMMUNICATION_NOCONNECTION_POLLING, org::xmlBlaster::util::dispatch::DEAD, org::xmlBlaster::util::I_Log::dump(), putToQueue(), org::xmlBlaster::util::dispatch::START, toPollingOrDead(), org::xmlBlaster::client::qos::UnSubscribeQos::toXml(), org::xmlBlaster::client::key::UnSubscribeKey::toXml(), org::xmlBlaster::client::protocol::I_XmlBlasterConnection::unSubscribe(), and org::xmlBlaster::util::MethodName::UNSUBSCRIBE.

Referenced by org::xmlBlaster::client::XmlBlasterAccess::unSubscribe().

PublishReturnQos org::xmlBlaster::util::dispatch::ConnectionsHandler::publish ( org::xmlBlaster::util::MessageUnit msgUnit  )  [virtual]

Implements org::xmlBlaster::client::protocol::I_XmlBlasterConnection.

Definition at line 287 of file ConnectionsHandler.cpp.

References org::xmlBlaster::util::I_Log::call(), org::xmlBlaster::util::COMMUNICATION_NOCONNECTION, org::xmlBlaster::util::COMMUNICATION_NOCONNECTION_DEAD, org::xmlBlaster::util::dispatch::DEAD, org::xmlBlaster::util::I_Log::dump(), org::xmlBlaster::util::MessageUnit::getKey(), org::xmlBlaster::util::key::KeyData::getOid(), org::xmlBlaster::util::MessageUnit::getQos(), org::xmlBlaster::util::I_Log::info(), org::xmlBlaster::util::ReferenceHolder< T >::isNull(), isRecoverable(), org::xmlBlaster::client::protocol::I_XmlBlasterConnection::publish(), org::xmlBlaster::util::MethodName::PUBLISH, putToQueue(), queuePublish(), org::xmlBlaster::util::qos::QosData::setSender(), org::xmlBlaster::util::dispatch::START, toPollingOrDead(), org::xmlBlaster::util::MessageUnit::toXml(), and org::xmlBlaster::util::I_Log::warn().

Referenced by org::xmlBlaster::client::XmlBlasterAccess::publish().

void org::xmlBlaster::util::dispatch::ConnectionsHandler::publishOneway ( std::vector< org::xmlBlaster::util::MessageUnit > &  msgUnitArr  )  [virtual]

Implements org::xmlBlaster::client::protocol::I_XmlBlasterConnection.

std::vector<org::xmlBlaster::client::qos::PublishReturnQos> org::xmlBlaster::util::dispatch::ConnectionsHandler::publishArr ( std::vector< org::xmlBlaster::util::MessageUnit > &  msgUnitArr  )  [virtual]

Implements org::xmlBlaster::client::protocol::I_XmlBlasterConnection.

vector< EraseReturnQos > org::xmlBlaster::util::dispatch::ConnectionsHandler::erase ( org::xmlBlaster::client::key::EraseKey key,
org::xmlBlaster::client::qos::EraseQos qos 
) [virtual]

Implements org::xmlBlaster::client::protocol::I_XmlBlasterConnection.

Definition at line 386 of file ConnectionsHandler.cpp.

References org::xmlBlaster::util::I_Log::call(), org::xmlBlaster::util::COMMUNICATION_NOCONNECTION, org::xmlBlaster::util::COMMUNICATION_NOCONNECTION_DEAD, org::xmlBlaster::util::COMMUNICATION_NOCONNECTION_POLLING, org::xmlBlaster::util::dispatch::DEAD, org::xmlBlaster::util::I_Log::dump(), org::xmlBlaster::client::protocol::I_XmlBlasterConnection::erase(), org::xmlBlaster::util::MethodName::ERASE, putToQueue(), org::xmlBlaster::util::dispatch::START, toPollingOrDead(), org::xmlBlaster::client::qos::UnSubscribeQos::toXml(), and org::xmlBlaster::client::key::UnSubscribeKey::toXml().

Referenced by org::xmlBlaster::client::XmlBlasterAccess::erase().

I_PostSendListener * org::xmlBlaster::util::dispatch::ConnectionsHandler::registerPostSendListener ( org::xmlBlaster::util::dispatch::I_PostSendListener listener  ) 

Register a listener for to receive information about the progress of incoming data.

Only one listener is supported, the last call overwrites older calls.

Parameters:
listener Your listener, pass 0 to unregister.
Returns:
The previously registered listener or 0

Definition at line 630 of file ConnectionsHandler.cpp.

Referenced by org::xmlBlaster::client::XmlBlasterAccess::connect().

void org::xmlBlaster::util::dispatch::ConnectionsHandler::initFailsafe ( org::xmlBlaster::client::I_ConnectionProblems connectionProblems  ) 

Definition at line 405 of file ConnectionsHandler.cpp.

References org::xmlBlaster::util::I_Log::trace().

Referenced by org::xmlBlaster::client::XmlBlasterAccess::connect(), and org::xmlBlaster::client::XmlBlasterAccess::initFailsafe().

void org::xmlBlaster::util::dispatch::ConnectionsHandler::timeout ( void *  userData  )  [virtual]

You will be notified about the timeout through this method.

Parameters:
userData You get bounced back your userData which you passed with Timeout.addTimeoutListener()

Implements org::xmlBlaster::util::I_Timeout.

Definition at line 463 of file ConnectionsHandler.cpp.

References org::xmlBlaster::util::dispatch::ALIVE, org::xmlBlaster::util::I_Log::call(), org::xmlBlaster::client::protocol::I_XmlBlasterConnection::connect(), org::xmlBlaster::util::dispatch::DEAD, flushQueueUnlocked(), org::xmlBlaster::util::XmlBlasterException::getMessage(), getStatusString(), org::xmlBlaster::util::I_Log::info(), org::xmlBlaster::util::ReferenceHolder< T >::isNull(), org::xmlBlaster::util::lexical_cast(), org::xmlBlaster::client::protocol::I_XmlBlasterConnection::ping(), org::xmlBlaster::util::dispatch::POLLING, org::xmlBlaster::client::I_ConnectionProblems::reachedAlive(), org::xmlBlaster::client::I_ConnectionProblems::reachedDead(), startPinger(), toPollingOrDead(), org::xmlBlaster::util::XmlBlasterException::toString(), org::xmlBlaster::util::I_Log::trace(), and org::xmlBlaster::util::I_Log::warn().

bool org::xmlBlaster::util::dispatch::ConnectionsHandler::putToQueue (  ) 

On POLLING or if the client side queue contains entries further messages need to be put to the queue to maintain sequence.

Returns:
true if the message must be put to queue.

Definition at line 279 of file ConnectionsHandler.cpp.

References org::xmlBlaster::util::queue::I_Queue::getNumOfEntries(), and org::xmlBlaster::util::dispatch::POLLING.

Referenced by disconnect(), erase(), get(), publish(), subscribe(), and unSubscribe().

bool org::xmlBlaster::util::dispatch::ConnectionsHandler::isRecoverable ( org::xmlBlaster::util::XmlBlasterException reason  ) 

Definition at line 413 of file ConnectionsHandler.cpp.

References org::xmlBlaster::util::I_Log::call(), and org::xmlBlaster::util::XmlBlasterException::isCommunication().

Referenced by publish(), and subscribe().

long org::xmlBlaster::util::dispatch::ConnectionsHandler::flushQueue (  )  [virtual]

Flushes all entries in the queue, i.e.

the entries of the queue are sent to xmlBlaster. If the queue is empty or NULL, then 0 is returned. If the state is in POLLING or DEAD, then -1 is returned.. This method blocks until all entries in the queue have been sent.

Implements org::xmlBlaster::util::dispatch::I_ConnectionsHandler.

Definition at line 642 of file ConnectionsHandler.cpp.

References org::xmlBlaster::util::I_Log::call(), org::xmlBlaster::util::I_Log::error(), flushQueueUnlocked(), org::xmlBlaster::util::queue::QueueFactory::getFactory(), org::xmlBlaster::util::queue::I_Queue::getNumOfEntries(), org::xmlBlaster::util::queue::QueueFactory::getPlugin(), org::xmlBlaster::util::plugin::I_Plugin::getType(), org::xmlBlaster::util::plugin::I_Plugin::getVersion(), org::xmlBlaster::util::I_Log::info(), org::xmlBlaster::util::ReferenceHolder< T >::isNull(), org::xmlBlaster::util::lexical_cast(), and org::xmlBlaster::util::I_Log::trace().

Referenced by connect(), and org::xmlBlaster::client::XmlBlasterAccess::flushQueue().

I_Queue * org::xmlBlaster::util::dispatch::ConnectionsHandler::getQueue (  )  [virtual]

gets a pointer to the queue used.

Implements org::xmlBlaster::util::dispatch::I_ConnectionsHandler.

Definition at line 715 of file ConnectionsHandler.cpp.

References org::xmlBlaster::util::queue::QueueFactory::getFactory(), org::xmlBlaster::util::queue::I_Queue::getNumOfEntries(), org::xmlBlaster::util::queue::QueueFactory::getPlugin(), org::xmlBlaster::util::plugin::I_Plugin::getType(), org::xmlBlaster::util::plugin::I_Plugin::getVersion(), org::xmlBlaster::util::I_Log::info(), org::xmlBlaster::util::lexical_cast(), and org::xmlBlaster::util::I_Log::trace().

Referenced by org::xmlBlaster::client::XmlBlasterAccess::getQueue().

bool org::xmlBlaster::util::dispatch::ConnectionsHandler::isFailsafe (  )  [virtual]

Returns true if the connection is in failsafe mode.

You can activate this mode by invoking initFailsafe in org::xmlBlaster::client::XmlBlasterAccess.

Implements org::xmlBlaster::util::dispatch::I_ConnectionsHandler.

Definition at line 726 of file ConnectionsHandler.cpp.

References org::xmlBlaster::util::ReferenceHolder< T >::isNull().

Referenced by toPollingOrDead().

bool org::xmlBlaster::util::dispatch::ConnectionsHandler::isConnected (  )  [virtual]

Same as isAlive() || isPolling().

Returns:
true if connect() call was successful, even if we are polling

Implements org::xmlBlaster::util::dispatch::I_ConnectionsHandler.

Definition at line 781 of file ConnectionsHandler.cpp.

References org::xmlBlaster::util::dispatch::ALIVE, and org::xmlBlaster::util::dispatch::POLLING.

Referenced by connect(), and org::xmlBlaster::client::XmlBlasterAccess::isConnected().

bool org::xmlBlaster::util::dispatch::ConnectionsHandler::isAlive (  ) 

Returns:
true if connected with server and ready

Definition at line 786 of file ConnectionsHandler.cpp.

References org::xmlBlaster::util::dispatch::ALIVE.

Referenced by org::xmlBlaster::client::XmlBlasterAccess::isAlive().

bool org::xmlBlaster::util::dispatch::ConnectionsHandler::isPolling (  ) 

Returns:
true if polling for the server

Definition at line 791 of file ConnectionsHandler.cpp.

References org::xmlBlaster::util::dispatch::POLLING.

Referenced by org::xmlBlaster::client::XmlBlasterAccess::isPolling().

bool org::xmlBlaster::util::dispatch::ConnectionsHandler::isDead (  ) 

Returns:
true if we have given up

Definition at line 796 of file ConnectionsHandler.cpp.

References org::xmlBlaster::util::dispatch::DEAD.

Referenced by org::xmlBlaster::client::XmlBlasterAccess::isDead().

string org::xmlBlaster::util::dispatch::ConnectionsHandler::getStatusString (  ) 

Get connection status string for logging.

Returns:
"ALIVE" | "POLLING" | "DEAD"

Definition at line 771 of file ConnectionsHandler.cpp.

References org::xmlBlaster::util::dispatch::ALIVE, org::xmlBlaster::util::dispatch::DEAD, org::xmlBlaster::util::dispatch::POLLING, and org::xmlBlaster::util::dispatch::START.

Referenced by org::xmlBlaster::client::XmlBlasterAccess::getStatusString(), startPinger(), and timeout().

ConnectReturnQosRef org::xmlBlaster::util::dispatch::ConnectionsHandler::connectRaw ( org::xmlBlaster::util::qos::ConnectQosRef connectQos  )  [virtual]

Implements org::xmlBlaster::util::dispatch::I_ConnectionsHandler.

Definition at line 801 of file ConnectionsHandler.cpp.

References org::xmlBlaster::util::I_Log::call(), org::xmlBlaster::client::protocol::I_XmlBlasterConnection::connect(), and org::xmlBlaster::util::I_Log::info().

I_XmlBlasterConnection & org::xmlBlaster::util::dispatch::ConnectionsHandler::getConnection (  )  [virtual]

Implements org::xmlBlaster::util::dispatch::I_ConnectionsHandler.

Definition at line 812 of file ConnectionsHandler.cpp.

References org::xmlBlaster::util::INTERNAL_ILLEGALARGUMENT.

ConnectReturnQosRef org::xmlBlaster::util::dispatch::ConnectionsHandler::getConnectReturnQos (  )  [virtual]

Implements org::xmlBlaster::util::dispatch::I_ConnectionsHandler.

Definition at line 821 of file ConnectionsHandler.cpp.

ConnectQosRef org::xmlBlaster::util::dispatch::ConnectionsHandler::getConnectQos (  )  [virtual]

Implements org::xmlBlaster::util::dispatch::I_ConnectionsHandler.

Definition at line 826 of file ConnectionsHandler.cpp.

long org::xmlBlaster::util::dispatch::ConnectionsHandler::flushQueueUnlocked ( org::xmlBlaster::util::queue::I_Queue queueToFlush,
bool  doRemove = true 
) [protected]

only used inside the class to avoid deadlock

Definition at line 666 of file ConnectionsHandler.cpp.

References org::xmlBlaster::util::dispatch::ALIVE, org::xmlBlaster::util::I_Log::call(), org::xmlBlaster::util::queue::I_Queue::empty(), org::xmlBlaster::util::queue::I_Queue::getNumOfEntries(), org::xmlBlaster::util::plugin::I_Plugin::getType(), org::xmlBlaster::util::plugin::I_Plugin::getVersion(), org::xmlBlaster::util::I_Log::info(), org::xmlBlaster::util::XmlBlasterException::isCommunication(), org::xmlBlaster::util::lexical_cast(), org::xmlBlaster::util::queue::I_Queue::peekWithSamePriority(), org::xmlBlaster::util::dispatch::I_PostSendListener::postSend(), org::xmlBlaster::util::queue::I_Queue::randomRemove(), org::xmlBlaster::util::queue::MsgQueueEntry::send(), org::xmlBlaster::util::queue::MsgQueueEntry::setSender(), toPollingOrDead(), org::xmlBlaster::util::I_Log::trace(), and org::xmlBlaster::util::I_Log::warn().

Referenced by flushQueue(), and timeout().

PublishReturnQos org::xmlBlaster::util::dispatch::ConnectionsHandler::queuePublish ( org::xmlBlaster::util::MessageUnit msgUnit  )  [protected]

Definition at line 576 of file ConnectionsHandler.cpp.

References org::xmlBlaster::util::I_Log::call(), org::xmlBlaster::client::qos::PublishReturnQos::getData(), org::xmlBlaster::util::queue::QueueFactory::getFactory(), org::xmlBlaster::util::MessageUnit::getKey(), org::xmlBlaster::util::key::KeyData::getOid(), org::xmlBlaster::util::queue::QueueFactory::getPlugin(), org::xmlBlaster::util::qos::QosData::getPriority(), org::xmlBlaster::util::MessageUnit::getQos(), org::xmlBlaster::util::Constants::INFO_QUEUED, org::xmlBlaster::util::INTERNAL_PUBLISH, org::xmlBlaster::util::ReferenceHolder< T >::isNull(), org::xmlBlaster::util::queue::I_Queue::put(), org::xmlBlaster::client::qos::PublishReturnQos::setKeyOid(), org::xmlBlaster::client::qos::PublishReturnQos::setState(), org::xmlBlaster::util::qos::StatusQosData::setStateInfo(), org::xmlBlaster::util::Constants::STATE_OK, and org::xmlBlaster::util::I_Log::trace().

Referenced by publish().

SubscribeReturnQos org::xmlBlaster::util::dispatch::ConnectionsHandler::queueSubscribe ( org::xmlBlaster::client::key::SubscribeKey key,
org::xmlBlaster::client::qos::SubscribeQos qos 
) [protected]

Definition at line 550 of file ConnectionsHandler.cpp.

References org::xmlBlaster::client::qos::SubscribeQos::generateSubscriptionId(), org::xmlBlaster::client::qos::UnSubscribeQos::getData(), org::xmlBlaster::client::qos::SubscribeReturnQos::getData(), org::xmlBlaster::util::queue::QueueFactory::getFactory(), org::xmlBlaster::client::key::UnSubscribeKey::getOid(), org::xmlBlaster::util::queue::QueueFactory::getPlugin(), org::xmlBlaster::util::qos::QosData::getPriority(), org::xmlBlaster::util::Global::getSessionName(), org::xmlBlaster::util::Constants::INFO_QUEUED, org::xmlBlaster::util::INTERNAL_SUBSCRIBE, org::xmlBlaster::util::ReferenceHolder< T >::isNull(), org::xmlBlaster::util::queue::I_Queue::put(), org::xmlBlaster::util::qos::StatusQosData::setState(), org::xmlBlaster::util::qos::StatusQosData::setStateInfo(), org::xmlBlaster::client::qos::SubscribeQos::setSubscriptionId(), org::xmlBlaster::util::qos::StatusQosData::setSubscriptionId(), org::xmlBlaster::util::Constants::STATE_OK, org::xmlBlaster::util::I_Log::trace(), and org::xmlBlaster::util::I_Log::warn().

Referenced by subscribe().

ConnectReturnQosRef & org::xmlBlaster::util::dispatch::ConnectionsHandler::queueConnect (  )  [protected]

Definition at line 598 of file ConnectionsHandler.cpp.

References org::xmlBlaster::util::I_Log::call(), org::xmlBlaster::util::queue::QueueFactory::getFactory(), org::xmlBlaster::util::queue::QueueFactory::getPlugin(), org::xmlBlaster::util::I_Log::info(), org::xmlBlaster::util::dispatch::POLLING, org::xmlBlaster::client::I_ConnectionProblems::reachedPolling(), startPinger(), org::xmlBlaster::util::I_Log::trace(), and org::xmlBlaster::util::USER_CONNECT.

Referenced by connect().

bool org::xmlBlaster::util::dispatch::ConnectionsHandler::startPinger ( bool  withInitialPing  )  [protected]

Parameters:
withInitialPing If true do an immediate ping without delay

Definition at line 733 of file ConnectionsHandler.cpp.

References org::xmlBlaster::util::Timeout::addOrRefreshTimeoutListener(), org::xmlBlaster::util::dispatch::ALIVE, org::xmlBlaster::util::I_Log::call(), org::xmlBlaster::util::Global::getPingTimer(), getStatusString(), org::xmlBlaster::util::ReferenceHolder< T >::isNull(), and org::xmlBlaster::util::I_Log::trace().

Referenced by connect(), queueConnect(), timeout(), and toPollingOrDead().

void org::xmlBlaster::util::dispatch::ConnectionsHandler::toPollingOrDead ( org::xmlBlaster::util::XmlBlasterException reason  )  [protected]

Going to polling status in case we are in failsafe mode or to DEAD if we are not in failsafe mode.

Definition at line 425 of file ConnectionsHandler.cpp.

References org::xmlBlaster::util::I_Log::call(), org::xmlBlaster::util::dispatch::DEAD, org::xmlBlaster::util::XmlBlasterException::getMessage(), org::xmlBlaster::util::I_Log::info(), org::xmlBlaster::util::XmlBlasterException::isCommunication(), isFailsafe(), org::xmlBlaster::util::dispatch::POLLING, org::xmlBlaster::client::I_ConnectionProblems::reachedDead(), org::xmlBlaster::client::I_ConnectionProblems::reachedPolling(), org::xmlBlaster::client::protocol::I_XmlBlasterConnection::shutdown(), and startPinger().

Referenced by erase(), flushQueueUnlocked(), get(), publish(), subscribe(), timeout(), and unSubscribe().


The documentation for this class was generated from the following files: