Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

TAO_Object_Adapter Class Reference

#include <Object_Adapter.h>

Inheritance diagram for TAO_Object_Adapter

Inheritance graph
[legend]
Collaboration diagram for TAO_Object_Adapter:

Collaboration graph
[legend]
List of all members.

Public Types

typedef PortableServer::ObjectId poa_name
typedef PortableServer::ObjectId_var poa_name_var
typedef PortableServer::ObjectId_out poa_name_out

Public Methods

 TAO_Object_Adapter (const TAO_Server_Strategy_Factory::Active_Object_Map_Creation_Parameters &creation_parameters, TAO_ORB_Core &orb_core)
 ~TAO_Object_Adapter (void)
int dispatch_servant (const TAO_ObjectKey &key, TAO_ServerRequest &req, CORBA::Object_out forward_to, CORBA_Environment &ACE_TRY_ENV)
int locate_servant (const TAO_ObjectKey &key, CORBA_Environment &ACE_TRY_ENV)
TAO_SERVANT_LOCATION find_servant (const TAO_ObjectKey &key, PortableServer::Servant &servant, CORBA_Environment &ACE_TRY_ENV)
int find_poa (const poa_name &system_name, CORBA::Boolean activate_it, CORBA::Boolean root, const TAO_Temporary_Creation_Time &poa_creation_time, TAO_POA *&poa, CORBA_Environment &ACE_TRY_ENV)
int bind_poa (const poa_name &folded_name, TAO_POA *poa, poa_name_out system_name)
int unbind_poa (TAO_POA *poa, const poa_name &folded_name, const poa_name &system_name)
int activate_poa (const poa_name &folded_name, TAO_POA *&poa, CORBA_Environment &ACE_TRY_ENV)
ACE_Locklock (void)
TAO_SYNCH_MUTEXthread_lock (void)
ACE_Reverse_Lock<ACE_Lock>& reverse_lock (void)
TAO_POAroot_poa (void) const
TAO_ORB_Coreorb_core (void) const
void wait_for_non_servant_upcalls_to_complete (CORBA::Environment &ACE_TRY_ENV)
void wait_for_non_servant_upcalls_to_complete (void)
TAO_POA_Policy_Validatorvalidator (void)
 Return the validator.

TAO_POA_Policy_Setdefault_poa_policies (void)
 Return the set of default policies.

void servant_dispatcher (TAO_Servant_Dispatcher *dispatcher)
 Set the servant dispatcher method. Ownership is transferred to this Object Adapter. Note: This should only be called at initialization.

void init_default_policies (TAO_POA_Policy_Set &policies, CORBA::Environment &ACE_TRY_ENV)
 Initialize the default set of POA policies.

virtual void open (CORBA::Environment &ACE_TRY_ENV)
virtual void close (int wait_for_completion, CORBA::Environment &ACE_TRY_ENV)
virtual void check_close (int wait_for_completion, CORBA::Environment &ACE_TRY_ENV)
virtual int priority (void) const
virtual int dispatch (TAO_ObjectKey &key, TAO_ServerRequest &request, CORBA::Object_out foward_to, CORBA::Environment &ACE_TRY_ENV) throw (CORBA::SystemException)
virtual const char* name (void) const
virtual CORBA::Object_ptr root (void)
virtual CORBA::Object_ptr create_collocated_object (TAO_Stub *, const TAO_MProfile &)
Non_Servant_Upcallnon_servant_upcall_in_progress (void) const

Public Attributes

persistent_poa_name_mappersistent_poa_name_map_
transient_poa_maptransient_poa_map_

Static Public Methods

CORBA::ULong transient_poa_name_size (void)

Protected Types

typedef ACE_Map< poa_name,
TAO_POA *> 
transient_poa_map
typedef ACE_Hash_Map_Manager_Ex_Adapter<
poa_name, TAO_POA *, TAO_ObjectId_Hash,
ACE_Equal_To<poa_name>, TAO_Incremental_Key_Generator
transient_poa_hash_map
typedef ACE_Map_Manager_Adapter<
poa_name, TAO_POA *, TAO_Incremental_Key_Generator
transient_poa_linear_map
typedef ACE_Active_Map_Manager_Adapter<
poa_name, TAO_POA *, TAO_Ignore_Original_Key_Adapter
transient_poa_active_map
typedef ACE_Map< poa_name,
TAO_POA *> 
persistent_poa_name_map
typedef ACE_Hash_Map_Manager_Ex_Adapter<
poa_name, TAO_POA *, TAO_ObjectId_Hash,
ACE_Equal_To<PortableServer::ObjectId>,
ACE_Noop_Key_Generator<poa_name> > 
persistent_poa_name_hash_map
typedef ACE_Map_Manager_Adapter<
poa_name, TAO_POA *, ACE_Noop_Key_Generator<
poa_name> > 
persistent_poa_name_linear_map

Protected Methods

int locate_servant_i (const TAO_ObjectKey &key, CORBA_Environment &ACE_TRY_ENV)
TAO_SERVANT_LOCATION find_servant_i (const TAO_ObjectKey &key, PortableServer::Servant &servant, CORBA_Environment &ACE_TRY_ENV)
void dispatch_servant_i (const TAO_ObjectKey &key, TAO_ServerRequest &req, void *context, CORBA_Environment &ACE_TRY_ENV)
void locate_poa (const TAO_ObjectKey &key, PortableServer::ObjectId &id, TAO_POA *&poa, CORBA_Environment &ACE_TRY_ENV)
int find_transient_poa (const poa_name &system_name, CORBA::Boolean root, const TAO_Temporary_Creation_Time &poa_creation_time, TAO_POA *&poa, CORBA_Environment &ACE_TRY_ENV)
int find_persistent_poa (const poa_name &system_name, TAO_POA *&poa, CORBA_Environment &ACE_TRY_ENV)
int bind_transient_poa (TAO_POA *poa, poa_name_out system_name)
int bind_persistent_poa (const poa_name &folded_name, TAO_POA *poa, poa_name_out system_name)
int unbind_transient_poa (const poa_name &system_name)
int unbind_persistent_poa (const poa_name &folded_name, const poa_name &system_name)
void set_default_server_protocol_policy (CORBA::Environment &ACE_TRY_ENV)

Protected Attributes

Hint_Strategyhint_strategy_
TAO_Servant_Dispatcherservant_dispatcher_
 Strategy for dispatching a request to a servant.

TAO_ORB_Coreorb_core_
int enable_locking_
TAO_SYNCH_MUTEX thread_lock_
ACE_Locklock_
ACE_Reverse_Lock<ACE_Lockreverse_lock_

Static Protected Methods

ACE_Lockcreate_lock (int enable_locking, TAO_SYNCH_MUTEX &thread_lock)
void set_transient_poa_name_size (const TAO_Server_Strategy_Factory::Active_Object_Map_Creation_Parameters &creation_parameters)

Static Protected Attributes

size_t transient_poa_name_size_ = 0

Private Attributes

TAO_SYNCH_CONDITION non_servant_upcall_condition_
Non_Servant_Upcallnon_servant_upcall_in_progress_
ACE_thread_t non_servant_upcall_thread_
TAO_POAroot_
TAO_POA_Default_Policy_Validator default_validator_
 The default validator and the beginning of the chain of policy validators.

TAO_POA_Policy_Set default_poa_policies_
 Save a list of default policies that should be included in every POA (unless overridden).


Friends

class  TAO_POA
class  Non_Servant_Upcall
class  Servant_Upcall

Member Typedef Documentation

typedef ACE_Hash_Map_Manager_Ex_Adapter< poa_name, TAO_POA *, TAO_ObjectId_Hash, ACE_Equal_To<PortableServer::ObjectId>, ACE_Noop_Key_Generator<poa_name> > TAO_Object_Adapter::persistent_poa_name_hash_map [protected]
 

typedef ACE_Map_Manager_Adapter< poa_name, TAO_POA *, ACE_Noop_Key_Generator<poa_name> > TAO_Object_Adapter::persistent_poa_name_linear_map [protected]
 

typedef ACE_Map< poa_name, TAO_POA *> TAO_Object_Adapter::persistent_poa_name_map [protected]
 

typedef PortableServer::ObjectId TAO_Object_Adapter::poa_name
 

typedef PortableServer::ObjectId_out TAO_Object_Adapter::poa_name_out
 

typedef PortableServer::ObjectId_var TAO_Object_Adapter::poa_name_var
 

typedef ACE_Active_Map_Manager_Adapter< poa_name, TAO_POA *, TAO_Ignore_Original_Key_Adapter> TAO_Object_Adapter::transient_poa_active_map [protected]
 

typedef ACE_Hash_Map_Manager_Ex_Adapter< poa_name, TAO_POA *, TAO_ObjectId_Hash, ACE_Equal_To<poa_name>, TAO_Incremental_Key_Generator> TAO_Object_Adapter::transient_poa_hash_map [protected]
 

typedef ACE_Map_Manager_Adapter< poa_name, TAO_POA *, TAO_Incremental_Key_Generator> TAO_Object_Adapter::transient_poa_linear_map [protected]
 

typedef ACE_Map< poa_name, TAO_POA *> TAO_Object_Adapter::transient_poa_map [protected]
 


Constructor & Destructor Documentation

TAO_Object_Adapter::TAO_Object_Adapter ( const TAO_Server_Strategy_Factory::Active_Object_Map_Creation_Parameters & creation_parameters,
TAO_ORB_Core & orb_core )
 

TAO_Object_Adapter::~TAO_Object_Adapter ( void )
 


Member Function Documentation

int TAO_Object_Adapter::activate_poa ( const poa_name & folded_name,
TAO_POA *& poa,
CORBA_Environment & ACE_TRY_ENV )
 

ACE_INLINE int TAO_Object_Adapter::bind_persistent_poa ( const poa_name & folded_name,
TAO_POA * poa,
poa_name_out system_name ) [protected]
 

int TAO_Object_Adapter::bind_poa ( const poa_name & folded_name,
TAO_POA * poa,
poa_name_out system_name )
 

ACE_INLINE int TAO_Object_Adapter::bind_transient_poa ( TAO_POA * poa,
poa_name_out system_name ) [protected]
 

void TAO_Object_Adapter::check_close ( int wait_for_completion,
CORBA::Environment & ACE_TRY_ENV ) [virtual]
 

Reimplemented from TAO_Adapter.

void TAO_Object_Adapter::close ( int wait_for_completion,
CORBA::Environment & ACE_TRY_ENV ) [virtual]
 

Reimplemented from TAO_Adapter.

CORBA::Object_ptr TAO_Object_Adapter::create_collocated_object ( TAO_Stub * stub,
const TAO_MProfile & mp ) [virtual]
 

Reimplemented from TAO_Adapter.

ACE_Lock * TAO_Object_Adapter::create_lock ( int enable_locking,
TAO_SYNCH_MUTEX & thread_lock ) [static, protected]
 

ACE_INLINE TAO_POA_Policy_Set & TAO_Object_Adapter::default_poa_policies ( void )
 

Return the set of default policies.

int TAO_Object_Adapter::dispatch ( TAO_ObjectKey & key,
TAO_ServerRequest & request,
CORBA::Object_out forward_to,
CORBA::Environment & ACE_TRY_ENV ) throw (CORBA::SystemException) [virtual]
 

Reimplemented from TAO_Adapter.

int TAO_Object_Adapter::dispatch_servant ( const TAO_ObjectKey & key,
TAO_ServerRequest & req,
CORBA::Object_out forward_to,
CORBA_Environment & ACE_TRY_ENV )
 

void TAO_Object_Adapter::dispatch_servant_i ( const TAO_ObjectKey & key,
TAO_ServerRequest & req,
void * context,
CORBA_Environment & ACE_TRY_ENV ) [protected]
 

ACE_INLINE int TAO_Object_Adapter::find_persistent_poa ( const poa_name & system_name,
TAO_POA *& poa,
CORBA_Environment & ACE_TRY_ENV ) [protected]
 

ACE_INLINE int TAO_Object_Adapter::find_poa ( const poa_name & system_name,
CORBA::Boolean activate_it,
CORBA::Boolean root,
const TAO_Temporary_Creation_Time & poa_creation_time,
TAO_POA *& poa,
CORBA_Environment & ACE_TRY_ENV )
 

TAO_SERVANT_LOCATION TAO_Object_Adapter::find_servant ( const TAO_ObjectKey & key,
PortableServer::Servant & servant,
CORBA_Environment & ACE_TRY_ENV )
 

TAO_SERVANT_LOCATION TAO_Object_Adapter::find_servant_i ( const TAO_ObjectKey & key,
PortableServer::Servant & servant,
CORBA_Environment & ACE_TRY_ENV ) [protected]
 

int TAO_Object_Adapter::find_transient_poa ( const poa_name & system_name,
CORBA::Boolean root,
const TAO_Temporary_Creation_Time & poa_creation_time,
TAO_POA *& poa,
CORBA_Environment & ACE_TRY_ENV ) [protected]
 

void TAO_Object_Adapter::init_default_policies ( TAO_POA_Policy_Set & policies,
CORBA::Environment & ACE_TRY_ENV )
 

Initialize the default set of POA policies.

void TAO_Object_Adapter::locate_poa ( const TAO_ObjectKey & key,
PortableServer::ObjectId & system_id,
TAO_POA *& poa,
CORBA_Environment & ACE_TRY_ENV ) [protected]
 

int TAO_Object_Adapter::locate_servant ( const TAO_ObjectKey & key,
CORBA_Environment & ACE_TRY_ENV )
 

int TAO_Object_Adapter::locate_servant_i ( const TAO_ObjectKey & key,
CORBA_Environment & ACE_TRY_ENV ) [protected]
 

ACE_INLINE ACE_Lock & TAO_Object_Adapter::lock ( void )
 

const char * TAO_Object_Adapter::name ( void ) const [virtual]
 

Reimplemented from TAO_Adapter.

ACE_INLINE TAO_Object_Adapter::Non_Servant_Upcall * TAO_Object_Adapter::non_servant_upcall_in_progress ( void ) const
 

void TAO_Object_Adapter::open ( CORBA::Environment & ACE_TRY_ENV ) [virtual]
 

Reimplemented from TAO_Adapter.

ACE_INLINE TAO_ORB_Core & TAO_Object_Adapter::orb_core ( void ) const
 

int TAO_Object_Adapter::priority ( void ) const [virtual]
 

Reimplemented from TAO_Adapter.

ACE_INLINE ACE_Reverse_Lock< ACE_Lock >& TAO_Object_Adapter::reverse_lock ( void )
 

CORBA::Object_ptr TAO_Object_Adapter::root ( void ) [virtual]
 

Reimplemented from TAO_Adapter.

ACE_INLINE TAO_POA * TAO_Object_Adapter::root_poa ( void ) const
 

void TAO_Object_Adapter::servant_dispatcher ( TAO_Servant_Dispatcher * dispatcher )
 

Set the servant dispatcher method. Ownership is transferred to this Object Adapter. Note: This should only be called at initialization.

void TAO_Object_Adapter::set_default_server_protocol_policy ( CORBA::Environment & ACE_TRY_ENV ) [protected]
 

void TAO_Object_Adapter::set_transient_poa_name_size ( const TAO_Server_Strategy_Factory::Active_Object_Map_Creation_Parameters & creation_parameters ) [static, protected]
 

ACE_INLINE TAO_SYNCH_MUTEX & TAO_Object_Adapter::thread_lock ( void )
 

ACE_INLINE CORBA::ULong TAO_Object_Adapter::transient_poa_name_size ( void ) [static]
 

ACE_INLINE int TAO_Object_Adapter::unbind_persistent_poa ( const poa_name & folded_name,
const poa_name & system_name ) [protected]
 

int TAO_Object_Adapter::unbind_poa ( TAO_POA * poa,
const poa_name & folded_name,
const poa_name & system_name )
 

ACE_INLINE int TAO_Object_Adapter::unbind_transient_poa ( const poa_name & system_name ) [protected]
 

ACE_INLINE TAO_POA_Policy_Validator & TAO_Object_Adapter::validator ( void )
 

Return the validator.

void TAO_Object_Adapter::wait_for_non_servant_upcalls_to_complete ( void )
 

void TAO_Object_Adapter::wait_for_non_servant_upcalls_to_complete ( CORBA::Environment & ACE_TRY_ENV )
 


Friends And Related Function Documentation

class Non_Servant_Upcall [friend]
 

class Servant_Upcall [friend]
 

class TAO_POA [friend]
 


Member Data Documentation

TAO_POA_Policy_Set TAO_Object_Adapter::default_poa_policies_ [private]
 

Save a list of default policies that should be included in every POA (unless overridden).

TAO_POA_Default_Policy_Validator TAO_Object_Adapter::default_validator_ [private]
 

The default validator and the beginning of the chain of policy validators.

int TAO_Object_Adapter::enable_locking_ [protected]
 

Hint_Strategy * TAO_Object_Adapter::hint_strategy_ [protected]
 

ACE_Lock * TAO_Object_Adapter::lock_ [protected]
 

TAO_SYNCH_CONDITION TAO_Object_Adapter::non_servant_upcall_condition_ [private]
 

Non_Servant_Upcall * TAO_Object_Adapter::non_servant_upcall_in_progress_ [private]
 

ACE_thread_t TAO_Object_Adapter::non_servant_upcall_thread_ [private]
 

TAO_ORB_Core & TAO_Object_Adapter::orb_core_ [protected]
 

persistent_poa_name_map * TAO_Object_Adapter::persistent_poa_name_map_
 

ACE_Reverse_Lock< ACE_Lock > TAO_Object_Adapter::reverse_lock_ [protected]
 

TAO_POA * TAO_Object_Adapter::root_ [private]
 

TAO_Servant_Dispatcher * TAO_Object_Adapter::servant_dispatcher_ [protected]
 

Strategy for dispatching a request to a servant.

TAO_SYNCH_MUTEX TAO_Object_Adapter::thread_lock_ [protected]
 

transient_poa_map * TAO_Object_Adapter::transient_poa_map_
 

size_t TAO_Object_Adapter::transient_poa_name_size_ = 0 [inline, static, protected]
 


The documentation for this class was generated from the following files:
Generated at Sat Dec 1 12:14:25 2001 for TAO_PortableServer by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000