RSB  0.7.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
rsb::spread::InPushConnector Class Reference

This class implements push-style event receiving for Spread-based transport. More...

#include <InPushConnector.h>

Inheritance diagram for rsb::spread::InPushConnector:
Inheritance graph
Collaboration diagram for rsb::spread::InPushConnector:
Collaboration graph

Public Member Functions

 InPushConnector (converter::ConverterSelectionStrategy< std::string >::Ptr converters, const std::string &host=defaultHost(), unsigned int port=defaultPort())
virtual ~InPushConnector ()
std::string getClassName () const
void printContents (std::ostream &stream) const
void setScope (const Scope &scope)
 Sets the scope this connector will receive events from.
void activate ()
 Activates the connector.
void deactivate ()
void setQualityOfServiceSpecs (const QualityOfServiceSpec &specs)
 Requests new QoS settings for publishing events.
void addHandler (eventprocessing::HandlerPtr handler)
void removeHandler (eventprocessing::HandlerPtr handler)

Static Public Member Functions

static transport::InPushConnectorcreate (const rsc::runtime::Properties &args)

Private Attributes

rsc::logging::LoggerPtr logger
bool active
SpreadConnectorPtr connector
boost::shared_ptr< ScopeactivationScope
rsc::threading::TaskExecutorPtr exec
boost::shared_ptr< ReceiverTaskrec

Friends

class ReceiverTask

Additional Inherited Members

- Public Types inherited from rsb::transport::InPushConnector
typedef boost::shared_ptr
< InPushConnector
Ptr
- Public Types inherited from rsb::transport::ConverterSelectingConnector< std::string >
typedef converter::Converter
< std::string >::Ptr 
ConverterPtr
typedef
converter::ConverterSelectionStrategy
< std::string >::Ptr 
ConverterSelectionStrategyPtr
- Protected Types inherited from rsb::transport::InPushConnector
typedef std::list
< eventprocessing::HandlerPtr
HandlerList
- 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 .
- Protected Attributes inherited from rsb::transport::InPushConnector
HandlerList handlers

Detailed Description

This class implements push-style event receiving for Spread-based transport.

Author
jmoringe

Definition at line 54 of file InPushConnector.h.

Constructor & Destructor Documentation

rsb::spread::InPushConnector::InPushConnector ( converter::ConverterSelectionStrategy< std::string >::Ptr  converters,
const std::string &  host = defaultHost(),
unsigned int  port = defaultPort() 
)
rsb::spread::InPushConnector::~InPushConnector ( )
virtual

Reimplemented from rsb::transport::InPushConnector.

Definition at line 66 of file InPushConnector.cpp.

References rsb::transport::socket::ConnectorBase::active, and rsb::transport::socket::InConnector::deactivate().

Here is the call graph for this function:

Member Function Documentation

void rsb::spread::InPushConnector::activate ( )
virtual

Activates the connector.

Settings made between construction and activation via this method must be applied on a call to this method.

Implements rsb::transport::Connector.

Definition at line 81 of file InPushConnector.cpp.

References rsb::transport::socket::ConnectorBase::active, and rsb::transport::socket::InConnector::setScope().

Here is the call graph for this function:

void rsb::spread::InPushConnector::addHandler ( eventprocessing::HandlerPtr  handler)
virtual

Reimplemented from rsb::transport::InPushConnector.

Definition at line 116 of file InPushConnector.cpp.

References rsb::transport::InPushConnector::addHandler(), and rsb::transport::InPushConnector::handlers.

Here is the call graph for this function:

static transport::InPushConnector* rsb::spread::InPushConnector::create ( const rsc::runtime::Properties &  args)
static
void rsb::spread::InPushConnector::deactivate ( )
virtual
string rsb::spread::InPushConnector::getClassName ( ) const

Definition at line 72 of file InPushConnector.cpp.

void rsb::spread::InPushConnector::printContents ( std::ostream &  stream) const

Definition at line 76 of file InPushConnector.cpp.

References rsb::transport::socket::ConnectorBase::active.

void rsb::spread::InPushConnector::removeHandler ( eventprocessing::HandlerPtr  handler)
virtual

Reimplemented from rsb::transport::InPushConnector.

Definition at line 122 of file InPushConnector.cpp.

References rsb::transport::InPushConnector::addHandler().

Here is the call graph for this function:

void rsb::spread::InPushConnector::setQualityOfServiceSpecs ( const QualityOfServiceSpec specs)
virtual

Requests new QoS settings for publishing events.

Does not influence the receiving part.

Parameters
specsQoS specification
Exceptions
UnsupportedQualityOfServiceExceptionrequirements cannot be met

Implements rsb::transport::Connector.

Definition at line 107 of file InPushConnector.cpp.

References rsb::QualityOfServiceSpec::getReliability(), and rsb::QualityOfServiceSpec::RELIABLE.

Here is the call graph for this function:

void rsb::spread::InPushConnector::setScope ( const Scope scope)
virtual

Sets the scope this connector will receive events from.

Parameters
scopescope of the connector

Implements rsb::transport::InConnector.

Definition at line 127 of file InPushConnector.cpp.

References rsb::transport::socket::ConnectorBase::active.

Friends And Related Function Documentation

friend class ReceiverTask
friend

Definition at line 56 of file InPushConnector.h.

Member Data Documentation

boost::shared_ptr<Scope> rsb::spread::InPushConnector::activationScope
private

Definition at line 83 of file InPushConnector.h.

bool rsb::spread::InPushConnector::active
private

Definition at line 80 of file InPushConnector.h.

SpreadConnectorPtr rsb::spread::InPushConnector::connector
private

Definition at line 82 of file InPushConnector.h.

rsc::threading::TaskExecutorPtr rsb::spread::InPushConnector::exec
private

Definition at line 85 of file InPushConnector.h.

rsc::logging::LoggerPtr rsb::spread::InPushConnector::logger
private

Definition at line 78 of file InPushConnector.h.

boost::shared_ptr<ReceiverTask> rsb::spread::InPushConnector::rec
private

Definition at line 86 of file InPushConnector.h.


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