|
TAO_CosNotification
2.3.4
|
Class which manages the delivery of events to destination. More...
#include <Routing_Slip.h>


Public Member Functions | |
| void | set_rspm (Routing_Slip_Persistence_Manager *rspm) |
| void | reconnect (void) |
| virtual | ~Routing_Slip () |
| Destructor (should be private but that inspires compiler wars) More... | |
| void | route (TAO_Notify_ProxyConsumer *pc, bool reliable_channel) |
| void | dispatch (TAO_Notify_ProxySupplier *proxy_supplier, bool filter) |
| Schedule delivery to a consumer via a proxy supplier. More... | |
| void | wait_persist () |
| Wait until the event/routing_slip has been saved at least once. More... | |
| void | delivery_request_complete (size_t request_id) |
| A delivery request has been satisfied. More... | |
| void | at_front_of_persist_queue () |
| This Routing_Slip reached the front of the persistence queue. More... | |
| virtual void | persist_complete () |
| The persistent storage has completed the last request. More... | |
| const TAO_Notify_Event::Ptr & | event () const |
| int | sequence () const |
| Provide an identifying number for this Routing Slip to use in debug messages. More... | |
| bool | should_retry () const |
| Should delivery of this event be retried if it fails? More... | |
Public Member Functions inherited from TAO_Notify::Persistent_Callback | |
| virtual | ~Persistent_Callback () |
Static Public Member Functions | |
| static Routing_Slip_Ptr | create (const TAO_Notify_Event::Ptr &event) |
| "Factory" method for normal use. More... | |
| static Routing_Slip_Ptr | create (TAO_Notify_EventChannelFactory &ecf, Routing_Slip_Persistence_Manager *rspm) |
| "Factory" method for use during reload from persistent storage. More... | |
Private Types | |
| enum | State { rssCREATING, rssTRANSIENT, rssRELOADED, rssNEW, rssCOMPLETE_WHILE_NEW, rssSAVING, rssSAVED, rssUPDATING, rssCHANGED_WHILE_SAVING, rssCHANGED, rssCOMPLETE, rssDELETING, rssTERMINAL } |
| typedef ACE_Guard< TAO_SYNCH_MUTEX > | Routing_Slip_Guard |
Private Attributes | |
| TAO_SYNCH_MUTEX | internals_ |
| Protection for internal information. More... | |
| bool | is_safe_ |
| true when event persistence qos is guaranteed More... | |
| ACE_SYNCH_CONDITION | until_safe_ |
| signalled when is_safe_ goes true More... | |
| Routing_Slip_Ptr | this_ptr_ |
| TAO_Notify_Event::Ptr | event_ |
| enum TAO_Notify::Routing_Slip::State | state_ |
| Delivery_Request_Vec | delivery_requests_ |
| A collection of delivery requests. More... | |
| Delivery_Method_Vec | delivery_methods_ |
| Methods that should be restarted during event recovery. More... | |
| size_t | complete_requests_ |
| How many delivery requests are complete. More... | |
| Routing_Slip_Persistence_Manager * | rspm_ |
| Pointer to a Routing_Slip_Persistence_Manager. More... | |
| int | sequence_ |
Static Private Attributes | |
| static TAO_SYNCH_MUTEX | sequence_lock_ |
| static int | routing_slip_sequence_ = 0 |
| static size_t | count_enter_transient_ = 0 |
| static size_t | count_continue_transient_ = 0 |
| static size_t | count_enter_reloaded_ = 0 |
| static size_t | count_enter_new_ = 0 |
| static size_t | count_continue_new_ = 0 |
| static size_t | count_enter_complete_while_new_ = 0 |
| static size_t | count_enter_saving_ = 0 |
| static size_t | count_enter_saved_ = 0 |
| static size_t | count_enter_updating_ = 0 |
| static size_t | count_enter_changed_while_saving_ = 0 |
| static size_t | count_continue_changed_while_saving_ = 0 |
| static size_t | count_enter_changed_ = 0 |
| static size_t | count_continue_changed_ = 0 |
| static size_t | count_enter_complete_ = 0 |
| static size_t | count_enter_deleting_ = 0 |
| static size_t | count_enter_terminal_ = 0 |
| static Routing_Slip_Queue | persistent_queue_ |
Class which manages the delivery of events to destination.
Interacts with persistent storage to provide reliable delivery.
|
private |
|
private |
|
virtual |
Destructor (should be private but that inspires compiler wars)
|
private |
Private constructor for use by create method.
|
private |
This routing_slip needs to be saved.
|
private |
Test to see if all deliveries are complete.
| void TAO_Notify::Routing_Slip::at_front_of_persist_queue | ( | ) |
This Routing_Slip reached the front of the persistence queue.
|
private |
|
private |
|
private |
|
private |
|
static |
"Factory" method for normal use.
|
static |
"Factory" method for use during reload from persistent storage.
|
private |
| void TAO_Notify::Routing_Slip::delivery_request_complete | ( | size_t | request_id | ) |
A delivery request has been satisfied.
| void TAO_Notify::Routing_Slip::dispatch | ( | TAO_Notify_ProxySupplier * | proxy_supplier, |
| bool | filter | ||
| ) |
Schedule delivery to a consumer via a proxy supplier.
| proxy_supplier | the proxy supplier that will deliver the event |
| filter | should consumer-based filtering be applied? |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
| const TAO_Notify_Event::Ptr & TAO_Notify::Routing_Slip::event | ( | ) | const |
|
private |
Marshal into a CDR.
|
virtual |
The persistent storage has completed the last request.
Implements TAO_Notify::Persistent_Callback.
| void TAO_Notify::Routing_Slip::reconnect | ( | void | ) |
| void TAO_Notify::Routing_Slip::route | ( | TAO_Notify_ProxyConsumer * | pc, |
| bool | reliable_channel | ||
| ) |
Route this event to destinations must be the Action request after the routing slip is created.
| int TAO_Notify::Routing_Slip::sequence | ( | ) | const |
Provide an identifying number for this Routing Slip to use in debug messages.
| void TAO_Notify::Routing_Slip::set_rspm | ( | Routing_Slip_Persistence_Manager * | rspm | ) |
| bool TAO_Notify::Routing_Slip::should_retry | ( | ) | const |
Should delivery of this event be retried if it fails?
|
private |
Marshal from CDR.
| void TAO_Notify::Routing_Slip::wait_persist | ( | ) |
Wait until the event/routing_slip has been saved at least once.
|
private |
How many delivery requests are complete.
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
private |
Methods that should be restarted during event recovery.
|
private |
A collection of delivery requests.
|
private |
|
private |
Protection for internal information.
|
private |
true when event persistence qos is guaranteed
|
staticprivate |
|
staticprivate |
|
private |
Pointer to a Routing_Slip_Persistence_Manager.
|
private |
|
staticprivate |
|
private |
|
private |
Smart pointer to this object Provides continuity between smart pointers and "Routing_Slip::this" Also lets the Routing_Slip manage its own minimum lifetime.
|
private |
signalled when is_safe_ goes true
1.8.9.1