Previous Table of Contents Next


22.2.6 Queue Ordering


   22.2.6.1 typedef short Ordering

   Describes the ordering policy for the consideration of routers that prioritize delivery of requests. Values of type Ordering are used in conjunction with a QueueOrderPolicy as described in “interface QueueOrderPolicy? on page 22-12. This policy is only used if the effective RoutingType is at least ROUTE_FORWARD (which implies the use of a Router). Support for multiple ordering policies is indicated by “or?-ing together individual values in a combined Ordering.

   22.2.6.2 interface QueueOrderPolicy

   This interface is a local object derived from CORBA::Policy. It is used to indicate the basis upon which a Router orders delivery of requests. When instances of QueueOrderPolicy are created, a value of type Messaging::Ordering is passed to CORBA::ORB::create_policy. This specified Ordering value can be the result of “or?-ing together individual orderings. An instance of QueueOrderPolicy may be specified when creating a POA (and therefore may be represented in Object references). In addition, an Object reference’s QueueOrderPolicy may be overridden by the client. If set on both the client and server, reconciliation is performed by intersecting the server-specified list of supported Ordering values with the list of values in the client’s effective override. When an instance of QueueOrderPolicy is propagated within a PolicyValue in a TAG_POLICIES Profile Component or INVOCATION_POLICIES Service Context, the ptype has value QUEUE_ORDER_POLICY_TYPE and the pvalue is a CDR encapsulation containing a Messaging::Ordering.