37 using namespace rsb::transport;
47 Listener::Listener(
const vector<InPushConnectorPtr>& connectors,
51 d->logger = rsc::logging::Logger::getLogger(
"rsb.Listener");
64 d->configurator.reset(
66 d->configurator->setErrorStrategy(
getConfig().getErrorStrategy());
67 for (vector<InPushConnectorPtr>::const_iterator it = connectors.begin(); it
68 != connectors.end(); ++it) {
69 d->configurator->addConnector(*it);
72 d->configurator->activate();
76 d->configurator->handlerAdded(h, wait);
80 d->configurator->handlerRemoved(h, wait);
84 d->configurator->filterAdded(filter);
88 d->configurator->filterRemoved(filter);
boost::shared_ptr< PushInRouteConfigurator > PushInRouteConfiguratorPtr
Objects of this class participate in the exchange of notifications on one channel of the bus...
void removeHandler(HandlerPtr h, bool wait=true)
Removes a Handler instance to process newly received events.
boost::shared_ptr< Filter > FilterPtr
void removeFilter(filter::FilterPtr filter)
Removes a previously installed filter if it is present by pointer comparison some time after this cal...
ParticipantConfig getConfig() const
Returns a copy of the participant's configuration.
virtual void addHandler(HandlerPtr h, bool wait=true)
Adds a rsb::Handler to the Listener.
boost::scoped_ptr< Impl > d
boost::shared_ptr< Handler > HandlerPtr
This specialization of InRouteConfigurator creates and maintains an event receiving setup in which rs...
rsc::logging::LoggerPtr logger
std::string getClassName() const
A class describing the configuration of Participant instances.
Scope is a descriptor for a hierarchical channel of the unified bus.
void addFilter(filter::FilterPtr filter)
Adds a filter that will be applied after some time (but not immediately after this call) for all hand...
void initialize(const std::vector< transport::InPushConnectorPtr > &connectors, const Scope &scope, const ParticipantConfig &config)
eventprocessing::PushInRouteConfiguratorPtr configurator