Changes to attempt to silence bcc64x
[ACE_TAO.git] / TAO / tao / PortableServer / POA.pidl
blob5a931cd93e65e32d0be565daa24c136990e1ee61
1 /**
2  * @file POA.pidl
3  *
4  * @brief Pre-compiled IDL source for the PortableServer module.
5  */
7 #ifndef _POA_SERVER_IDL_
8 #define _POA_SERVER_IDL_
10 ///FUZZ: disable check_for_include/
11 #include "tao/Policy_Forward.pidl"
12 #include "tao/OctetSeq.pidl"
13 #include "tao/orb_types.pidl"
14 #include "tao/PortableServer/PS_Forward.pidl"
15 #include "tao/PortableServer/IdAssignmentPolicy.pidl"
16 #include "tao/PortableServer/IdUniquenessPolicy.pidl"
17 #include "tao/PortableServer/ImplicitActivationPolicy.pidl"
18 #include "tao/PortableServer/LifespanPolicy.pidl"
19 #include "tao/PortableServer/RequestProcessingPolicy.pidl"
20 #include "tao/PortableServer/ServantRetentionPolicy.pidl"
21 #include "tao/PortableServer/ThreadPolicy.pidl"
23 #pragma prefix "omg.org"
25 module PortableServer
27 # pragma version PortableServer 2.3
29   typedef sequence<POA> POAList;
31   // Policy IDs
32 #   if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO)
33   const CORBA::PolicyType THREAD_POLICY_ID                = 16;
34 #   endif
35 #   if ! defined (CORBA_E_MICRO)
36   const CORBA::PolicyType LIFESPAN_POLICY_ID              = 17;
37   const CORBA::PolicyType ID_UNIQUENESS_POLICY_ID         = 18;
38   const CORBA::PolicyType ID_ASSIGNMENT_POLICY_ID         = 19;
39 #   endif
40 #   if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO)
41   const CORBA::PolicyType IMPLICIT_ACTIVATION_POLICY_ID   = 20;
42   const CORBA::PolicyType SERVANT_RETENTION_POLICY_ID     = 21;
43   const CORBA::PolicyType REQUEST_PROCESSING_POLICY_ID    = 22;
44 #   endif
46   // Forward declaration POAManager interface.
47   local interface POAManager;
49 #if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO)
50   // Forward declaration POAManagerFactory interface.
51   local interface POAManagerFactory;
52 #endif
54 #if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO) && ! defined (TAO_HAS_MINIMUM_POA)
55   // Forward declaration AdapterActivator interface.
56   local interface AdapterActivator;
57 #endif
59 #if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO)
60   // Forward declaration servantManager interface.
61   local interface ServantManager;
62 #endif
64   local interface POA
65   {
66 #   pragma version POA 2.3
68 #       if ! defined (CORBA_E_MICRO)
69     exception AdapterAlreadyExists {};
70     exception AdapterNonExistent {};
71     exception InvalidPolicy {unsigned short index;};
72 #if !defined (TAO_HAS_MINIMUM_POA) && !defined (CORBA_E_COMPACT)
73     exception NoServant {};
74 #endif
75 #       endif
76     exception ObjectAlreadyActive {};
77     exception ObjectNotActive {};
78     exception ServantAlreadyActive {};
79     exception ServantNotActive {};
80     exception WrongAdapter {};
81     exception WrongPolicy {};
84 #       if ! defined (CORBA_E_MICRO)
85     /// POA creation and destruction.
86     POA create_POA (in string adapter_name,
87                     in POAManager a_POAManager,
88                     in CORBA::PolicyList policies)
89       raises (AdapterAlreadyExists,
90               InvalidPolicy);
92     POA find_POA (in string adapter_name,
93                   in boolean activate_it)
94       raises (AdapterNonExistent);
95 #endif
97     void destroy (in boolean etherealize_objects,
98                   in boolean wait_for_completion);
100     // Factories for Policy objects.
102 #       if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO) && !defined (TAO_HAS_MINIMUM_POA)
103     ThreadPolicy create_thread_policy (in ThreadPolicyValue value);
104 #endif
105 #       if  ! defined (CORBA_E_MICRO)
106     LifespanPolicy create_lifespan_policy (in LifespanPolicyValue value);
108     IdUniquenessPolicy  create_id_uniqueness_policy (
109         in IdUniquenessPolicyValue value);
111     IdAssignmentPolicy  create_id_assignment_policy (
112         in IdAssignmentPolicyValue value);
113 #endif
114 #       if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO) && !defined (TAO_HAS_MINIMUM_POA)
115     ImplicitActivationPolicy create_implicit_activation_policy (
116         in ImplicitActivationPolicyValue value);
118     ServantRetentionPolicy create_servant_retention_policy (
119         in ServantRetentionPolicyValue value);
121     RequestProcessingPolicy create_request_processing_policy (
122         in RequestProcessingPolicyValue value);
123 #       endif
125     // POA attributes
126     readonly attribute string       the_name;
127     readonly attribute POA          the_parent;
128 #       if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO)
129     readonly attribute POAList      the_children;
130 #       endif
131     readonly attribute POAManager   the_POAManager;
132 #       if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO) && !defined (TAO_HAS_MINIMUM_POA)
133     readonly attribute POAManagerFactory   the_POAManagerFactory;
134 #   endif
135 #       if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO) && !defined (TAO_HAS_MINIMUM_POA)
136     attribute AdapterActivator      the_activator;
137 #       endif
139 #       if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO) && !defined (TAO_HAS_MINIMUM_POA)
140     // Servant Manager registration:
141     ServantManager get_servant_manager ()
142       raises (WrongPolicy);
144     void set_servant_manager (in ServantManager imgr)
145       raises (WrongPolicy);
147     // Operations for the USE_DEFAULT_SERVANT policy.
148     Servant get_servant ()
149       raises (NoServant,
150               WrongPolicy);
152     void set_servant (in Servant p_servant)
153       raises (WrongPolicy);
154 #       endif
156     // Object activation and deactivation.
157     ObjectId  activate_object (in Servant p_servant)
158       raises (ServantAlreadyActive,
159               WrongPolicy);
161     void activate_object_with_id (in ObjectId id,
162                                   in Servant p_servant)
163       raises (ServantAlreadyActive,
164               ObjectAlreadyActive,
165               WrongPolicy);
167     void deactivate_object (in ObjectId oid)
168       raises (ObjectNotActive, WrongPolicy);
170     // Reference creation operations.
171     Object create_reference (in CORBA::RepositoryId intf)
172       raises (WrongPolicy);
174 #if !defined (CORBA_E_MICRO)
175     Object create_reference_with_id (in ObjectId oid,
176                                      in CORBA::RepositoryId intf);
177 #endif
179     // Identity mapping operations:.
180     ObjectId servant_to_id (in Servant p_servant)
181       raises (ServantNotActive,
182               WrongPolicy);
184     Object servant_to_reference (in Servant p_servant)
185       raises (ServantNotActive, WrongPolicy);
187     Servant reference_to_servant (in Object reference)
188       raises (ObjectNotActive,
189               WrongAdapter,
190               WrongPolicy);
192     ObjectId reference_to_id (in Object reference)
193       raises (WrongAdapter,
194               WrongPolicy);
196     Servant id_to_servant (in ObjectId oid)
197       raises (ObjectNotActive, WrongPolicy);
199     Object id_to_reference (in ObjectId oid)
200       raises (ObjectNotActive,
201               WrongPolicy);
203     readonly attribute CORBA::OctetSeq id;
204   };
207 #endif // _PORTABLE_SERVER_IDL_