TAO_CosNotification
2.1.6
|
Wrapper for the StructuredPushConsumer that connect to the EventChannel. More...
#include <StructuredPushConsumer.h>
Public Member Functions | |
TAO_Notify_StructuredPushConsumer (TAO_Notify_ProxySupplier *proxy) | |
Constructor. | |
void | init (CosNotifyComm::StructuredPushConsumer_ptr push_consumer) |
Init the Consumer. | |
virtual | ~TAO_Notify_StructuredPushConsumer () |
Destructor. | |
virtual void | push (const CORBA::Any &event) |
virtual void | push (const CosNotification::StructuredEvent &event) |
Push <event> to this consumer. | |
virtual void | push (const CosNotification::EventBatch &event) |
Push a batch of events to this consumer. | |
virtual ACE_CString | get_ior (void) const |
Retrieve the ior of this peer. | |
virtual void | reconnect_from_consumer (TAO_Notify_Consumer *old_consumer) |
![]() | |
TAO_Notify_Consumer (TAO_Notify_ProxySupplier *proxy) | |
Constructor. | |
virtual | ~TAO_Notify_Consumer () |
Destructor. | |
CORBA::ULong | _incr_refcnt (void) |
This method sigantures deliberately match the RefCounting methods required for ESF Proxy. | |
CORBA::ULong | _decr_refcnt (void) |
TAO_Notify_ProxySupplier * | proxy_supplier (void) |
Access Specific Proxy. | |
virtual TAO_Notify_Proxy * | proxy (void) |
Access Base Proxy. | |
void | deliver (TAO_Notify_Method_Request_Event *request) |
Dispatch Event to consumer. | |
DispatchStatus | dispatch_batch (const CosNotification::EventBatch &batch) |
Dispatch the batch of events to the attached consumer. | |
void | dispatch_pending (void) |
Dispatch the pending events. | |
CORBA::Boolean | is_suspended (void) |
Is the connection suspended? | |
void | suspend (void) |
Suspend Connection. | |
void | resume (void) |
Resume Connection. | |
virtual void | shutdown (void) |
Shutdown the consumer. | |
virtual void | qos_changed (const TAO_Notify_QoSProperties &qos_properties) |
Override, Peer::qos_changed. | |
void | assume_pending_events (TAO_Notify_Consumer &rhs) |
bool | is_alive (bool allow_nil_consumer) |
Is the connected consumer still around? | |
size_t | pending_count (void) |
![]() | |
TAO_Notify_Peer (void) | |
Constructor. | |
virtual | ~TAO_Notify_Peer () |
Destructor. | |
virtual void | dispatch_updates (const TAO_Notify_EventTypeSeq &added, const TAO_Notify_EventTypeSeq &removed) |
void | handle_dispatch_exception (void) |
Handle dispatch exceptions. | |
![]() | |
virtual | ~ACE_Event_Handler (void) |
virtual ACE_HANDLE | get_handle (void) const |
virtual void | set_handle (ACE_HANDLE) |
virtual int | priority (void) const |
virtual void | priority (int priority) |
virtual int | handle_input (ACE_HANDLE fd=ACE_INVALID_HANDLE) |
virtual int | handle_output (ACE_HANDLE fd=ACE_INVALID_HANDLE) |
virtual int | handle_exception (ACE_HANDLE fd=ACE_INVALID_HANDLE) |
virtual int | handle_exit (ACE_Process *) |
virtual int | handle_close (ACE_HANDLE handle, ACE_Reactor_Mask close_mask) |
virtual int | handle_signal (int signum, siginfo_t *=0, ucontext_t *=0) |
virtual int | resume_handler (void) |
virtual int | handle_qos (ACE_HANDLE=ACE_INVALID_HANDLE) |
virtual int | handle_group_qos (ACE_HANDLE=ACE_INVALID_HANDLE) |
virtual void | reactor (ACE_Reactor *reactor) |
virtual ACE_Reactor * | reactor (void) const |
virtual ACE_Reactor_Timer_Interface * | reactor_timer_interface (void) const |
virtual Reference_Count | add_reference (void) |
virtual Reference_Count | remove_reference (void) |
Reference_Counting_Policy & | reference_counting_policy (void) |
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. | |
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. | |
TAO_SYNCH_MUTEX * | proxy_lock (void) |
Get the shared Proxy Lock. | |
virtual int | handle_timeout (const ACE_Time_Value ¤t_time, const void *act=0) |
void | schedule_timer (bool is_error=false) |
Schedule timer. | |
void | cancel_timer (void) |
Cancel timer. | |
Request_Queue & | pending_events () |
= Protected Data Members | |
![]() | |
ACE_Event_Handler (ACE_Reactor *=0, int priority=ACE_Event_Handler::LO_PRIORITY) |
Protected Attributes | |
CosNotifyComm::StructuredPushConsumer_var | push_consumer_ |
The Consumer. | |
![]() | |
TAO_Notify_ProxySupplier * | proxy_ |
The Proxy that we associate with. | |
CORBA::Boolean | is_suspended_ |
Suspended Flag. | |
CosNotifyComm::NotifyPublish_var | publish_ |
Interface that accepts offer_changes. | |
bool | have_not_yet_verified_publish_ |
const TAO_Notify_Property_Time & | pacing_ |
The Pacing Interval. | |
TAO_Notify_Property_Long | max_batch_size_ |
Max. batch size. | |
long | timer_id_ |
Timer Id. | |
TAO_Notify_Timer::Ptr | timer_ |
The Timer Manager that we use. | |
ACE_Atomic_Op< TAO_SYNCH_MUTEX, ACE_Time_Value > | last_ping_ |
![]() | |
Atomic_Reference_Count | reference_count_ |
Private Member Functions | |
virtual void | release (void) |
Release. |
Private Attributes | |
int | connection_valid |
Connection valid flag. |
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 long | Reference_Count |
![]() | |
typedef ACE_Unbounded_Queue < TAO_Notify_Method_Request_Event_Queueable * > | Request_Queue |
![]() | |
typedef ACE_Atomic_Op < ACE_SYNCH_MUTEX, Reference_Count > | Atomic_Reference_Count |
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.