TAO_CosNotification
2.1.6
|
Represents a request to deliver an event to a particular destination. More...
#include <Delivery_Request.h>
Public Member Functions | |
Delivery_Request (const Routing_Slip_Ptr &routing_slip, size_t request_id) | |
~Delivery_Request () | |
a normal destructor. | |
void | complete () |
A method to indicate the delivery is complete. | |
const TAO_Notify_Event::Ptr & | event () const |
An accessor method for the event associated with the Routing Slip that owns this Delivery request. | |
const Routing_Slip_Ptr & | routing_slip () const |
An accessor method for the routing slip that owns this request. | |
void | set_delivery_type (ACE_CDR::Octet type) |
Capture Delivery Type for the Delivery Method. | |
void | set_destination_id (IdVec &destination_id) |
Capture destination ID for the Delivery Request. | |
void | marshal (TAO_OutputCDR &cdr) |
Marshal peristent information for this delivery request and its delivery methods into a CDR stream. | |
unsigned long | sequence () const |
expose routing slip method | |
bool | should_retry () const |
expose routing slip method | |
void | dispatch (TAO_Notify_ProxySupplier *proxy_supplier, bool filter) |
expose routing slip method | |
bool | operator== (const Delivery_Request &rhs) const |
bool | operator!= (const Delivery_Request &rhs) const |
Static Public Member Functions | |
static Delivery_Request_Ptr | create (const Routing_Slip_Ptr &routing_slip, size_t request_id, TAO_Notify_EventChannelFactory &ecf, TAO_InputCDR &cdr) |
A static "factory" method for use during restart. |
Private Member Functions | |
Delivery_Request () | |
No null constructor. | |
Delivery_Request (const Delivery_Request &rhs) | |
No copy constructor. | |
Delivery_Request & | operator= (const Delivery_Request &rhs) |
no assignment operator |
Private Attributes | |
Routing_Slip_Ptr | routing_slip_ |
size_t | request_id_ |
ACE_CDR::Octet | delivery_type_ |
IdVec | destination_id_ |
Represents a request to deliver an event to a particular destination.
A Routing Slip contains a collection of Delivery Requests. A Delivery Request is associated with a Delivery Method. Delivery Methods should be lightweight objects because they are copied, queued, and otherwise passed around while they are waiting to be executed. The Delivery Request is more stable.
TAO_Notify::Delivery_Request::Delivery_Request | ( | const Routing_Slip_Ptr & | routing_slip, |
size_t | request_id | ||
) |
Normal constructor
routing_slip | the routing slip that owns this Delivery Request. |
request_id | an id that identifies this Delivery Request to the Routing Slip. |
TAO_Notify::Delivery_Request::~Delivery_Request | ( | ) |
a normal destructor.
|
private |
No null constructor.
|
private |
No copy constructor.
void TAO_Notify::Delivery_Request::complete | ( | ) |
A method to indicate the delivery is complete.
To be called by the delivery method associated with this delivery request.
|
static |
A static "factory" method for use during restart.
routing_slip | The routing slip to which the new Delivery Request should be attached. |
request_id | The id used to identify this Delivery Request to the Routing Slip. |
ecf | The EventChannelFactory responsible for reloading this Delivery Method. |
cdr | A CDR stream from which the peristent information for this Delivery Requect can be retrieved. |
void TAO_Notify::Delivery_Request::dispatch | ( | TAO_Notify_ProxySupplier * | proxy_supplier, |
bool | filter | ||
) |
expose routing slip method
const TAO_Notify_Event::Ptr & TAO_Notify::Delivery_Request::event | ( | ) | const |
An accessor method for the event associated with the Routing Slip that owns this Delivery request.
void TAO_Notify::Delivery_Request::marshal | ( | TAO_OutputCDR & | cdr | ) |
Marshal peristent information for this delivery request and its delivery methods into a CDR stream.
Called during persistent event storage.
bool TAO_Notify::Delivery_Request::operator!= | ( | const Delivery_Request & | rhs | ) | const |
|
private |
no assignment operator
bool TAO_Notify::Delivery_Request::operator== | ( | const Delivery_Request & | rhs | ) | const |
const Routing_Slip_Ptr & TAO_Notify::Delivery_Request::routing_slip | ( | ) | const |
An accessor method for the routing slip that owns this request.
unsigned long TAO_Notify::Delivery_Request::sequence | ( | ) | const |
expose routing slip method
void TAO_Notify::Delivery_Request::set_delivery_type | ( | ACE_CDR::Octet | type | ) |
Capture Delivery Type for the Delivery Method.
Called by the delivery method to capture information that should be persisted.
void TAO_Notify::Delivery_Request::set_destination_id | ( | IdVec & | destination_id | ) |
Capture destination ID for the Delivery Request.
Called by the delivery method to capture information that should be persisted.
bool TAO_Notify::Delivery_Request::should_retry | ( | ) | const |
expose routing slip method
|
private |
|
private |
|
private |
|
private |