POA.pidl

Go to the documentation of this file.
00001 /**
00002  * @file POA.pidl
00003  *
00004  * $Id: POA.pidl 79124 2007-07-31 12:39:37Z johnnyw $
00005  *
00006  * @brief Pre-compiled IDL source for the PortableServer module.
00007  *
00008  * This file was used to generate the code in
00009  * PortableServerC.{h,inl,cpp}, using the following command:
00010  *
00011  * tao_idl.exe \
00012  *     -o orig -Sci -Gp -Gd -GA -I$(TAO_ROOT)
00013  *          -Wb,export_macro=TAO_PortableServer_Export \
00014  *          -Wb,export_include="portableserver_export.h" \
00015  *          -Wb,pre_include="ace/pre.h" \
00016  *          -Wb,post_include="ace/post.h" \
00017  *          PortableServer.pidl
00018  *
00019  * After the file is generated a patch from the diffs directory must
00020  * be applied.  The patch:
00021  *
00022  *   - Disables parts of the code under certain configurations.
00023  *
00024  *   - Eliminates cycles in the include dependencies.
00025  *
00026  *   - Adds non-idl components of PortableServer to the namespace.
00027  *     This includes (a) Servant (b) ServantBase (c) RefCountServantBase
00028  *     (d) Cookie (e) ObjectId_to_string (f) string_to_ObjectId (g)
00029  *     ObjectId_to_wstring (h) wstring_to_ObjectId (i) ServantBase_var
00030  *     (j) DynamicImplementation (k) LocalServantBase
00031  *
00032  * Apply patches using the following command:
00033  *
00034  *   patch < diffs/PortableServer.diff
00035  *
00036  * Note: The diffs were generated using:
00037  *
00038  *   rm diffs/PortableServer.diff
00039  *   for i in PortableServerC.{h,i,cpp}; do
00040  *     diff -wub orig/$i $i >> diffs/PortableServer.diff
00041  *   done
00042  */
00043 
00044 #ifndef _POA_SERVER_IDL_
00045 #define _POA_SERVER_IDL_
00046 
00047 ///FUZZ: disable check_for_include/
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   // Policy IDs
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   // Forward declaration POAManager interface.
00084   local interface POAManager;
00085 
00086 #if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO)
00087   // Forward declaration POAManagerFactory interface.
00088   local interface POAManagerFactory;
00089 #endif
00090 
00091 #if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO) && ! defined (TAO_HAS_MINIMUM_POA)
00092   // Forward declaration AdapterActivator interface.
00093   local interface AdapterActivator;
00094 #endif
00095 
00096 #if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO)
00097   // Forward declaration servantManager interface.
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)
00110     exception NoServant {};
00111 #endif
00112     exception ObjectAlreadyActive {};
00113 #       endif
00114     exception ObjectNotActive {};
00115     exception ServantAlreadyActive {};
00116     exception ServantNotActive {};
00117     exception WrongAdapter {};
00118     exception WrongPolicy {};
00119 
00120 
00121 #       if ! defined (CORBA_E_MICRO)
00122     /// POA creation and destruction.
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     // Factories for Policy objects.
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 (
00144         in LifespanPolicyValue value
00145       );
00146 
00147     IdUniquenessPolicy  create_id_uniqueness_policy (
00148         in IdUniquenessPolicyValue value
00149       );
00150 
00151     IdAssignmentPolicy  create_id_assignment_policy (
00152         in IdAssignmentPolicyValue value
00153       );
00154 #endif
00155 #       if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO) && !defined (TAO_HAS_MINIMUM_POA)
00156     ImplicitActivationPolicy create_implicit_activation_policy (
00157         in ImplicitActivationPolicyValue value
00158       );
00159 
00160     ServantRetentionPolicy create_servant_retention_policy (
00161         in ServantRetentionPolicyValue value
00162       );
00163 
00164     RequestProcessingPolicy create_request_processing_policy (
00165         in RequestProcessingPolicyValue value
00166       );
00167 #       endif
00168 
00169     // POA attributes
00170     readonly attribute string       the_name;
00171     readonly attribute POA          the_parent;
00172 #       if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO)
00173     readonly attribute POAList      the_children;
00174 #       endif
00175     readonly attribute POAManager   the_POAManager;
00176 #       if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO) && !defined (TAO_HAS_MINIMUM_POA)
00177     readonly attribute POAManagerFactory   the_POAManagerFactory;
00178 #   endif
00179 #       if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO) && !defined (TAO_HAS_MINIMUM_POA)
00180     attribute AdapterActivator      the_activator;
00181 #       endif
00182 
00183 #       if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO) && !defined (TAO_HAS_MINIMUM_POA)
00184     // Servant Manager registration:
00185 
00186     ServantManager get_servant_manager ()
00187       raises (WrongPolicy);
00188 
00189     void set_servant_manager (in ServantManager imgr)
00190       raises (WrongPolicy);
00191 
00192     // Operations for the USE_DEFAULT_SERVANT policy.
00193 
00194     Servant get_servant ()
00195       raises (NoServant,
00196               WrongPolicy);
00197 
00198     void set_servant (in Servant p_servant)
00199       raises (WrongPolicy);
00200 #       endif
00201 
00202     // Object activation and deactivation.
00203 
00204     ObjectId  activate_object (in Servant p_servant)
00205       raises (ServantAlreadyActive,
00206               WrongPolicy);
00207 
00208 #if !defined (CORBA_E_MICRO)
00209     void activate_object_with_id (in ObjectId id,
00210                                   in Servant p_servant)
00211       raises (ServantAlreadyActive,
00212               ObjectAlreadyActive,
00213               WrongPolicy);
00214 #endif
00215 
00216     void deactivate_object (in ObjectId oid)
00217       raises (ObjectNotActive, WrongPolicy);
00218 
00219     // Reference creation operations.
00220 
00221     Object create_reference (in CORBA::RepositoryId intf)
00222       raises (WrongPolicy);
00223 
00224     Object create_reference_with_id (in ObjectId oid,
00225                                      in CORBA::RepositoryId intf);
00226 
00227     // Identity mapping operations:.
00228     ObjectId servant_to_id (in Servant p_servant)
00229       raises (ServantNotActive,
00230               WrongPolicy);
00231 
00232     Object servant_to_reference (in Servant p_servant)
00233       raises (ServantNotActive, WrongPolicy);
00234 
00235     Servant reference_to_servant (in Object reference)
00236       raises (ObjectNotActive,
00237               WrongAdapter,
00238               WrongPolicy);
00239 
00240     ObjectId reference_to_id (in Object reference)
00241       raises (WrongAdapter,
00242               WrongPolicy);
00243 
00244     Servant id_to_servant (in ObjectId oid)
00245       raises (ObjectNotActive, WrongPolicy);
00246 
00247     Object id_to_reference (in ObjectId oid)
00248       raises (ObjectNotActive,
00249               WrongPolicy);
00250 
00251     readonly attribute CORBA::OctetSeq id;
00252   };
00253 };
00254 
00255 #endif // _PORTABLE_SERVER_IDL_

Generated on Sun Jan 27 13:23:43 2008 for TAO_PortableServer by doxygen 1.3.6