summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohnny Willemsen <jwillemsen@remedy.nl>2005-07-27 09:45:03 +0000
committerJohnny Willemsen <jwillemsen@remedy.nl>2005-07-27 09:45:03 +0000
commit21191a1085cca0163ce1079b6b94e4f3c46688c0 (patch)
tree6581f370cdd4d3db2e4811c2216ae740c6455c55
parent0727ddc5267854215a8e988f345f345c15d775e0 (diff)
downloadATCD-21191a1085cca0163ce1079b6b94e4f3c46688c0.tar.gz
ChangeLogTag: Wed Jul 27 08:39:12 UTC 2005 Johnny Willemsen <jwillemsen@remedy.nl>
-rw-r--r--TAO/tao/PortableServer/Collocated_Object_Proxy_Broker.cpp93
1 files changed, 46 insertions, 47 deletions
diff --git a/TAO/tao/PortableServer/Collocated_Object_Proxy_Broker.cpp b/TAO/tao/PortableServer/Collocated_Object_Proxy_Broker.cpp
index b42eb4c6d23..dd27ae99b0f 100644
--- a/TAO/tao/PortableServer/Collocated_Object_Proxy_Broker.cpp
+++ b/TAO/tao/PortableServer/Collocated_Object_Proxy_Broker.cpp
@@ -19,6 +19,52 @@ ACE_RCSID (PortableServer,
namespace TAO
{
+ CORBA::Boolean
+ Collocated_Object_Proxy_Broker::_is_a (CORBA::Object_ptr target,
+ const char *type_id
+ ACE_ENV_ARG_DECL)
+ {
+ 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 (
+ stub->profile_in_use ()->object_key (),
+ "_is_a",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+
+ servant_upcall.pre_invoke_collocated_request (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+
+ return servant_upcall.servant ()->_is_a (type_id
+ ACE_ENV_ARG_PARAMETER);
+ }
+
+ // Direct collocation strategy is used.
+ if (target->_servant () != 0)
+ {
+ return target->_servant ()->_is_a (type_id
+ ACE_ENV_ARG_PARAMETER);
+ }
+
+ return 0;
+ }
+
+#if (TAO_HAS_MINIMUM_CORBA == 0)
+
char *
Collocated_Object_Proxy_Broker::_repository_id (CORBA::Object_ptr target
ACE_ENV_ARG_DECL)
@@ -76,53 +122,6 @@ namespace TAO
return _tao_retval;
}
-
- CORBA::Boolean
- Collocated_Object_Proxy_Broker::_is_a (CORBA::Object_ptr target,
- const char *type_id
- ACE_ENV_ARG_DECL)
- {
- 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 (
- stub->profile_in_use ()->object_key (),
- "_is_a",
- forward_to.out ()
- ACE_ENV_ARG_PARAMETER
- );
- ACE_CHECK_RETURN (0);
-
- servant_upcall.pre_invoke_collocated_request (
- ACE_ENV_SINGLE_ARG_PARAMETER
- );
- ACE_CHECK_RETURN (0);
-
- return servant_upcall.servant ()->_is_a (type_id
- ACE_ENV_ARG_PARAMETER);
- }
-
- // Direct collocation strategy is used.
- if (target->_servant () != 0)
- {
- return target->_servant ()->_is_a (type_id
- ACE_ENV_ARG_PARAMETER);
- }
-
- return 0;
- }
-
-#if (TAO_HAS_MINIMUM_CORBA == 0)
-
CORBA::Boolean
Collocated_Object_Proxy_Broker::_non_existent (CORBA::Object_ptr target
ACE_ENV_ARG_DECL)