diff options
author | coryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1999-04-07 17:14:20 +0000 |
---|---|---|
committer | coryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1999-04-07 17:14:20 +0000 |
commit | a9aa86e32f8180375478ee8e443de06d7f7c2b81 (patch) | |
tree | 3c1ff4952d51f56a09922786025f8760bcc13d09 /TAO/tao/Policy.pidl | |
parent | cfb3ded9436d9e7e76e1a86899b8ecb7062cf505 (diff) | |
download | ATCD-a9aa86e32f8180375478ee8e443de06d7f7c2b81.tar.gz |
ChangeLogTag:Wed Apr 7 12:03:33 1999 Carlos O'Ryan <coryan@cs.wustl.edu>
Diffstat (limited to 'TAO/tao/Policy.pidl')
-rw-r--r-- | TAO/tao/Policy.pidl | 74 |
1 files changed, 68 insertions, 6 deletions
diff --git a/TAO/tao/Policy.pidl b/TAO/tao/Policy.pidl index 3ea88619c24..90362927698 100644 --- a/TAO/tao/Policy.pidl +++ b/TAO/tao/Policy.pidl @@ -1,15 +1,77 @@ +// // $Id$ +// +// ================================================================ +// +// = LIBRARY +// TAO +// +// = FILENAME +// Policy.pidl +// +// = DESCRIPTION +// This file was used to generate the code in Policy{C,S,S_T}.{h,i,cpp} +// The code is then hand-crafted to compile it inside the ORB, avoid +// cyclic dependencies and enforce the locality constraints on +// certain objects. +// +// ================================================================ + + +#pragma prefix "omg.org" module CORBA { - typedef unsigned long PolicyType; + typedef short PolicyErrorCode; + const PolicyErrorCode BAD_POLICY = 0; + const PolicyErrorCode UNSUPPORTED_POLICY = 1; + const PolicyErrorCode BAD_POLICY_TYPE = 2; + const PolicyErrorCode BAD_POLICY_VALUE = 3; + const PolicyErrorCode UNSUPPORTED_POLICY_VALUE = 4; + exception PolicyError + { + PolicyErrorCode reason; + }; + + exception InvalidPolicies + { + sequence<unsigned short> indices; + }; + + typedef unsigned long PolicyType; interface Policy - { - readonly attribute PolicyType policy_type; - Policy copy (); - void destroy (); - }; + { + readonly attribute PolicyType policy_type; + Policy copy (); + void destroy (); + }; typedef sequence<Policy> PolicyList; + + typedef sequence<PolicyType> PolicyTypeSeq; + + enum SetOverrideType + { + SET_OVERRIDE, + ADD_OVERRIDE + }; + + interface PolicyManager + { + PolicyList get_policy_overrides (in PolicyTypeSeq ts); + void set_policy_overrides ( + in PolicyList policies, + in SetOverrideType set_add) + raises (InvalidPolicies); + }; + + interface Current + { + }; + + interface PolicyCurrent : PolicyManager, Current + { + }; + }; |