Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044 #ifndef _POA_SERVER_IDL_
00045 #define _POA_SERVER_IDL_
00046
00047
00048 #include "tao/Policy_Forward.pidl"
00049 #include "tao/OctetSeq.pidl"
00050 #include "tao/orb_types.pidl"
00051 #include "tao/PortableServer/PS_Forward.pidl"
00052 #include "tao/PortableServer/IdAssignmentPolicy.pidl"
00053 #include "tao/PortableServer/IdUniquenessPolicy.pidl"
00054 #include "tao/PortableServer/ImplicitActivationPolicy.pidl"
00055 #include "tao/PortableServer/LifespanPolicy.pidl"
00056 #include "tao/PortableServer/RequestProcessingPolicy.pidl"
00057 #include "tao/PortableServer/ServantRetentionPolicy.pidl"
00058 #include "tao/PortableServer/ThreadPolicy.pidl"
00059
00060 #pragma prefix "omg.org"
00061
00062 module PortableServer
00063 {
00064 # pragma version PortableServer 2.3
00065
00066 typedef sequence<POA> POAList;
00067
00068
00069 # if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO)
00070 const CORBA::PolicyType THREAD_POLICY_ID = 16;
00071 # endif
00072 # if ! defined (CORBA_E_MICRO)
00073 const CORBA::PolicyType LIFESPAN_POLICY_ID = 17;
00074 const CORBA::PolicyType ID_UNIQUENESS_POLICY_ID = 18;
00075 const CORBA::PolicyType ID_ASSIGNMENT_POLICY_ID = 19;
00076 # endif
00077 # if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO)
00078 const CORBA::PolicyType IMPLICIT_ACTIVATION_POLICY_ID = 20;
00079 const CORBA::PolicyType SERVANT_RETENTION_POLICY_ID = 21;
00080 const CORBA::PolicyType REQUEST_PROCESSING_POLICY_ID = 22;
00081 # endif
00082
00083
00084 local interface POAManager;
00085
00086 #if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO)
00087
00088 local interface POAManagerFactory;
00089 #endif
00090
00091 #if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO) && ! defined (TAO_HAS_MINIMUM_POA)
00092
00093 local interface AdapterActivator;
00094 #endif
00095
00096 #if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO)
00097
00098 local interface ServantManager;
00099 #endif
00100
00101 local interface POA
00102 {
00103 # pragma version POA 2.3
00104
00105 # if ! defined (CORBA_E_MICRO)
00106 exception AdapterAlreadyExists {};
00107 exception AdapterNonExistent {};
00108 exception InvalidPolicy {unsigned short index;};
00109 #if !defined (TAO_HAS_MINIMUM_POA) && !defined (CORBA_E_COMPACT)
00110 exception NoServant {};
00111 #endif
00112 # endif
00113 exception ObjectAlreadyActive {};
00114 exception ObjectNotActive {};
00115 exception ServantAlreadyActive {};
00116 exception ServantNotActive {};
00117 exception WrongAdapter {};
00118 exception WrongPolicy {};
00119
00120
00121 # if ! defined (CORBA_E_MICRO)
00122
00123 POA create_POA (in string adapter_name,
00124 in POAManager a_POAManager,
00125 in CORBA::PolicyList policies)
00126 raises (AdapterAlreadyExists,
00127 InvalidPolicy);
00128
00129 POA find_POA (in string adapter_name,
00130 in boolean activate_it)
00131 raises (AdapterNonExistent);
00132 #endif
00133
00134 void destroy (in boolean etherealize_objects,
00135 in boolean wait_for_completion);
00136
00137
00138
00139 # if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO) && !defined (TAO_HAS_MINIMUM_POA)
00140 ThreadPolicy create_thread_policy (in ThreadPolicyValue value);
00141 #endif
00142 # if ! defined (CORBA_E_MICRO)
00143 LifespanPolicy create_lifespan_policy (in LifespanPolicyValue value);
00144
00145 IdUniquenessPolicy create_id_uniqueness_policy (
00146 in IdUniquenessPolicyValue value);
00147
00148 IdAssignmentPolicy create_id_assignment_policy (
00149 in IdAssignmentPolicyValue value);
00150 #endif
00151 # if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO) && !defined (TAO_HAS_MINIMUM_POA)
00152 ImplicitActivationPolicy create_implicit_activation_policy (
00153 in ImplicitActivationPolicyValue value
00154 );
00155
00156 ServantRetentionPolicy create_servant_retention_policy (
00157 in ServantRetentionPolicyValue value
00158 );
00159
00160 RequestProcessingPolicy create_request_processing_policy (
00161 in RequestProcessingPolicyValue value
00162 );
00163 # endif
00164
00165
00166 readonly attribute string the_name;
00167 readonly attribute POA the_parent;
00168 # if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO)
00169 readonly attribute POAList the_children;
00170 # endif
00171 readonly attribute POAManager the_POAManager;
00172 # if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO) && !defined (TAO_HAS_MINIMUM_POA)
00173 readonly attribute POAManagerFactory the_POAManagerFactory;
00174 # endif
00175 # if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO) && !defined (TAO_HAS_MINIMUM_POA)
00176 attribute AdapterActivator the_activator;
00177 # endif
00178
00179 # if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO) && !defined (TAO_HAS_MINIMUM_POA)
00180
00181
00182 ServantManager get_servant_manager ()
00183 raises (WrongPolicy);
00184
00185 void set_servant_manager (in ServantManager imgr)
00186 raises (WrongPolicy);
00187
00188
00189
00190 Servant get_servant ()
00191 raises (NoServant,
00192 WrongPolicy);
00193
00194 void set_servant (in Servant p_servant)
00195 raises (WrongPolicy);
00196 # endif
00197
00198
00199
00200 ObjectId activate_object (in Servant p_servant)
00201 raises (ServantAlreadyActive,
00202 WrongPolicy);
00203
00204 void activate_object_with_id (in ObjectId id,
00205 in Servant p_servant)
00206 raises (ServantAlreadyActive,
00207 ObjectAlreadyActive,
00208 WrongPolicy);
00209
00210 void deactivate_object (in ObjectId oid)
00211 raises (ObjectNotActive, WrongPolicy);
00212
00213
00214
00215 Object create_reference (in CORBA::RepositoryId intf)
00216 raises (WrongPolicy);
00217
00218 #if !defined (CORBA_E_MICRO)
00219 Object create_reference_with_id (in ObjectId oid,
00220 in CORBA::RepositoryId intf);
00221 #endif
00222
00223
00224 ObjectId servant_to_id (in Servant p_servant)
00225 raises (ServantNotActive,
00226 WrongPolicy);
00227
00228 Object servant_to_reference (in Servant p_servant)
00229 raises (ServantNotActive, WrongPolicy);
00230
00231 Servant reference_to_servant (in Object reference)
00232 raises (ObjectNotActive,
00233 WrongAdapter,
00234 WrongPolicy);
00235
00236 ObjectId reference_to_id (in Object reference)
00237 raises (WrongAdapter,
00238 WrongPolicy);
00239
00240 Servant id_to_servant (in ObjectId oid)
00241 raises (ObjectNotActive, WrongPolicy);
00242
00243 Object id_to_reference (in ObjectId oid)
00244 raises (ObjectNotActive,
00245 WrongPolicy);
00246
00247 readonly attribute CORBA::OctetSeq id;
00248 };
00249 };
00250
00251 #endif // _PORTABLE_SERVER_IDL_