TAO_Notify_Reactive_Task Class Reference

A reactive worker task. Simply executes the command in the caller's context. More...

#include <Reactive_Task.h>

Inheritance diagram for TAO_Notify_Reactive_Task:

Inheritance graph
[legend]
Collaboration diagram for TAO_Notify_Reactive_Task:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 TAO_Notify_Reactive_Task (void)
 Constructor.
virtual ~TAO_Notify_Reactive_Task (void)
 Destructor.
void init (void)
 Init the reactive task.
virtual void shutdown (void)
 Shutdown task.
virtual void execute (TAO_Notify_Method_Request &method_request)
 Exec the request.
virtual TAO_Notify_Timertimer (void)
 The object used by clients to register timers. This method returns a Reactor based Timer.
virtual TAO_Notify_Buffering_Strategybuffering_strategy (void)
 Returns NULL.

Private Member Functions

virtual void release (void)
 Release.

Private Attributes

TAO_Notify_Timer_Reactor::Ptr timer_
 The timer.

Detailed Description

A reactive worker task. Simply executes the command in the caller's context.

Definition at line 35 of file Reactive_Task.h.


Constructor & Destructor Documentation

TAO_BEGIN_VERSIONED_NAMESPACE_DECL TAO_Notify_Reactive_Task::TAO_Notify_Reactive_Task ( void   ) 

Constructor.

Definition at line 15 of file Reactive_Task.cpp.

00016   :timer_ (0)
00017 {
00018 }

TAO_Notify_Reactive_Task::~TAO_Notify_Reactive_Task ( void   )  [virtual]

Destructor.

Definition at line 20 of file Reactive_Task.cpp.

00021 {
00022 }


Member Function Documentation

TAO_BEGIN_VERSIONED_NAMESPACE_DECL ACE_INLINE TAO_Notify_Buffering_Strategy * TAO_Notify_Reactive_Task::buffering_strategy ( void   )  [virtual]

Returns NULL.

Definition at line 8 of file Reactive_Task.inl.

00009 {
00010   return 0;
00011 }

void TAO_Notify_Reactive_Task::execute ( TAO_Notify_Method_Request method_request  )  [virtual]

Exec the request.

Implements TAO_Notify_Worker_Task.

Definition at line 48 of file Reactive_Task.cpp.

References TAO_Notify_Method_Request::execute().

00049 {
00050   method_request.execute ();
00051 }

void TAO_Notify_Reactive_Task::init ( void   ) 

Init the reactive task.

Definition at line 25 of file Reactive_Task.cpp.

References ACE_ASSERT, ACE_NEW_THROW_EX, TAO_Notify_Refcountable_Guard_T< T >::reset(), timer(), and timer_.

Referenced by TAO_Notify_Builder::apply_reactive_concurrency().

00026 {
00027   ACE_ASSERT (this->timer_.get() == 0);
00028 
00029   TAO_Notify_Timer_Reactor* timer = 0;
00030   ACE_NEW_THROW_EX (timer,
00031                     TAO_Notify_Timer_Reactor (),
00032                     CORBA::NO_MEMORY ());
00033   this->timer_.reset (timer);
00034 }

void TAO_Notify_Reactive_Task::release ( void   )  [private, virtual]

Release.

Implements TAO_Notify_Refcountable.

Definition at line 37 of file Reactive_Task.cpp.

00038 {
00039   delete this; //TODO: Release via factory.
00040 }

void TAO_Notify_Reactive_Task::shutdown ( void   )  [virtual]

Shutdown task.

Implements TAO_Notify_Worker_Task.

Definition at line 43 of file Reactive_Task.cpp.

00044 {
00045 }

TAO_Notify_Timer * TAO_Notify_Reactive_Task::timer ( void   )  [virtual]

The object used by clients to register timers. This method returns a Reactor based Timer.

Implements TAO_Notify_Worker_Task.

Definition at line 54 of file Reactive_Task.cpp.

References TAO_Notify_Refcountable_Guard_T< T >::get(), and timer_.

Referenced by init().

00055 {
00056   return this->timer_.get();
00057 }


Member Data Documentation

TAO_Notify_Timer_Reactor::Ptr TAO_Notify_Reactive_Task::timer_ [private]

The timer.

Definition at line 62 of file Reactive_Task.h.

Referenced by init(), and timer().


The documentation for this class was generated from the following files:
Generated on Tue Feb 2 17:46:28 2010 for TAO_CosNotification by  doxygen 1.4.7