TAO_CosNotification  2.1.6
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions
TAO_Notify_PushConsumer Class Reference

Wrapper for the PushConsumer that connect to the EventChannel. More...

#include <PushConsumer.h>

Inheritance diagram for TAO_Notify_PushConsumer:
Inheritance graph
Collaboration diagram for TAO_Notify_PushConsumer:
Collaboration graph

List of all members.

Public Member Functions

 TAO_Notify_PushConsumer (TAO_Notify_ProxySupplier *proxy)
 Constructor.
virtual ~TAO_Notify_PushConsumer ()
 Destructor.
void init (CosEventComm::PushConsumer_ptr push_consumer)
 Init.
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)
- Public Member Functions inherited from TAO_Notify_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_ProxySupplierproxy_supplier (void)
 Access Specific Proxy.
virtual TAO_Notify_Proxyproxy (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)
- Public Member Functions inherited from TAO_Notify_Peer
 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.
- Public Member Functions inherited from ACE_Event_Handler
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_Reactorreactor (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_Policyreference_counting_policy (void)

Protected Member Functions

virtual CORBA::Object_ptr get_consumer (void)
- Protected Member Functions inherited from TAO_Notify_Consumer
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_MUTEXproxy_lock (void)
 Get the shared Proxy Lock.
virtual int handle_timeout (const ACE_Time_Value &current_time, const void *act=0)
void schedule_timer (bool is_error=false)
 Schedule timer.
void cancel_timer (void)
 Cancel timer.
Request_Queuepending_events ()
 = Protected Data Members
- Protected Member Functions inherited from ACE_Event_Handler
 ACE_Event_Handler (ACE_Reactor *=0, int priority=ACE_Event_Handler::LO_PRIORITY)

Protected Attributes

CosEventComm::PushConsumer_var push_consumer_
 The Consumer.
- Protected Attributes inherited from TAO_Notify_Consumer
TAO_Notify_ProxySupplierproxy_
 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_Timepacing_
 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_
- Protected Attributes inherited from ACE_Event_Handler
Atomic_Reference_Count reference_count_

Private Member Functions

virtual void release (void)
 TAO_Notify_Destroy_Callback methods.

Additional Inherited Members

- Public Types inherited from TAO_Notify_Consumer
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
- Public Types inherited from TAO_Notify_Peer
- Public Types inherited from ACE_Event_Handler
typedef long Reference_Count
- Protected Types inherited from TAO_Notify_Consumer
typedef ACE_Unbounded_Queue
< TAO_Notify_Method_Request_Event_Queueable * > 
Request_Queue
- Protected Types inherited from ACE_Event_Handler
typedef ACE_Atomic_Op
< ACE_SYNCH_MUTEX,
Reference_Count
Atomic_Reference_Count

Detailed Description

Wrapper for the PushConsumer that connect to the EventChannel.


Constructor & Destructor Documentation

TAO_Notify_PushConsumer::TAO_Notify_PushConsumer ( TAO_Notify_ProxySupplier proxy)

Constructor.

TAO_Notify_PushConsumer::~TAO_Notify_PushConsumer ( )
virtual

Destructor.


Member Function Documentation

CORBA::Object_ptr TAO_Notify_PushConsumer::get_consumer ( void  )
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.

ACE_CString TAO_Notify_PushConsumer::get_ior ( void  ) const
virtual

Retrieve the ior of this peer.

Implements TAO_Notify_Peer.

void TAO_Notify_PushConsumer::init ( CosEventComm::PushConsumer_ptr  push_consumer)

Init.

void TAO_Notify_PushConsumer::push ( const CORBA::Any &  event)
virtual

Push <event> to this consumer.

Implements TAO_Notify_Consumer.

void TAO_Notify_PushConsumer::push ( const CosNotification::StructuredEvent event)
virtual

Push <event> to this consumer.

Implements TAO_Notify_Consumer.

void TAO_Notify_PushConsumer::push ( const CosNotification::EventBatch event)
virtual

Push a batch of events to this consumer.

Implements TAO_Notify_Consumer.

void TAO_Notify_PushConsumer::reconnect_from_consumer ( TAO_Notify_Consumer old_consumer)
virtual

on reconnect we need to move events from the old consumer to the new one

Implements TAO_Notify_Consumer.

void TAO_Notify_PushConsumer::release ( void  )
privatevirtual

TAO_Notify_Destroy_Callback methods.

Implements TAO_Notify_Peer.


Member Data Documentation

CosEventComm::PushConsumer_var TAO_Notify_PushConsumer::push_consumer_
protected

The Consumer.


The documentation for this class was generated from the following files: