32 #define MILLION 1000000
33 #define BILLION 1000000000
35 namespace OmniEvents {
37 CosEventChannelAdmin::ProxyPushConsumer_ptr
44 CosEventChannelAdmin::ProxyPullConsumer_ptr
55 PortableServer::POA_ptr poa
85 DB(20,
"~SupplierAdmin_i()")
96 for(list<CORBA::Any*>::iterator i=
_queue.begin(); i!=
_queue.end(); ++i)
109 if(0==_nextPull.first)
111 _pullConsumer->triggerRequest();
115 pair<unsigned long,unsigned long> now;
116 omni_thread::get_time(&(now.first),&(now.second));
119 _pullConsumer->triggerRequest();
121 CORBA::ULong p =_channel.pullRetryPeriod_ms();
123 _nextPull.second += (p%1000)*
MILLION;
124 _nextPull.first += p/1000 + _nextPull.second/
BILLION;
126 }
while(now>=_nextPull);
130 _pushConsumer->trigger();
150 if(pushcNode && !pushcNode->
_child.empty())
158 if(pullcNode && !pullcNode->
_child.empty())