| TAO_PortableServer 2.0.3 | 
This class finds out the POA and the servant to perform an upcall. It can only be instantiated without the object adapter's lock held. For each upcall a new instance of this class is created. More...
#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 | 
This class finds out the POA and the servant to perform an upcall. It can only be instantiated without the object adapter's lock held. For each upcall a new instance of this class is created.
| 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] | 
| void TAO::Portable_Server::Servant_Upcall::active_object_map_entry | ( | TAO_Active_Object_Map_Entry * | entry | ) | 
Set the active_object_map_entry.
| TAO_Active_Object_Map_Entry * TAO::Portable_Server::Servant_Upcall::active_object_map_entry | ( | void | ) | const | 
Get 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 | ) | const | 
Get the Servant Locator's cookie.
| void TAO::Portable_Server::Servant_Upcall::locator_cookie | ( | void * | cookie | ) | 
Set 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] | 
 1.7.4
 1.7.4