31 namespace OmniEvents {
38 const PortableServer::ObjectId& oid,
39 PortableServer::POA_ptr poa
48 if(!oldest || dynamic_cast<ProxyPullSupplier_i*>(*i)->
timestamp()<age)
53 DB(5,
"Evicting oldest ProxyPullSupplier to make space for a new one")
64 PortableServer::POA_ptr parentPoa,
76 DB(20,
"~ProxyPullSupplierManager()")
81 CosEventChannelAdmin::ProxyPullSupplier_ptr
84 return createNarrowedReference<CosEventChannelAdmin::ProxyPullSupplier>(
86 CosEventChannelAdmin::_tc_ProxyPullSupplier->id()
97 CosEventChannelAdmin::ProxyPullSupplier_var ppsv =pps->_this();
111 CosEventComm::PullConsumer_ptr pullConsumer
115 throw CosEventChannelAdmin::AlreadyConnected();
118 if(!CORBA::is_nil(pullConsumer))
119 _target=CosEventComm::PullConsumer::_duplicate(pullConsumer);
130 DB(5,
"ProxyPullSupplier_i::disconnect_pull_supplier()");
132 eraseKey(
"ConsumerAdmin/ProxyPullSupplier");
136 throw CORBA::OBJECT_NOT_EXIST(
141 else if(!CORBA::is_nil(
_target))
143 CORBA::Request_var req=
_target->_request(
"disconnect_pull_consumer");
144 _target=CosEventComm::PullConsumer::_nil();
145 req->send_deferred();
153 throw CosEventComm::Disconnected();
158 throw CORBA::TRANSIENT(
167 throw CosEventComm::Disconnected();
177 return new CORBA::Any();
184 PortableServer::POA_ptr poa,
189 _target(CosEventComm::PullConsumer::_nil()),
198 DB(20,
"~ProxyPullSupplier_i()")
206 CosEventComm::PullConsumer_var pullConsumer =
207 string_to_<CosEventComm::PullConsumer>(node.
attrString(
"IOR").c_str());