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


Public Member Functions | |
| virtual 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. | |
Strategy for the TRANSIENT policy.
Definition at line 411 of file Active_Object_Map.h.
|
||||||||||||||||||||
|
Can be used with any policy.
Implements TAO_Lifespan_Strategy. Definition at line 645 of file Active_Object_Map.cpp. References TAO_Active_Object_Map_Entry::deactivated_, TAO_Id_Hint_Strategy::find(), TAO_Active_Object_Map::id_hint_strategy_, TAO_Active_Object_Map_Entry::servant_, and TAO_Active_Object_Map::user_id_map_.
00649 {
00650 int result = this->active_object_map_->id_hint_strategy_->find (system_id,
00651 entry);
00652 if (result == 0)
00653 {
00654 if (entry->deactivated_)
00655 result = -1;
00656 else if (entry->servant_ == 0)
00657 result = -1;
00658 else
00659 servant = entry->servant_;
00660 }
00661 else
00662 {
00663 result = this->active_object_map_->user_id_map_->find (user_id,
00664 entry);
00665 if (result == 0)
00666 {
00667 if (entry->deactivated_)
00668 result = -1;
00669 else if (entry->servant_ == 0)
00670 result = -1;
00671 else
00672 servant = entry->servant_;
00673 }
00674 }
00675
00676 if (result == -1)
00677 entry = 0;
00678
00679 return result;
00680 }
|
1.3.6