-
Key: CORBA3-14
-
Legacy Issue Number: 3615
-
Status: closed
-
Source: foxfield-sw.demon.co.uk ( Nick Sharman)
-
Summary:
(All document refs to ptc/00-04-05)
Sec. 4.3.7.1 (Object::get_policy) talks about "the Policy as specified in
the IOR". Policies get translated to IOR components, but AFAIK there's no
general way that a component can be unscrambled to give a Policy. This
suggests that we need another interception point, effectively the inverse of
the existing IORInterceptor (sec. 21.5), that allows an IOR component to be
converted into a Policy on the client side.I suggest something like:
local interface ReceiveIORInterceptor : Interceptor
{ void establish_policies (in ReceiveIORInfo info); };
local interface ReceiveIORInfo
{ CORBA::Policy set_policy (in CORBA::Policy policy); IOP::TaggedComponent get_ior_component (); IOP::TaggedComponent get_ior_component_from_profile ( in IOP::ProfileId profile_id); };
and an extra operation add_receive_ior_interceptor in ORBInitInfo.
ReceiveIORInterceptor::establish_policies provides the opportunity for an
interceptor to turn IOR components back into Policies, using the
interceptor's Policy Factories directly or indirectly via
ORB::create_policy.The ORB will call this method on all registered ReceiveIORInterceptor
objects during or before the first call of Object::get_policy (we needn't be
more specific - this would allow eager calls on unmarshalling or lazy calls
within Object::get_policy). -
Reported: CPP 1.1 — Mon, 15 May 2000 04:00 GMT
-
Disposition: Resolved — CORBA 3.0.2
-
Disposition Summary:
see above
-
Updated: Fri, 6 Mar 2015 20:58 GMT