Previous | Table of Contents | Next |
A new IOP::TaggedComponent is defined for transmission of QoS policies within interoperable Object References. The body of
this Component is a CDR encapsulation containing a Messaging::PolicyValueSeq. When creating Object references, Portable Object
Adapters may encode the relevant policies with which it was created in this TaggedComponent. POA Policies that are exported
in this way are clearly noted as client-exposed in their definitions. These policies are reconciled with the effective client-side
override when clients invokes operations on that reference. For example, if a POA is created with a RequestPriorityPolicy
with minimum value 0 and maximum value 10, all Object references created by that POA will have that default RequestPriorityPolicy
encoded in their IOR. Furthermore, if a client sets an overriding RequestPriorityPolicy with both minimum and maximum of 5
(the client requires its requests to have a priority of value 5), the ORB will reconcile the effective Policy for any invocations
on this Object reference to have a priority of 5 (since this value is within the range of priorities allowed by the target).
On the other hand, if the client set an override with minimum value of 11, any invocation attempts would raise the system
exception INV_POLICY.