#include <ProxyPullSupplier.h>
Inheritance diagram for OmniEvents::ProxyPullSupplier_i:
Public Member Functions | |
void | connect_pull_consumer (CosEventComm::PullConsumer_ptr pullConsumer) |
void | disconnect_pull_supplier () |
CORBA::Any * | pull () |
CORBA::Any * | try_pull (CORBA::Boolean &has_event) |
ProxyPullSupplier_i (PortableServer::POA_ptr poa, EventQueue &q) | |
~ProxyPullSupplier_i () | |
void | reincarnate (const string &oid, const PersistNode &node) |
Re-create a servant from information saved in the log file. | |
void | output (ostream &os) |
Save this object's state to a stream. | |
unsigned long | timestamp () const |
Private Member Functions | |
void | touch () |
Update the _timestamp to the current moment. | |
Private Attributes | |
CosEventComm::PullConsumer_var | _target |
bool | _connected |
Can't use _target to keep track of whether this object is connected, because it is legal to connect with a nil target. | |
unsigned long | _timestamp |
Keep track of when this proxy was last contacted. |
Does not properly implement the blocking pull() method - to do so would need us to create and park a thread for each waiting pull() method. Instead pull() throws TRANSIENT if the event queue is empty.
Definition at line 84 of file ProxyPullSupplier.h.
|
Definition at line 183 of file ProxyPullSupplier.cc. References touch(). |
|
Definition at line 196 of file ProxyPullSupplier.cc. References DB. |
|
Definition at line 110 of file ProxyPullSupplier.cc. References _connected, OmniEvents::Proxy::_req, _target, OmniEvents::omniEventsLog::exists(), OmniEvents::WriteLock::os, output(), and touch(). Referenced by reincarnate(). |
|
Definition at line 128 of file ProxyPullSupplier.cc. References _connected, _target, DB, OmniEvents::Servant::deactivateObject(), OmniEvents::Orb::deferredRequest(), OmniEvents::Proxy::eraseKey(), IFELSE_OMNIORB4, OmniEvents::Orb::inst(), and touch(). Referenced by OmniEvents::ProxyPullSupplierManager::disconnect(), and OmniEvents::ProxyPullSupplierManager::incarnate(). |
|
Save this object's state to a stream.
Implements OmniEvents::Proxy. Definition at line 213 of file ProxyPullSupplier.cc. References _target, and OmniEvents::Proxy::basicOutput(). Referenced by connect_pull_consumer(). |
|
Definition at line 150 of file ProxyPullSupplier.cc. References _connected, IFELSE_OMNIORB4, OmniEvents::EventQueue::Reader::moreEvents(), OmniEvents::EventQueue::Reader::nextEvent(), and touch(). |
|
Re-create a servant from information saved in the log file.
Implements OmniEvents::Proxy. Definition at line 201 of file ProxyPullSupplier.cc. References OmniEvents::Servant::activateObjectWithId(), OmniEvents::PersistNode::attrString(), and connect_pull_consumer(). |
|
Definition at line 99 of file ProxyPullSupplier.h. References _timestamp. Referenced by OmniEvents::ProxyPullSupplierManager::incarnate(). |
|
Update the _timestamp to the current moment.
Definition at line 218 of file ProxyPullSupplier.cc. References _timestamp. Referenced by connect_pull_consumer(), disconnect_pull_supplier(), ProxyPullSupplier_i(), pull(), and try_pull(). |
|
Definition at line 164 of file ProxyPullSupplier.cc. References _connected, OmniEvents::EventQueue::Reader::moreEvents(), OmniEvents::EventQueue::Reader::nextEvent(), and touch(). |
|
Can't use _target to keep track of whether this object is connected, because it is legal to connect with a nil target. Use this bool instead. Definition at line 106 of file ProxyPullSupplier.h. Referenced by connect_pull_consumer(), disconnect_pull_supplier(), pull(), and try_pull(). |
|
Definition at line 101 of file ProxyPullSupplier.h. Referenced by connect_pull_consumer(), disconnect_pull_supplier(), and output(). |
|
Keep track of when this proxy was last contacted.
Definition at line 108 of file ProxyPullSupplier.h. Referenced by timestamp(), and touch(). |