ACE_Method_Request Class Reference

Reifies a method into a request. Subclasses must provide the necessary state and behavior. More...

#include <Method_Request.h>

List of all members.

Public Member Functions

 ACE_Method_Request (unsigned long priority=0)
 Constructor.

virtual ~ACE_Method_Request (void)
 Destructor.

unsigned long priority (void) const
 Get priority.

void priority (unsigned long prio)
 Set priority.

virtual int call (void)=0
 Invoked by the scheduler to execute the request.


Protected Attributes

unsigned long priority_
 The priority of the request.


Private Member Functions

 ACE_Method_Request (const ACE_Method_Request &)
 Disallow copying and assignment.

void operator= (const ACE_Method_Request &)


Detailed Description

Reifies a method into a request. Subclasses must provide the necessary state and behavior.

An ACE_Method_Request is inserted in an ACE_Activation_Queue, where it is subsequently removed by a scheduler object (often derived from ACE_Task), which invokes the call() method.

This class is discussed in depth in the Active Object chapter of POSA2.

See also:
ACE_Activation_Queue

Definition at line 45 of file Method_Request.h.


Constructor & Destructor Documentation

ACE_BEGIN_VERSIONED_NAMESPACE_DECL ACE_Method_Request::ACE_Method_Request unsigned long  priority = 0  ) 
 

Constructor.

Definition at line 9 of file Method_Request.cpp.

00010   : priority_ (prio)
00011 {
00012 }

ACE_Method_Request::~ACE_Method_Request void   )  [virtual]
 

Destructor.

Definition at line 14 of file Method_Request.cpp.

00015 {
00016 }

ACE_Method_Request::ACE_Method_Request const ACE_Method_Request  )  [private]
 

Disallow copying and assignment.


Member Function Documentation

virtual int ACE_Method_Request::call void   )  [pure virtual]
 

Invoked by the scheduler to execute the request.

This method must be implemented by the subclass to perform the desired actions.

Returns:
int; not interpreted by ACE. The scheduler class must decide the meaning of this return value and act on it if needed.

void ACE_Method_Request::operator= const ACE_Method_Request  )  [private]
 

void ACE_Method_Request::priority unsigned long  prio  ) 
 

Set priority.

Priority values are user-defined. The default (set in the constructor) is 0. The priority value is used in the ACE_Activation_Queue::enqueue() method to order the method requests in the queue by priority. 0 is the lowest priority.

Parameters:
prio unsigned long, the new priority value for this object.
See also:
ACE_Activation_Queue::enqueue

Definition at line 25 of file Method_Request.cpp.

00026 {
00027   this->priority_ = prio;
00028 }

unsigned long ACE_Method_Request::priority void   )  const
 

Get priority.

Definition at line 19 of file Method_Request.cpp.

00020 {
00021   return this->priority_;
00022 }


Member Data Documentation

unsigned long ACE_Method_Request::priority_ [protected]
 

The priority of the request.

Definition at line 92 of file Method_Request.h.


The documentation for this class was generated from the following files:
Generated on Thu Nov 9 11:24:55 2006 for ACE by doxygen 1.3.6