TAO::Portable_Server::RequestProcessingStrategyAOMOnly Class Reference

#include <RequestProcessingStrategyAOMOnly.h>

Inheritance diagram for TAO::Portable_Server::RequestProcessingStrategyAOMOnly:

Inheritance graph
[legend]
Collaboration diagram for TAO::Portable_Server::RequestProcessingStrategyAOMOnly:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 RequestProcessingStrategyAOMOnly (void)
PortableServer::ServantManager_ptr get_servant_manager (void)
void set_servant_manager (PortableServer::ServantManager_ptr imgr)
void set_servant (PortableServer::Servant servant)
PortableServer::Servant get_servant (void)
virtual TAO_SERVANT_LOCATION locate_servant (const PortableServer::ObjectId &system_id, PortableServer::Servant &servant)
virtual PortableServer::Servant locate_servant (const char *operation, const PortableServer::ObjectId &system_id, TAO::Portable_Server::Servant_Upcall &servant_upcall, TAO::Portable_Server::POA_Current_Impl &poa_current_impl, bool &wait_occurred_restart_call)
virtual PortableServer::Servant system_id_to_servant (const PortableServer::ObjectId &system_id)
virtual PortableServer::Servant id_to_servant (const PortableServer::ObjectId &id)
virtual void cleanup_servant (PortableServer::Servant servant, const PortableServer::ObjectId &user_id)
virtual void etherealize_objects (CORBA::Boolean etherealize_objects)
virtual PortableServer::ObjectIdservant_to_id (PortableServer::Servant servant)
virtual void post_invoke_servant_cleanup (const PortableServer::ObjectId &system_id, const TAO::Portable_Server::Servant_Upcall &servant_upcall)
virtual ::PortableServer::RequestProcessingPolicyValue type () const

Detailed Description

Request Processing Strategy which only uses the Active Object Map (AOM)

Definition at line 37 of file RequestProcessingStrategyAOMOnly.h.


Constructor & Destructor Documentation

TAO::Portable_Server::RequestProcessingStrategyAOMOnly::RequestProcessingStrategyAOMOnly ( void   ) 

Definition at line 20 of file RequestProcessingStrategyAOMOnly.cpp.

00021     {
00022     }


Member Function Documentation

void TAO::Portable_Server::RequestProcessingStrategyAOMOnly::cleanup_servant ( PortableServer::Servant  servant,
const PortableServer::ObjectId user_id 
) [virtual]

Implements TAO::Portable_Server::RequestProcessingStrategy.

Definition at line 101 of file RequestProcessingStrategyAOMOnly.cpp.

References TAO_ServantBase::_remove_ref().

00104     {
00105       if (servant)
00106         {
00107           // ATTENTION: Trick locking here, see class header for details
00108           Non_Servant_Upcall non_servant_upcall (*this->poa_);
00109           ACE_UNUSED_ARG (non_servant_upcall);
00110 
00111           servant->_remove_ref ();
00112         }
00113 
00114       // This operation causes the association of the Object Id specified
00115       // by the oid parameter and its servant to be removed from the
00116       // Active Object Map.
00117       if (this->poa_->unbind_using_user_id (user_id) != 0)
00118         {
00119           throw ::CORBA::OBJ_ADAPTER ();
00120         }
00121     }

void TAO::Portable_Server::RequestProcessingStrategyAOMOnly::etherealize_objects ( CORBA::Boolean  etherealize_objects  )  [virtual]

Implements TAO::Portable_Server::RequestProcessingStrategy.

Definition at line 124 of file RequestProcessingStrategyAOMOnly.cpp.

00126     {
00127     }

PortableServer::Servant TAO::Portable_Server::RequestProcessingStrategyAOMOnly::get_servant ( void   )  [virtual]

Implements TAO::Portable_Server::RequestProcessingStrategy.

Definition at line 47 of file RequestProcessingStrategyAOMOnly.cpp.

00048     {
00049       throw PortableServer::POA::WrongPolicy ();
00050     }

PortableServer::ServantManager_ptr TAO::Portable_Server::RequestProcessingStrategyAOMOnly::get_servant_manager ( void   )  [virtual]

Implements TAO::Portable_Server::RequestProcessingStrategy.

Definition at line 27 of file RequestProcessingStrategyAOMOnly.cpp.

00028     {
00029       throw PortableServer::POA::WrongPolicy ();
00030     }

PortableServer::Servant TAO::Portable_Server::RequestProcessingStrategyAOMOnly::id_to_servant ( const PortableServer::ObjectId id  )  [virtual]

Implements TAO::Portable_Server::RequestProcessingStrategy.

Definition at line 94 of file RequestProcessingStrategyAOMOnly.cpp.

References TAO::Portable_Server::RequestProcessingStrategy::poa_, and TAO_Root_POA::user_id_to_servant_i().

00096     {
00097       return this->poa_->user_id_to_servant_i (id);
00098     }

PortableServer::Servant TAO::Portable_Server::RequestProcessingStrategyAOMOnly::locate_servant ( const char *  operation,
const PortableServer::ObjectId system_id,
TAO::Portable_Server::Servant_Upcall servant_upcall,
TAO::Portable_Server::POA_Current_Impl poa_current_impl,
bool &  wait_occurred_restart_call 
) [virtual]

Implements TAO::Portable_Server::RequestProcessingStrategy.

Definition at line 63 of file RequestProcessingStrategyAOMOnly.cpp.

References CORBA::COMPLETED_NO, TAO_Root_POA::find_servant(), CORBA::OMGVMCID, and TAO::Portable_Server::RequestProcessingStrategy::poa_.

00069     {
00070       PortableServer::Servant servant = 0;
00071 
00072       servant = this->poa_->find_servant (system_id,
00073                                           servant_upcall,
00074                                           poa_current_impl);
00075 
00076       if (servant == 0)
00077         {
00078           throw ::CORBA::OBJECT_NOT_EXIST (
00079             CORBA::OMGVMCID | 2,
00080             CORBA::COMPLETED_NO);
00081         }
00082 
00083       return servant;
00084     }

TAO_SERVANT_LOCATION TAO::Portable_Server::RequestProcessingStrategyAOMOnly::locate_servant ( const PortableServer::ObjectId system_id,
PortableServer::Servant servant 
) [virtual]

Implements TAO::Portable_Server::RequestProcessingStrategy.

Definition at line 55 of file RequestProcessingStrategyAOMOnly.cpp.

References TAO::Portable_Server::RequestProcessingStrategy::poa_, and TAO_Root_POA::servant_present().

00058     {
00059       return this->poa_->servant_present (system_id, servant);
00060     }

void TAO::Portable_Server::RequestProcessingStrategyAOMOnly::post_invoke_servant_cleanup ( const PortableServer::ObjectId system_id,
const TAO::Portable_Server::Servant_Upcall servant_upcall 
) [virtual]

Implements TAO::Portable_Server::RequestProcessingStrategy.

Definition at line 137 of file RequestProcessingStrategyAOMOnly.cpp.

00140     {
00141     }

PortableServer::ObjectId * TAO::Portable_Server::RequestProcessingStrategyAOMOnly::servant_to_id ( PortableServer::Servant  servant  )  [virtual]

Implements TAO::Portable_Server::RequestProcessingStrategy.

Definition at line 130 of file RequestProcessingStrategyAOMOnly.cpp.

References TAO::Portable_Server::RequestProcessingStrategy::poa_, and TAO_Root_POA::servant_to_user_id().

00132     {
00133       return this->poa_->servant_to_user_id (servant);
00134     }

void TAO::Portable_Server::RequestProcessingStrategyAOMOnly::set_servant ( PortableServer::Servant  servant  )  [virtual]

Implements TAO::Portable_Server::RequestProcessingStrategy.

Definition at line 40 of file RequestProcessingStrategyAOMOnly.cpp.

00042     {
00043       throw PortableServer::POA::WrongPolicy ();
00044     }

void TAO::Portable_Server::RequestProcessingStrategyAOMOnly::set_servant_manager ( PortableServer::ServantManager_ptr  imgr  )  [virtual]

Implements TAO::Portable_Server::RequestProcessingStrategy.

Definition at line 33 of file RequestProcessingStrategyAOMOnly.cpp.

00035     {
00036       throw PortableServer::POA::WrongPolicy ();
00037     }

PortableServer::Servant TAO::Portable_Server::RequestProcessingStrategyAOMOnly::system_id_to_servant ( const PortableServer::ObjectId system_id  )  [virtual]

Implements TAO::Portable_Server::RequestProcessingStrategy.

Definition at line 87 of file RequestProcessingStrategyAOMOnly.cpp.

References TAO_Root_POA::find_servant(), and TAO::Portable_Server::RequestProcessingStrategy::poa_.

00089     {
00090       return this->poa_->find_servant (system_id);
00091     }

PortableServer::RequestProcessingPolicyValue TAO::Portable_Server::RequestProcessingStrategyAOMOnly::type (  )  const [virtual]

Implements TAO::Portable_Server::RequestProcessingStrategy.

Definition at line 144 of file RequestProcessingStrategyAOMOnly.cpp.

00145     {
00146       return ::PortableServer::USE_ACTIVE_OBJECT_MAP_ONLY;
00147     }


The documentation for this class was generated from the following files:
Generated on Tue Feb 2 17:41:47 2010 for TAO_PortableServer by  doxygen 1.4.7