TAO_PortableServer  2.4.8
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | List of all members
TAO_Active_Object_Map Class Reference

Map of object ids to servants. More...

#include <Active_Object_Map.h>

Collaboration diagram for TAO_Active_Object_Map:
Collaboration graph
[legend]

Public Types

typedef ACE_Map< PortableServer::ObjectId, TAO_Active_Object_Map_Entry * > user_id_map
 Base class of the id map. More...
 
typedef ACE_Hash_Map_Manager_Ex_Adapter< PortableServer::ObjectId, TAO_Active_Object_Map_Entry *, TAO_ObjectId_Hash, ACE_Equal_To< PortableServer::ObjectId >, TAO_Incremental_Key_Generatoruser_id_hash_map
 Id hash map. More...
 
typedef ACE_Map_Manager_Adapter< PortableServer::ObjectId, TAO_Active_Object_Map_Entry *, TAO_Incremental_Key_Generatoruser_id_linear_map
 Id linear map. More...
 
typedef ACE_Active_Map_Manager_Adapter< PortableServer::ObjectId, TAO_Active_Object_Map_Entry *, TAO_Ignore_Original_Key_Adapteruser_id_active_map
 Id active map. More...
 
typedef ACE_Map< PortableServer::Servant, TAO_Active_Object_Map_Entry * > servant_map
 Base class of the servant map. More...
 
typedef ACE_Hash_Map_Manager_Ex_Adapter< PortableServer::Servant, TAO_Active_Object_Map_Entry *, TAO_Servant_Hash, ACE_Equal_To< PortableServer::Servant >, ACE_Noop_Key_Generator< PortableServer::Servant > > servant_hash_map
 Servant hash map. More...
 
typedef ACE_Map_Manager_Adapter< PortableServer::Servant, TAO_Active_Object_Map_Entry *, ACE_Noop_Key_Generator< PortableServer::Servant > > servant_linear_map
 Servant linear map. More...
 

Public Member Functions

 TAO_Active_Object_Map (int user_id_policy, int unique_id_policy, int persistent_id_policy, const TAO_Server_Strategy_Factory::Active_Object_Map_Creation_Parameters &creation_parameters)
 Constructor. More...
 
 ~TAO_Active_Object_Map (void)
 Destructor. More...
 
int is_servant_in_map (PortableServer::Servant servant, bool &deactivated)
 Must be used with UNIQUE_ID policy. More...
 
bool is_user_id_in_map (const PortableServer::ObjectId &user_id, CORBA::Short priority, bool &priorities_match, bool &deactivated)
 
int bind_using_system_id_returning_system_id (PortableServer::Servant servant, CORBA::Short priority, PortableServer::ObjectId_out system_id)
 Must be used with SYSTEM_ID policy. More...
 
int bind_using_system_id_returning_user_id (PortableServer::Servant servant, CORBA::Short priority, PortableServer::ObjectId_out user_id)
 Must be used with SYSTEM_ID policy. More...
 
int bind_using_user_id (PortableServer::Servant servant, const PortableServer::ObjectId &user_id, CORBA::Short priority)
 
int find_system_id_using_user_id (const PortableServer::ObjectId &user_id, CORBA::Short priority, PortableServer::ObjectId_out system_id)
 
int rebind_using_user_id_and_system_id (PortableServer::Servant servant, const PortableServer::ObjectId &user_id, const PortableServer::ObjectId &system_id, TAO_Active_Object_Map_Entry *&entry)
 Can be used with any policy. More...
 
int unbind_using_user_id (const PortableServer::ObjectId &user_id)
 
int find_user_id_using_servant (PortableServer::Servant servant, PortableServer::ObjectId_out user_id)
 
int find_system_id_using_servant (PortableServer::Servant servant, PortableServer::ObjectId_out system_id, CORBA::Short &priority)
 
int find_servant_using_user_id (const PortableServer::ObjectId &user_id, PortableServer::Servant &servant)
 
int find_servant_using_system_id_and_user_id (const PortableServer::ObjectId &system_id, const PortableServer::ObjectId &user_id, PortableServer::Servant &servant, TAO_Active_Object_Map_Entry *&entry)
 Can be used with any policy. More...
 
int find_servant_and_system_id_using_user_id (const PortableServer::ObjectId &user_id, PortableServer::Servant &servant, PortableServer::ObjectId_out system_id, CORBA::Short &priority)
 
int find_entry_using_user_id (const PortableServer::ObjectId &user_id, TAO_Active_Object_Map_Entry *&entry)
 
int find_user_id_using_system_id (const PortableServer::ObjectId &system_id, PortableServer::ObjectId_out user_id)
 
int find_user_id_using_system_id (const PortableServer::ObjectId &system_id, PortableServer::ObjectId &user_id)
 
CORBA::Boolean remaining_activations (PortableServer::Servant servant)
 
size_t current_size (void)
 Size of the map. More...
 

Static Public Member Functions

static size_t system_id_size (void)
 Can be used with any policy. More...
 
static void set_system_id_size (const TAO_Server_Strategy_Factory::Active_Object_Map_Creation_Parameters &creation_parameters)
 Set the system id size. More...
 

Public Attributes

auto_ptr< user_id_mapuser_id_map_
 Id map. More...
 
auto_ptr< servant_mapservant_map_
 Servant map. More...
 
auto_ptr< TAO_Id_Uniqueness_Strategyid_uniqueness_strategy_
 Id uniqueness strategy. More...
 
auto_ptr< TAO_Lifespan_Strategylifespan_strategy_
 Lifespan strategy. More...
 
auto_ptr< TAO_Id_Assignment_Strategyid_assignment_strategy_
 Id assignment strategy. More...
 
auto_ptr< TAO_Id_Hint_Strategyid_hint_strategy_
 Id hint strategy. More...
 
bool using_active_maps_
 

Static Public Attributes

static size_t system_id_size_ = 0
 Size of the system id produced by the map. More...
 

Detailed Description

Map of object ids to servants.

Implementation to be used by the POA.

Member Typedef Documentation

◆ servant_hash_map

Servant hash map.

◆ servant_linear_map

Servant linear map.

◆ servant_map

Base class of the servant map.

◆ user_id_active_map

Id active map.

◆ user_id_hash_map

Id hash map.

◆ user_id_linear_map

Id linear map.

◆ user_id_map

Base class of the id map.

Constructor & Destructor Documentation

◆ TAO_Active_Object_Map()

TAO_Active_Object_Map::TAO_Active_Object_Map ( int  user_id_policy,
int  unique_id_policy,
int  persistent_id_policy,
const TAO_Server_Strategy_Factory::Active_Object_Map_Creation_Parameters creation_parameters 
)

Constructor.

◆ ~TAO_Active_Object_Map()

TAO_Active_Object_Map::~TAO_Active_Object_Map ( void  )

Destructor.

Member Function Documentation

◆ bind_using_system_id_returning_system_id()

ACE_INLINE int TAO_Active_Object_Map::bind_using_system_id_returning_system_id ( PortableServer::Servant  servant,
CORBA::Short  priority,
PortableServer::ObjectId_out  system_id 
)

Must be used with SYSTEM_ID policy.

◆ bind_using_system_id_returning_user_id()

ACE_INLINE int TAO_Active_Object_Map::bind_using_system_id_returning_user_id ( PortableServer::Servant  servant,
CORBA::Short  priority,
PortableServer::ObjectId_out  user_id 
)

Must be used with SYSTEM_ID policy.

◆ bind_using_user_id()

ACE_INLINE int TAO_Active_Object_Map::bind_using_user_id ( PortableServer::Servant  servant,
const PortableServer::ObjectId user_id,
CORBA::Short  priority 
)

Can be used with any policy. With the SYSTEM_ID policy, user_id is actually system_id.

◆ current_size()

ACE_INLINE size_t TAO_Active_Object_Map::current_size ( void  )

Size of the map.

◆ find_entry_using_user_id()

ACE_INLINE int TAO_Active_Object_Map::find_entry_using_user_id ( const PortableServer::ObjectId user_id,
TAO_Active_Object_Map_Entry *&  entry 
)

Can be used with any policy. With the SYSTEM_ID policy, user_id is identical to system_id.

Return values
-1Entry is not found or is deactivated.
0Entry is found.

◆ find_servant_and_system_id_using_user_id()

ACE_INLINE int TAO_Active_Object_Map::find_servant_and_system_id_using_user_id ( const PortableServer::ObjectId user_id,
PortableServer::Servant servant,
PortableServer::ObjectId_out  system_id,
CORBA::Short priority 
)

Can be used with any policy. With the SYSTEM_ID policy, user_id is identical to system_id.

◆ find_servant_using_system_id_and_user_id()

ACE_INLINE int TAO_Active_Object_Map::find_servant_using_system_id_and_user_id ( const PortableServer::ObjectId system_id,
const PortableServer::ObjectId user_id,
PortableServer::Servant servant,
TAO_Active_Object_Map_Entry *&  entry 
)

Can be used with any policy.

◆ find_servant_using_user_id()

ACE_INLINE int TAO_Active_Object_Map::find_servant_using_user_id ( const PortableServer::ObjectId user_id,
PortableServer::Servant servant 
)

Can be used with any policy. With the SYSTEM_ID policy, user_id is actually system_id.

◆ find_system_id_using_servant()

ACE_INLINE int TAO_Active_Object_Map::find_system_id_using_servant ( PortableServer::Servant  servant,
PortableServer::ObjectId_out  system_id,
CORBA::Short priority 
)

Must be used with UNIQUE_ID policy. With the SYSTEM_ID policy, user_id is actually system_id.

◆ find_system_id_using_user_id()

ACE_INLINE int TAO_Active_Object_Map::find_system_id_using_user_id ( const PortableServer::ObjectId user_id,
CORBA::Short  priority,
PortableServer::ObjectId_out  system_id 
)

Can be used with any policy. With the SYSTEM_ID policy, user_id is actually system_id.

◆ find_user_id_using_servant()

ACE_INLINE int TAO_Active_Object_Map::find_user_id_using_servant ( PortableServer::Servant  servant,
PortableServer::ObjectId_out  user_id 
)

Must be used with UNIQUE_ID policy. With the SYSTEM_ID policy, user_id is actually system_id.

◆ find_user_id_using_system_id() [1/2]

ACE_INLINE int TAO_Active_Object_Map::find_user_id_using_system_id ( const PortableServer::ObjectId system_id,
PortableServer::ObjectId_out  user_id 
)

Can be used with any policy. When the SYSTEM_ID policy is used, the system_id is identical to user_id.

◆ find_user_id_using_system_id() [2/2]

ACE_INLINE int TAO_Active_Object_Map::find_user_id_using_system_id ( const PortableServer::ObjectId system_id,
PortableServer::ObjectId user_id 
)

Can be used with any policy. When the SYSTEM_ID policy is used, the system_id is identical to user_id.

◆ is_servant_in_map()

ACE_INLINE int TAO_Active_Object_Map::is_servant_in_map ( PortableServer::Servant  servant,
bool &  deactivated 
)

Must be used with UNIQUE_ID policy.

◆ is_user_id_in_map()

bool TAO_Active_Object_Map::is_user_id_in_map ( const PortableServer::ObjectId user_id,
CORBA::Short  priority,
bool &  priorities_match,
bool &  deactivated 
)

Can be used with any policy. With the SYSTEM_ID policy, user_id is actually system_id.

◆ rebind_using_user_id_and_system_id()

ACE_INLINE int TAO_Active_Object_Map::rebind_using_user_id_and_system_id ( PortableServer::Servant  servant,
const PortableServer::ObjectId user_id,
const PortableServer::ObjectId system_id,
TAO_Active_Object_Map_Entry *&  entry 
)

Can be used with any policy.

◆ remaining_activations()

ACE_INLINE CORBA::Boolean TAO_Active_Object_Map::remaining_activations ( PortableServer::Servant  servant)

Are there any remaining activations of servant in the active object map? Can be used with any policy.

◆ set_system_id_size()

void TAO_Active_Object_Map::set_system_id_size ( const TAO_Server_Strategy_Factory::Active_Object_Map_Creation_Parameters creation_parameters)
static

Set the system id size.

◆ system_id_size()

ACE_INLINE size_t TAO_Active_Object_Map::system_id_size ( void  )
static

Can be used with any policy.

◆ unbind_using_user_id()

ACE_INLINE int TAO_Active_Object_Map::unbind_using_user_id ( const PortableServer::ObjectId user_id)

Can be used with any policy. With the SYSTEM_ID policy, user_id is actually system_id.

Member Data Documentation

◆ id_assignment_strategy_

auto_ptr<TAO_Id_Assignment_Strategy> TAO_Active_Object_Map::id_assignment_strategy_

Id assignment strategy.

◆ id_hint_strategy_

auto_ptr<TAO_Id_Hint_Strategy> TAO_Active_Object_Map::id_hint_strategy_

Id hint strategy.

◆ id_uniqueness_strategy_

auto_ptr<TAO_Id_Uniqueness_Strategy> TAO_Active_Object_Map::id_uniqueness_strategy_

Id uniqueness strategy.

◆ lifespan_strategy_

auto_ptr<TAO_Lifespan_Strategy> TAO_Active_Object_Map::lifespan_strategy_

Lifespan strategy.

◆ servant_map_

auto_ptr<servant_map> TAO_Active_Object_Map::servant_map_

Servant map.

◆ system_id_size_

size_t TAO_Active_Object_Map::system_id_size_ = 0
static

Size of the system id produced by the map.

◆ user_id_map_

auto_ptr<user_id_map> TAO_Active_Object_Map::user_id_map_

Id map.

◆ using_active_maps_

bool TAO_Active_Object_Map::using_active_maps_

Flag to see if we are using active maps in this active object map.


The documentation for this class was generated from the following files: