TAO_CosNotification
2.2.2
|
Wrapper for the StructuredPushConsumer that connect to the EventChannel. More...
#include <StructuredPushConsumer.h>
Public Member Functions | |
TAO_Notify_StructuredPushConsumer (TAO_Notify_ProxySupplier *proxy) | |
Constructor. More... | |
void | init (CosNotifyComm::StructuredPushConsumer_ptr push_consumer) |
Init the Consumer. More... | |
virtual | ~TAO_Notify_StructuredPushConsumer () |
Destructor. More... | |
virtual void | push (const CORBA::Any &event) |
virtual void | push (const CosNotification::StructuredEvent &event) |
Push <event> to this consumer. More... | |
virtual void | push (const CosNotification::EventBatch &event) |
Push a batch of events to this consumer. More... | |
virtual ACE_CString | get_ior (void) const |
Retrieve the ior of this peer. More... | |
virtual void | reconnect_from_consumer (TAO_Notify_Consumer *old_consumer) |
![]() | |
TAO_Notify_Consumer (TAO_Notify_ProxySupplier *proxy) | |
Constructor. More... | |
virtual | ~TAO_Notify_Consumer () |
Destructor. More... | |
CORBA::ULong | _incr_refcnt (void) |
This method sigantures deliberately match the RefCounting methods required for ESF Proxy. More... | |
CORBA::ULong | _decr_refcnt (void) |
TAO_Notify_ProxySupplier * | proxy_supplier (void) |
Access Specific Proxy. More... | |
virtual TAO_Notify_Proxy * | proxy (void) |
Access Base Proxy. More... | |
void | deliver (TAO_Notify_Method_Request_Event *request) |
Dispatch Event to consumer. More... | |
DispatchStatus | dispatch_batch (const CosNotification::EventBatch &batch) |
Dispatch the batch of events to the attached consumer. More... | |
void | dispatch_pending (void) |
Dispatch the pending events. More... | |
CORBA::Boolean | is_suspended (void) |
Is the connection suspended? More... | |
void | suspend (void) |
Suspend Connection. More... | |
void | resume (void) |
Resume Connection. More... | |
virtual void | shutdown (void) |
Shutdown the consumer. More... | |
virtual void | qos_changed (const TAO_Notify_QoSProperties &qos_properties) |
Override, Peer::qos_changed. More... | |
void | assume_pending_events (TAO_Notify_Consumer &rhs) |
bool | is_alive (bool allow_nil_consumer) |
Is the connected consumer still around? More... | |
size_t | pending_count (void) |
![]() | |
TAO_Notify_Peer (void) | |
Constructor. More... | |
virtual | ~TAO_Notify_Peer () |
Destructor. More... | |
CORBA::ULong | _incr_refcnt (void) |
CORBA::ULong | _decr_refcnt (void) |
virtual void | dispatch_updates (const TAO_Notify_EventTypeSeq &added, const TAO_Notify_EventTypeSeq &removed) |
void | handle_dispatch_exception (void) |
Handle dispatch exceptions. More... | |
Protected Member Functions | |
virtual CORBA::Object_ptr | get_consumer (void) |
![]() | |
DispatchStatus | dispatch_request (TAO_Notify_Method_Request_Event *request) |
virtual bool | dispatch_from_queue (Request_Queue &requests, ACE_Guard< TAO_SYNCH_MUTEX > &ace_mon) |
Attempt to dispatch event from a queue. More... | |
void | enqueue_request (TAO_Notify_Method_Request_Event *request) |
virtual bool | enqueue_if_necessary (TAO_Notify_Method_Request_Event *request) |
virtual void | dispatch_updates_i (const CosNotification::EventTypeSeq &added, const CosNotification::EventTypeSeq &removed) |
Implementation of Peer specific dispatch_updates. More... | |
TAO_SYNCH_MUTEX * | proxy_lock (void) |
Get the shared Proxy Lock. More... | |
virtual int | handle_timeout (const ACE_Time_Value ¤t_time, const void *act=0) |
void | schedule_timer (bool is_error=false) |
Schedule timer. More... | |
void | cancel_timer (void) |
Cancel timer. More... | |
Request_Queue & | pending_events () |
= Protected Data Members More... | |
Protected Attributes | |
CosNotifyComm::StructuredPushConsumer_var | push_consumer_ |
The Consumer. More... | |
![]() | |
TAO_Notify_ProxySupplier * | proxy_ |
The Proxy that we associate with. More... | |
CORBA::Boolean | is_suspended_ |
Suspended Flag. More... | |
CosNotifyComm::NotifyPublish_var | publish_ |
Interface that accepts offer_changes. More... | |
bool | have_not_yet_verified_publish_ |
const TAO_Notify_Property_Time & | pacing_ |
The Pacing Interval. More... | |
TAO_Notify_Property_Long | max_batch_size_ |
Max. batch size. More... | |
long | timer_id_ |
Timer Id. More... | |
TAO_Notify_Timer::Ptr | timer_ |
The Timer Manager that we use. More... | |
ACE_Atomic_Op< TAO_SYNCH_MUTEX, ACE_Time_Value > | last_ping_ |
Private Member Functions | |
virtual void | release (void) |
Release. More... | |
Private Attributes | |
int | connection_valid |
Connection valid flag. More... | |
Additional Inherited Members | |
![]() | |
enum | DispatchStatus { DISPATCH_SUCCESS, DISPATCH_RETRY, DISPATCH_DISCARD, DISPATCH_FAIL, DISPATCH_FAIL_TIMEOUT } |
Status returned from dispatch attempts. More... | |
typedef TAO_Notify_Refcountable_Guard_T < TAO_Notify_Consumer > | Ptr |
![]() | |
typedef ACE_Unbounded_Queue < TAO_Notify_Method_Request_Event_Queueable * > | Request_Queue |
Wrapper for the StructuredPushConsumer that connect to the EventChannel.
TAO_Notify_StructuredPushConsumer::TAO_Notify_StructuredPushConsumer | ( | TAO_Notify_ProxySupplier * | proxy | ) |
Constructor.
|
virtual |
Destructor.
|
protectedvirtual |
This method is called by the is_alive() method. It should provide the connected consumer or nil if there is none.
Implements TAO_Notify_Consumer.
|
virtual |
Retrieve the ior of this peer.
Implements TAO_Notify_Peer.
void TAO_Notify_StructuredPushConsumer::init | ( | CosNotifyComm::StructuredPushConsumer_ptr | push_consumer | ) |
Init the Consumer.
|
virtual |
Push <event> to this consumer.
Implements TAO_Notify_Consumer.
|
virtual |
Push <event> to this consumer.
Implements TAO_Notify_Consumer.
|
virtual |
Push a batch of events to this consumer.
Implements TAO_Notify_Consumer.
|
virtual |
on reconnect we need to move events from the old consumer to the new one
Implements TAO_Notify_Consumer.
|
privatevirtual |
Release.
Implements TAO_Notify_Peer.
|
private |
Connection valid flag.
|
protected |
The Consumer.