#include <POA_Current.h>
Inheritance diagram for TAO::Portable_Server::POA_Current:
Public Member Functions | |
PortableServer::POA_ptr | get_POA (void) |
PortableServer::ObjectId * | get_object_id (void) |
CORBA::Object_ptr | get_reference (void) |
PortableServer::Servant | get_servant (void) |
POA_Current_Impl * | implementation (void) |
Returns the class that implements this interface. | |
POA_Current_Impl * | implementation (POA_Current_Impl *new_current) |
Definition at line 40 of file POA_Current.h.
PortableServer::ObjectId * TAO::Portable_Server::POA_Current::get_object_id | ( | void | ) |
Returns the object id of the current request being invoked. Can raise the NoContext
exception if this function is not invoked in the context of an upcall.
Definition at line 31 of file POA_Current.cpp.
References TAO::Portable_Server::POA_Current_Impl::get_object_id(), and implementation().
00032 { 00033 POA_Current_Impl *impl = this->implementation (); 00034 00035 if (impl == 0) 00036 throw PortableServer::Current::NoContext (); 00037 return impl->get_object_id (); 00038 }
PortableServer::POA_ptr TAO::Portable_Server::POA_Current::get_POA | ( | void | ) |
Returns the POA on which the current request is being invoked. Can raise the NoContext
exception if this function is not invoked in the context of an upcall.
Definition at line 21 of file POA_Current.cpp.
References TAO::Portable_Server::POA_Current_Impl::get_POA(), and implementation().
00022 { 00023 POA_Current_Impl *impl = this->implementation (); 00024 00025 if (impl == 0) 00026 throw PortableServer::Current::NoContext (); 00027 return impl->get_POA (); 00028 }
CORBA::Object_ptr TAO::Portable_Server::POA_Current::get_reference | ( | void | ) |
This operation returns a locally manufactured reference to the object in the context of which it is called. If called outside the context of a POA dispatched operation, a NoContext exception is raised.
Definition at line 51 of file POA_Current.cpp.
References TAO::Portable_Server::POA_Current_Impl::get_reference(), and implementation().
00052 { 00053 POA_Current_Impl *impl = this->implementation (); 00054 00055 if (impl == 0) 00056 throw PortableServer::Current::NoContext (); 00057 return impl->get_reference (); 00058 }
PortableServer::Servant TAO::Portable_Server::POA_Current::get_servant | ( | void | ) |
Returns a reference to the servant that hosts the object in whose context it is called. If called outside the context of the POA dispatched operation, a NoContext exception is raised
Definition at line 41 of file POA_Current.cpp.
References TAO::Portable_Server::POA_Current_Impl::get_servant(), and implementation().
00042 { 00043 POA_Current_Impl *impl = this->implementation (); 00044 00045 if (impl == 0) 00046 throw PortableServer::Current::NoContext (); 00047 return impl->get_servant (); 00048 }
POA_Current_Impl * TAO::Portable_Server::POA_Current::implementation | ( | POA_Current_Impl * | new_current | ) |
Sets the thread-specific pointer to the new POA Current state, returning a pointer to the existing POA Current state.
Definition at line 68 of file POA_Current.cpp.
References TAO_TSS_Resources::instance(), and TAO_TSS_Resources::poa_current_impl_.
00069 { 00070 TAO_TSS_Resources *tss = TAO_TSS_Resources::instance (); 00071 00072 POA_Current_Impl *old = 00073 static_cast <POA_Current_Impl *> 00074 (tss->poa_current_impl_); 00075 tss->poa_current_impl_ = new_current; 00076 return old; 00077 }
POA_Current_Impl * TAO::Portable_Server::POA_Current::implementation | ( | void | ) |
Returns the class that implements this interface.
Definition at line 61 of file POA_Current.cpp.
References TAO_TSS_Resources::instance(), and TAO_TSS_Resources::poa_current_impl_.
Referenced by get_object_id(), get_POA(), get_reference(), and get_servant().
00062 { 00063 return static_cast <POA_Current_Impl *> 00064 (TAO_TSS_Resources::instance ()->poa_current_impl_); 00065 }