30 #include "../../MetaData.h"
34 using namespace boost;
36 using namespace rsc::logging;
37 using namespace rsc::runtime;
43 transport::InPushConnector* InPushConnector::create(
const Properties& args) {
44 LoggerPtr logger = Logger::getLogger(
"rsb.transport.socket.InPushConnector");
45 RSCDEBUG(logger,
"Creating InPushConnector with properties " << args);
47 return new InPushConnector(args.get<ConverterSelectionStrategyPtr>(
"converters"),
51 args.getAs<
bool> (
"tcpnodelay",
false));
60 InConnector(converters, host, port, server, tcpnodelay),
61 logger(Logger::getLogger(
"rsb.transport.socket.InPushConnector")) {
69 throw std::runtime_error(
"Cannot handle events when not active");
76 event->mutableMetaData().setReceiveTime();
80 boost::shared_ptr<string> wireData = static_pointer_cast<
string>(
event->getData());
81 string wireSchema =
event->getMetaData().getUserInfo(
"rsb.wire-schema");
85 =
getConverter(wireSchema)->deserialize(wireSchema, *wireData);
86 event->setData(d.second);
87 event->setType(d.first);
91 for (HandlerList::iterator it = this->
handlers.begin(); it