ACE 8.0.1
Loading...
Searching...
No Matches
Public Member Functions | Protected Attributes | Private Member Functions | List of all members
ACE_Method_Request Class Referenceabstract

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

#include <Method_Request.h>

Public Member Functions

 ACE_Method_Request (unsigned long priority=0)
 Constructor.
 
virtual ~ACE_Method_Request ()=default
 Destructor.
 
unsigned long priority () const
 Get priority.
 
void priority (unsigned long prio)
 Set priority.
 
virtual int call ()=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 &)=delete
 
void operator= (const ACE_Method_Request &)=delete
 
 ACE_Method_Request (ACE_Method_Request &&)=delete
 
void operator= (ACE_Method_Request &&)=delete
 

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

Constructor & Destructor Documentation

◆ ACE_Method_Request() [1/3]

ACE_Method_Request::ACE_Method_Request ( unsigned long priority = 0)

Constructor.

◆ ~ACE_Method_Request()

virtual ACE_Method_Request::~ACE_Method_Request ( )
virtualdefault

Destructor.

◆ ACE_Method_Request() [2/3]

ACE_Method_Request::ACE_Method_Request ( const ACE_Method_Request & )
privatedelete

◆ ACE_Method_Request() [3/3]

ACE_Method_Request::ACE_Method_Request ( ACE_Method_Request && )
privatedelete

Member Function Documentation

◆ call()

virtual int ACE_Method_Request::call ( )
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.

◆ operator=() [1/2]

void ACE_Method_Request::operator= ( ACE_Method_Request && )
privatedelete

◆ operator=() [2/2]

void ACE_Method_Request::operator= ( const ACE_Method_Request & )
privatedelete

◆ priority() [1/2]

unsigned long ACE_Method_Request::priority ( ) const

Get priority.

◆ priority() [2/2]

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
priounsigned long, the new priority value for this object.
See also
ACE_Activation_Queue::enqueue

Member Data Documentation

◆ priority_

unsigned long ACE_Method_Request::priority_
protected

The priority of the request.


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