RSB
0.15.1
|
Instances of this class receive events from a bus that is accessed via a socket connection. More...
#include <InPullConnector.h>
Public Member Functions | |
InPullConnector (FactoryPtr factory, ConverterSelectionStrategyPtr converters, const std::string &host, unsigned int port, Server server, bool tcpnodelay) | |
Creates a connector for the given combination of host, port and server. More... | |
virtual | ~InPullConnector () |
virtual void | setScope (const Scope &scope) |
void | handle (rsb::EventPtr event) |
Handle event. More... | |
EventPtr | raiseEvent (bool block) |
virtual const std::string | getTransportURL () const |
Public Member Functions inherited from rsb::transport::socket::InConnector | |
InConnector (FactoryPtr factory, ConverterSelectionStrategyPtr converters, const std::string &host, unsigned int port, Server server, bool tcpnodelay) | |
Creates a connector for the given combination of host, port and server. More... | |
virtual | ~InConnector () |
virtual void | activate () |
virtual void | deactivate () |
void | setQualityOfServiceSpecs (const QualityOfServiceSpec &specs) |
Requests new QoS settings for publishing events. More... | |
Public Member Functions inherited from rsb::transport::socket::ConnectorBase | |
ConnectorBase (FactoryPtr factory, ConverterSelectionStrategyPtr converters, const std::string &host, unsigned int port, Server server, bool tcpnodelay) | |
Creates a connector for the given combination of host, port and server. More... | |
virtual | ~ConnectorBase () |
virtual Scope | getScope () const |
Public Member Functions inherited from rsb::transport::Connector | |
virtual | ~Connector () |
Public Member Functions inherited from rsb::filter::FilterObserver | |
FilterObserver () | |
virtual | ~FilterObserver () |
virtual void | notify (Filter *filter, const FilterAction::Types &at) |
virtual void | notify (ScopeFilter *filter, const FilterAction::Types &at) |
Public Member Functions inherited from rsb::eventprocessing::Handler | |
virtual | ~Handler () |
Static Public Member Functions | |
static rsb::transport::InPullConnector * | create (const rsc::runtime::Properties &args) |
Private Attributes | |
rsc::logging::LoggerPtr | logger |
rsc::threading::SynchronizedQueue< EventPtr > | queue |
Additional Inherited Members | |
Public Types inherited from rsb::transport::ConverterSelectingConnector< std::string > | |
typedef converter::Converter< std::string >::Ptr | ConverterPtr |
typedef converter::ConverterSelectionStrategy< std::string >::Ptr | ConverterSelectionStrategyPtr |
Public Types inherited from rsb::transport::InConnector | |
typedef boost::shared_ptr< InConnector > | Ptr |
Public Types inherited from rsb::transport::InPullConnector | |
typedef boost::shared_ptr< InPullConnector > | Ptr |
Protected Member Functions inherited from rsb::transport::socket::ConnectorBase | |
BusPtr | getBus () |
Return the Bus object through which this connector is connected to a socket-based bus. More... | |
Protected Member Functions inherited from rsb::transport::ConverterSelectingConnector< std::string > | |
ConverterSelectingConnector (ConverterSelectionStrategyPtr converters) | |
ConverterPtr | getConverter (const std::string &key) const |
Try to find a suitable converter for key . More... | |
Protected Attributes inherited from rsb::transport::socket::ConnectorBase | |
volatile bool | active |
Instances of this class receive events from a bus that is accessed via a socket connection.
The receiving and dispatching of events is done in push mode: each instance has a BusConnection which pushes appropriate events into the instance. The connector deserializes event payloads and pushes the events into handlers (usually objects which implement EventReceivingStrategy).
Definition at line 65 of file InPullConnector.h.
rsb::transport::socket::InPullConnector::InPullConnector | ( | FactoryPtr | factory, |
ConverterSelectionStrategyPtr | converters, | ||
const std::string & | host, | ||
unsigned int | port, | ||
Server | server, | ||
bool | tcpnodelay | ||
) |
Creates a connector for the given combination of host, port and server.
converters | A strategy for converter selection within the newly created connector. |
host | The host of the socket through which the newly created connector will operate. |
port | The port of the socket through which the newly created connector will operate. |
server | Controls whether the newly created connector should create a listening socket and wait for connections (value SERVER_YES), connect to an existing listen socket (value SERVER_NO) or try to automatically determine whether there already is a listening socket and create one only if necessary (value SERVER_AUTO). |
tcpnodelay | Controls whether the TCP_NODELAY socket option should be set for the socket implementing the communication of the newly created connector. Setting this option trades decreased latency for decreased throughput. |
Definition at line 57 of file InPullConnector.cpp.
|
virtual |
Reimplemented from rsb::transport::InPullConnector.
Definition at line 68 of file InPullConnector.cpp.
|
static |
|
virtual |
Reimplemented from rsb::transport::socket::ConnectorBase.
Definition at line 112 of file InPullConnector.cpp.
References rsb::transport::socket::ConnectorBase::getTransportURL().
|
virtual |
Handle event.
event | The event that should be handled. |
Implements rsb::transport::socket::InConnector.
Definition at line 75 of file InPullConnector.cpp.
References rsb::transport::socket::ConnectorBase::active, rsb::transport::ConverterSelectingConnector< std::string >::getConverter(), and queue.
|
virtual |
Implements rsb::transport::InPullConnector.
Definition at line 100 of file InPullConnector.cpp.
References queue.
|
virtual |
Reimplemented from rsb::transport::socket::ConnectorBase.
Definition at line 71 of file InPullConnector.cpp.
References rsb::transport::socket::ConnectorBase::setScope().
|
private |
Definition at line 91 of file InPullConnector.h.
|
private |
Definition at line 93 of file InPullConnector.h.
Referenced by handle(), and raiseEvent().