Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

# 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:

[legend]
List of all members.

## Public Types
typedef ACE_Map< PortableServer::ObjectId, TAO_Active_Object_Map_Entry * > | user_id_map
| Base class of the id map.
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_Generator > | user_id_hash_map
| Id hash map.
typedef ACE_Map_Manager_Adapter< PortableServer::ObjectId, TAO_Active_Object_Map_Entry *, TAO_Incremental_Key_Generator > | user_id_linear_map
| Id linear map.
typedef ACE_Active_Map_Manager_Adapter< PortableServer::ObjectId, TAO_Active_Object_Map_Entry *, TAO_Ignore_Original_Key_Adapter > | user_id_active_map
| Id active map.
typedef ACE_Map< PortableServer::Servant, TAO_Active_Object_Map_Entry * > | servant_map
| Base class of the servant map.
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.
typedef ACE_Map_Manager_Adapter< PortableServer::Servant, TAO_Active_Object_Map_Entry *, ACE_Noop_Key_Generator< PortableServer::Servant > > | servant_linear_map
| Servant linear map.
## 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.
| ~TAO_Active_Object_Map (void)
| Destructor.
int | is_servant_in_map (PortableServer::Servant servant, int &deactivated)
| Must be used with UNIQUE_ID policy.
int | is_user_id_in_map (const PortableServer::ObjectId &user_id, CORBA::Short priority, int &priorities_match, int &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.
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.
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.
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.
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.
## Static Public Member Functions
size_t | system_id_size (void)
| Can be used with any policy.
void | set_system_id_size (const TAO_Server_Strategy_Factory::Active_Object_Map_Creation_Parameters &creation_parameters)
| Set the system id size.
## Public Attributes
user_id_map * | user_id_map_
| Id map.
servant_map * | servant_map_
| Servant map.
TAO_Id_Uniqueness_Strategy * | id_uniqueness_strategy_
| Id uniqueness strategy.
TAO_Lifespan_Strategy * | lifespan_strategy_
| Lifespan strategy.
TAO_Id_Assignment_Strategy * | id_assignment_strategy_
| Id assignment strategy.
TAO_Id_Hint_Strategy * | id_hint_strategy_
| Id hint strategy.
int | using_active_maps_
## Static Public Attributes
size_t | system_id_size_ = 0
| Size of the system id produced by the map.

## Detailed Description

Map of object ids to servants.

Implementation to be used by the POA.

## Member Typedef Documentation

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> > TAO_Active_Object_Map::servant_hash_map

| Servant hash map.

typedef ACE_Map_Manager_Adapter< PortableServer::Servant, TAO_Active_Object_Map_Entry *, ACE_Noop_Key_Generator<PortableServer::Servant> > TAO_Active_Object_Map::servant_linear_map

| Servant linear map.

typedef ACE_Map< PortableServer::Servant, TAO_Active_Object_Map_Entry *> TAO_Active_Object_Map::servant_map

| Base class of the servant map.

typedef ACE_Active_Map_Manager_Adapter< PortableServer::ObjectId, TAO_Active_Object_Map_Entry *, TAO_Ignore_Original_Key_Adapter> TAO_Active_Object_Map::user_id_active_map

| Id active map.

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_Generator> TAO_Active_Object_Map::user_id_hash_map

| Id hash map.

typedef ACE_Map_Manager_Adapter< PortableServer::ObjectId, TAO_Active_Object_Map_Entry *, TAO_Incremental_Key_Generator> TAO_Active_Object_Map::user_id_linear_map

| Id linear map.

typedef ACE_Map< PortableServer::ObjectId, TAO_Active_Object_Map_Entry *> TAO_Active_Object_Map::user_id_map

| Base class of the id map.

## Constructor & Destructor Documentation

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 | ( | void |  | ) |

| Destructor.

## Member Function Documentation

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.

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.

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.

ACE_INLINE size_t TAO_Active_Object_Map::current_size | ( | void |  | ) |

| Size of the map.

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

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

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.

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.

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.

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.

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.

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.

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>.

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>.

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

| Must be used with UNIQUE_ID policy.

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

| Can be used with any policy. With the SYSTEM_ID policy, user_id is actually 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.

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.

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.

ACE_INLINE size_t TAO_Active_Object_Map::system_id_size | ( | void |  | ) | `[static]`

| Can be used with any policy.

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

TAO_Id_Assignment_Strategy* TAO_Active_Object_Map::id_assignment_strategy_

| Id assignment strategy.

TAO_Id_Hint_Strategy* TAO_Active_Object_Map::id_hint_strategy_

| Id hint strategy.

TAO_Id_Uniqueness_Strategy* TAO_Active_Object_Map::id_uniqueness_strategy_

| Id uniqueness strategy.

TAO_Lifespan_Strategy* TAO_Active_Object_Map::lifespan_strategy_

| Lifespan strategy.

servant_map* TAO_Active_Object_Map::servant_map_

| Servant map.

TAO_BEGIN_VERSIONED_NAMESPACE_DECL size_t TAO_Active_Object_Map::system_id_size_ = 0`[static]`

| Size of the system id produced by the map.

user_id_map* TAO_Active_Object_Map::user_id_map_

| Id map.

int 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:

- Active_Object_Map.h
- Active_Object_Map.cpp
- Active_Object_Map.i