#include <Active_Object_Map.h>
Inheritance diagram for TAO_System_Id_With_Multiple_Id_Strategy:


Public Member Functions | |
| virtual int | bind_using_system_id (PortableServer::Servant servant, CORBA::Short priority, TAO_Active_Object_Map_Entry *&entry) |
| Must be used with SYSTEM_ID policy. | |
Strategy for the SYSTEM_ID policy (with MULTIPLE_ID policy).
Definition at line 511 of file Active_Object_Map.h.
|
||||||||||||||||
|
Must be used with SYSTEM_ID policy.
Implements TAO_Id_Assignment_Strategy. Definition at line 784 of file Active_Object_Map.cpp. References ACE_NEW_RETURN, TAO_Id_Hint_Strategy::bind(), TAO_Active_Object_Map::id_hint_strategy_, TAO_Active_Object_Map_Entry::priority_, TAO_Active_Object_Map_Entry::servant_, TAO_Active_Object_Map_Entry::user_id_, and TAO_Active_Object_Map::user_id_map_.
00787 {
00788 ACE_NEW_RETURN (entry,
00789 TAO_Active_Object_Map_Entry,
00790 -1);
00791 int result = this->active_object_map_->user_id_map_->bind_create_key (entry,
00792 entry->user_id_);
00793 if (result == 0)
00794 {
00795 entry->servant_ = servant;
00796 entry->priority_ = priority;
00797
00798 result = this->active_object_map_->id_hint_strategy_->bind (*entry);
00799
00800 if (result != 0)
00801 {
00802 this->active_object_map_->user_id_map_->unbind (entry->user_id_);
00803 delete entry;
00804 }
00805 }
00806 else
00807 delete entry;
00808
00809 return result;
00810 }
|
1.3.6