#include <Servant_Upcall.h>
Classes | |
class | Pre_Invoke_State |
This struct keeps track of state related to pre- and post-invoke operations. More... | |
Public Types | |
enum | State { INITIAL_STAGE, OBJECT_ADAPTER_LOCK_ACQUIRED, POA_CURRENT_SETUP, OBJECT_ADAPTER_LOCK_RELEASED, SERVANT_LOCK_ACQUIRED } |
Public Member Functions | |
Servant_Upcall (TAO_ORB_Core *orb_core) | |
Constructor. | |
~Servant_Upcall (void) | |
Destructor. | |
int | prepare_for_upcall (const TAO::ObjectKey &key, const char *operation, CORBA::Object_out forward_to) |
Locate POA and servant. | |
int | prepare_for_upcall_i (const TAO::ObjectKey &key, const char *operation, CORBA::Object_out forward_to, bool &wait_occurred_restart_call) |
Helper. | |
void | pre_invoke_remote_request (TAO_ServerRequest &req) |
Run pre_invoke for a remote request. | |
void | pre_invoke_collocated_request (void) |
Run pre_invoke for a collocated request. | |
void | post_invoke (void) |
Run post_invoke for a request. | |
::TAO_Root_POA * | lookup_POA (const TAO::ObjectKey &key) |
Locate POA. | |
::TAO_Root_POA & | poa (void) const |
POA accessor. | |
TAO_Object_Adapter & | object_adapter (void) const |
Object Adapter accessor. | |
const PortableServer::ObjectId & | id (void) const |
System ID accessor. | |
void | user_id (const PortableServer::ObjectId *) |
const PortableServer::ObjectId & | user_id (void) const |
PortableServer::Servant | servant (void) const |
Servant accessor. | |
void * | locator_cookie (void) const |
Get the Servant Locator's cookie. | |
void | locator_cookie (void *cookie) |
Set the Servant Locator's cookie. | |
const char * | operation (void) const |
Get the operation name. | |
void | operation (const char *) |
Set the operation name. | |
void | active_object_map_entry (TAO_Active_Object_Map_Entry *entry) |
Set the active_object_map_entry. | |
TAO_Active_Object_Map_Entry * | active_object_map_entry (void) const |
Get the active_object_map_entry. | |
CORBA::Short | priority (void) const |
Get the priority for the current upcall. | |
State | state (void) const |
Get the state. | |
void | state (State) |
Set the state. | |
void | increment_servant_refcount (void) |
Increment the refcount. | |
Protected Member Functions | |
void | post_invoke_servant_cleanup (void) |
void | single_threaded_poa_setup (void) |
void | single_threaded_poa_cleanup (void) |
void | servant_cleanup (void) |
void | poa_cleanup (void) |
void | upcall_cleanup (void) |
Clean-up / reset state of this Servant_Upcall object. | |
Protected Attributes | |
TAO_Object_Adapter * | object_adapter_ |
::TAO_Root_POA * | poa_ |
PortableServer::Servant | servant_ |
State | state_ |
CORBA::Octet | system_id_buf_ [TAO_POA_OBJECT_ID_BUF_SIZE] |
PortableServer::ObjectId | system_id_ |
const PortableServer::ObjectId * | user_id_ |
POA_Current_Impl | current_context_ |
void * | cookie_ |
Servant Locator's cookie. | |
const char * | operation_ |
Operation name for this current. | |
TAO_Active_Object_Map_Entry * | active_object_map_entry_ |
Pre_Invoke_State | pre_invoke_state_ |
Preinvoke data for the upcall. | |
Private Member Functions | |
Servant_Upcall (const Servant_Upcall &) | |
void | operator= (const Servant_Upcall &) |
Friends | |
class | ::TAO_RT_Collocation_Resolver |
TAO::Portable_Server::Servant_Upcall::Servant_Upcall | ( | TAO_ORB_Core * | orb_core | ) | [explicit] |
Constructor.
TAO::Portable_Server::Servant_Upcall::~Servant_Upcall | ( | void | ) |
Destructor.
TAO::Portable_Server::Servant_Upcall::Servant_Upcall | ( | const Servant_Upcall & | ) | [private] |
TAO_Active_Object_Map_Entry * TAO::Portable_Server::Servant_Upcall::active_object_map_entry | ( | void | ) | const |
Get the active_object_map_entry.
void TAO::Portable_Server::Servant_Upcall::active_object_map_entry | ( | TAO_Active_Object_Map_Entry * | entry | ) |
Set the active_object_map_entry.
const PortableServer::ObjectId & TAO::Portable_Server::Servant_Upcall::id | ( | void | ) | const |
System ID accessor.
void TAO::Portable_Server::Servant_Upcall::increment_servant_refcount | ( | void | ) |
Increment the refcount.
void TAO::Portable_Server::Servant_Upcall::locator_cookie | ( | void * | cookie | ) |
Set the Servant Locator's cookie.
void * TAO::Portable_Server::Servant_Upcall::locator_cookie | ( | void | ) | const |
Get the Servant Locator's cookie.
TAO_Root_POA * TAO::Portable_Server::Servant_Upcall::lookup_POA | ( | const TAO::ObjectKey & | key | ) |
Locate POA.
TAO_Object_Adapter & TAO::Portable_Server::Servant_Upcall::object_adapter | ( | void | ) | const |
Object Adapter accessor.
void TAO::Portable_Server::Servant_Upcall::operation | ( | const char * | name | ) |
Set the operation name.
const char * TAO::Portable_Server::Servant_Upcall::operation | ( | void | ) | const |
Get the operation name.
void TAO::Portable_Server::Servant_Upcall::operator= | ( | const Servant_Upcall & | ) | [private] |
TAO_Root_POA & TAO::Portable_Server::Servant_Upcall::poa | ( | void | ) | const |
POA accessor.
void TAO::Portable_Server::Servant_Upcall::poa_cleanup | ( | void | ) | [protected] |
void TAO::Portable_Server::Servant_Upcall::post_invoke | ( | void | ) |
Run post_invoke for a request.
void TAO::Portable_Server::Servant_Upcall::post_invoke_servant_cleanup | ( | void | ) | [protected] |
void TAO::Portable_Server::Servant_Upcall::pre_invoke_collocated_request | ( | void | ) |
Run pre_invoke for a collocated request.
void TAO::Portable_Server::Servant_Upcall::pre_invoke_remote_request | ( | TAO_ServerRequest & | req | ) |
Run pre_invoke for a remote request.
int TAO::Portable_Server::Servant_Upcall::prepare_for_upcall | ( | const TAO::ObjectKey & | key, | |
const char * | operation, | |||
CORBA::Object_out | forward_to | |||
) |
Locate POA and servant.
int TAO::Portable_Server::Servant_Upcall::prepare_for_upcall_i | ( | const TAO::ObjectKey & | key, | |
const char * | operation, | |||
CORBA::Object_out | forward_to, | |||
bool & | wait_occurred_restart_call | |||
) |
Helper.
CORBA::Short TAO::Portable_Server::Servant_Upcall::priority | ( | void | ) | const |
Get the priority for the current upcall.
PortableServer::Servant TAO::Portable_Server::Servant_Upcall::servant | ( | void | ) | const |
Servant accessor.
void TAO::Portable_Server::Servant_Upcall::servant_cleanup | ( | void | ) | [protected] |
void TAO::Portable_Server::Servant_Upcall::single_threaded_poa_cleanup | ( | void | ) | [protected] |
void TAO::Portable_Server::Servant_Upcall::single_threaded_poa_setup | ( | void | ) | [protected] |
void TAO::Portable_Server::Servant_Upcall::state | ( | Servant_Upcall::State | state | ) |
Set the state.
Servant_Upcall::State TAO::Portable_Server::Servant_Upcall::state | ( | void | ) | const |
Get the state.
void TAO::Portable_Server::Servant_Upcall::upcall_cleanup | ( | void | ) | [protected] |
Clean-up / reset state of this Servant_Upcall object.
const PortableServer::ObjectId & TAO::Portable_Server::Servant_Upcall::user_id | ( | void | ) | const |
void TAO::Portable_Server::Servant_Upcall::user_id | ( | const PortableServer::ObjectId * | id | ) |
User ID accessors. This is the same value returned by PortableServer::Current::get_object_id().
friend class ::TAO_RT_Collocation_Resolver [friend] |
TAO_Active_Object_Map_Entry* TAO::Portable_Server::Servant_Upcall::active_object_map_entry_ [protected] |
Pointer to the entry in the TAO_Active_Object_Map corresponding to the servant for this request.
void* TAO::Portable_Server::Servant_Upcall::cookie_ [protected] |
Servant Locator's cookie.
const char* TAO::Portable_Server::Servant_Upcall::operation_ [protected] |
Operation name for this current.
::TAO_Root_POA* TAO::Portable_Server::Servant_Upcall::poa_ [protected] |
Preinvoke data for the upcall.
State TAO::Portable_Server::Servant_Upcall::state_ [protected] |
CORBA::Octet TAO::Portable_Server::Servant_Upcall::system_id_buf_[TAO_POA_OBJECT_ID_BUF_SIZE] [protected] |
const PortableServer::ObjectId* TAO::Portable_Server::Servant_Upcall::user_id_ [protected] |