Collocated_Object_Proxy_Broker. More...
#include <Collocated_Object_Proxy_Broker.h>
Public Member Functions | |
virtual CORBA::Boolean | _is_a (CORBA::Object_ptr target, const char *logical_type_id) |
virtual CORBA::Boolean | _non_existent (CORBA::Object_ptr target) |
virtual CORBA::InterfaceDef * | _get_interface (CORBA::Object_ptr target) |
virtual CORBA::Object_ptr | _get_component (CORBA::Object_ptr target) |
virtual char * | _repository_id (CORBA::Object_ptr target) |
Collocated_Object_Proxy_Broker.
A broker for standard CORBA::Object calls that needs to be made on remote objects.
Definition at line 41 of file Collocated_Object_Proxy_Broker.h.
CORBA::Object_ptr TAO::Collocated_Object_Proxy_Broker::_get_component | ( | CORBA::Object_ptr | target | ) | [virtual] |
Implements TAO::Object_Proxy_Broker.
Definition at line 117 of file Collocated_Object_Proxy_Broker.cpp.
{ _tao_retval = target->_servant ()->_non_existent (); } return _tao_retval; } #if !defined (CORBA_E_COMPACT) && !defined (CORBA_E_MICRO) CORBA::Object_ptr Collocated_Object_Proxy_Broker::_get_component (CORBA::Object_ptr target) { CORBA::Object_var _tao_retval (CORBA::Object::_nil ()); TAO_Stub *stub = target->_stubobj (); try { // Which collocation strategy should we use? if (stub != 0 && stub->servant_orb_var ()->orb_core () ->get_collocation_strategy () == TAO_ORB_Core::THRU_POA) { TAO::Portable_Server::Servant_Upcall servant_upcall ( stub->servant_orb_var ()->orb_core ()); CORBA::Object_var forward_to; servant_upcall.prepare_for_upcall ( stub->profile_in_use ()->object_key (), "_component",
CORBA::InterfaceDef_ptr TAO::Collocated_Object_Proxy_Broker::_get_interface | ( | CORBA::Object_ptr | target | ) | [virtual] |
Implements TAO::Object_Proxy_Broker.
Definition at line 156 of file Collocated_Object_Proxy_Broker.cpp.
{ _tao_retval = target->_servant ()->_get_component (); } } catch (const ::CORBA::OBJECT_NOT_EXIST&) { // Ignore this exception. } return _tao_retval._retn (); } CORBA::InterfaceDef_ptr Collocated_Object_Proxy_Broker::_get_interface (CORBA::Object_ptr target) { CORBA::InterfaceDef_ptr _tao_retval = 0; TAO_Stub *stub = target->_stubobj (); try { // Which collocation strategy should we use? if (stub != 0 && stub->servant_orb_var ()->orb_core ()->get_collocation_strategy () == TAO_ORB_Core::THRU_POA) { TAO::Portable_Server::Servant_Upcall servant_upcall ( target->_stubobj ()->servant_orb_var ()->orb_core ()); CORBA::Object_var forward_to; servant_upcall.prepare_for_upcall ( target->_stubobj ()->object_key (), "_interface", forward_to.out ()); servant_upcall.pre_invoke_collocated_request ();
CORBA::Boolean TAO::Collocated_Object_Proxy_Broker::_is_a | ( | CORBA::Object_ptr | target, | |
const char * | logical_type_id | |||
) | [virtual] |
Please see the documentation in Object_Proxy_Broker.h for details.
Implements TAO::Object_Proxy_Broker.
Definition at line 6 of file Collocated_Object_Proxy_Broker.cpp.
: Collocated_Object_Proxy_Broker.cpp 79610 2007-09-07 18:17:34Z johnnyw $") TAO_BEGIN_VERSIONED_NAMESPACE_DECL namespace TAO { CORBA::Boolean Collocated_Object_Proxy_Broker::_is_a (CORBA::Object_ptr target, const char *type_id) { TAO_Stub *stub = target->_stubobj (); // Which collocation strategy should we use? if (stub != 0 && stub->servant_orb_var ()->orb_core ()->get_collocation_strategy () == TAO_ORB_Core::THRU_POA) { TAO::Portable_Server::Servant_Upcall servant_upcall ( stub->servant_orb_var ()->orb_core ()); CORBA::Object_var forward_to; servant_upcall.prepare_for_upcall (
CORBA::Boolean TAO::Collocated_Object_Proxy_Broker::_non_existent | ( | CORBA::Object_ptr | target | ) | [virtual] |
Implements TAO::Object_Proxy_Broker.
Definition at line 81 of file Collocated_Object_Proxy_Broker.cpp.
{ _tao_retval = target->_servant ()->_repository_id (); } } catch (const ::CORBA::OBJECT_NOT_EXIST&) { // Ignore this exception. } return _tao_retval; } CORBA::Boolean Collocated_Object_Proxy_Broker::_non_existent (CORBA::Object_ptr target) { CORBA::Boolean _tao_retval = true; TAO_Stub *stub = target->_stubobj (); // Which collocation strategy should we use? if (stub != 0 && stub->servant_orb_var ()->orb_core () ->get_collocation_strategy () == TAO_ORB_Core::THRU_POA) { TAO::Portable_Server::Servant_Upcall servant_upcall ( target->_stubobj ()->servant_orb_var ()->orb_core ()); CORBA::Object_var forward_to;
char * TAO::Collocated_Object_Proxy_Broker::_repository_id | ( | CORBA::Object_ptr | target | ) | [virtual] |
Implements TAO::Object_Proxy_Broker.
Definition at line 42 of file Collocated_Object_Proxy_Broker.cpp.
{ return target->_servant ()->_is_a (type_id); } return 0; } #if (TAO_HAS_MINIMUM_CORBA == 0) char * Collocated_Object_Proxy_Broker::_repository_id (CORBA::Object_ptr target) { TAO_Stub *stub = target->_stubobj (); char * _tao_retval = 0; try { // Which collocation strategy should we use? if (stub != 0 && stub->servant_orb_var ()->orb_core () ->get_collocation_strategy () == TAO_ORB_Core::THRU_POA) { TAO::Portable_Server::Servant_Upcall servant_upcall ( stub->servant_orb_var ()->orb_core ()); CORBA::Object_var forward_to; servant_upcall.prepare_for_upcall ( stub->profile_in_use ()->object_key (), "_repository_id", forward_to.out ());