diff options
Diffstat (limited to 'trunk/TAO/tao/PortableServer/POA.pidl')
-rw-r--r-- | trunk/TAO/tao/PortableServer/POA.pidl | 255 |
1 files changed, 255 insertions, 0 deletions
diff --git a/trunk/TAO/tao/PortableServer/POA.pidl b/trunk/TAO/tao/PortableServer/POA.pidl new file mode 100644 index 00000000000..be91adb3935 --- /dev/null +++ b/trunk/TAO/tao/PortableServer/POA.pidl @@ -0,0 +1,255 @@ +/** + * @file POA.pidl + * + * $Id$ + * + * @brief Pre-compiled IDL source for the PortableServer module. + * + * This file was used to generate the code in + * PortableServerC.{h,inl,cpp}, using the following command: + * + * tao_idl.exe \ + * -o orig -Sci -Gp -Gd -GA -I$(TAO_ROOT) + * -Wb,export_macro=TAO_PortableServer_Export \ + * -Wb,export_include="portableserver_export.h" \ + * -Wb,pre_include="ace/pre.h" \ + * -Wb,post_include="ace/post.h" \ + * PortableServer.pidl + * + * After the file is generated a patch from the diffs directory must + * be applied. The patch: + * + * - Disables parts of the code under certain configurations. + * + * - Eliminates cycles in the include dependencies. + * + * - Adds non-idl components of PortableServer to the namespace. + * This includes (a) Servant (b) ServantBase (c) RefCountServantBase + * (d) Cookie (e) ObjectId_to_string (f) string_to_ObjectId (g) + * ObjectId_to_wstring (h) wstring_to_ObjectId (i) ServantBase_var + * (j) DynamicImplementation (k) LocalServantBase + * + * Apply patches using the following command: + * + * patch < diffs/PortableServer.diff + * + * Note: The diffs were generated using: + * + * rm diffs/PortableServer.diff + * for i in PortableServerC.{h,i,cpp}; do + * diff -wub orig/$i $i >> diffs/PortableServer.diff + * done + */ + +#ifndef _POA_SERVER_IDL_ +#define _POA_SERVER_IDL_ + +///FUZZ: disable check_for_include/ +#include "tao/Policy_Forward.pidl" +#include "tao/OctetSeq.pidl" +#include "tao/orb_types.pidl" +#include "tao/PortableServer/PS_Forward.pidl" +#include "tao/PortableServer/IdAssignmentPolicy.pidl" +#include "tao/PortableServer/IdUniquenessPolicy.pidl" +#include "tao/PortableServer/ImplicitActivationPolicy.pidl" +#include "tao/PortableServer/LifespanPolicy.pidl" +#include "tao/PortableServer/RequestProcessingPolicy.pidl" +#include "tao/PortableServer/ServantRetentionPolicy.pidl" +#include "tao/PortableServer/ThreadPolicy.pidl" + +#pragma prefix "omg.org" + +module PortableServer +{ +# pragma version PortableServer 2.3 + + typedef sequence<POA> POAList; + + // Policy IDs +# if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO) + const CORBA::PolicyType THREAD_POLICY_ID = 16; +# endif +# if ! defined (CORBA_E_MICRO) + const CORBA::PolicyType LIFESPAN_POLICY_ID = 17; + const CORBA::PolicyType ID_UNIQUENESS_POLICY_ID = 18; + const CORBA::PolicyType ID_ASSIGNMENT_POLICY_ID = 19; +# endif +# if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO) + const CORBA::PolicyType IMPLICIT_ACTIVATION_POLICY_ID = 20; + const CORBA::PolicyType SERVANT_RETENTION_POLICY_ID = 21; + const CORBA::PolicyType REQUEST_PROCESSING_POLICY_ID = 22; +# endif + + // Forward declaration POAManager interface. + local interface POAManager; + +#if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO) + // Forward declaration POAManagerFactory interface. + local interface POAManagerFactory; +#endif + +#if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO) && ! defined (TAO_HAS_MINIMUM_POA) + // Forward declaration AdapterActivator interface. + local interface AdapterActivator; +#endif + +#if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO) + // Forward declaration servantManager interface. + local interface ServantManager; +#endif + + local interface POA + { +# pragma version POA 2.3 + +# if ! defined (CORBA_E_MICRO) + exception AdapterAlreadyExists {}; + exception AdapterNonExistent {}; + exception InvalidPolicy {unsigned short index;}; +#if !defined (TAO_HAS_MINIMUM_POA) + exception NoServant {}; +#endif + exception ObjectAlreadyActive {}; +# endif + exception ObjectNotActive {}; + exception ServantAlreadyActive {}; + exception ServantNotActive {}; + exception WrongAdapter {}; + exception WrongPolicy {}; + + +# if ! defined (CORBA_E_MICRO) + /// POA creation and destruction. + POA create_POA (in string adapter_name, + in POAManager a_POAManager, + in CORBA::PolicyList policies) + raises (AdapterAlreadyExists, + InvalidPolicy); + + POA find_POA (in string adapter_name, + in boolean activate_it) + raises (AdapterNonExistent); +#endif + + void destroy (in boolean etherealize_objects, + in boolean wait_for_completion); + + // Factories for Policy objects. + +# if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO) && !defined (TAO_HAS_MINIMUM_POA) + ThreadPolicy create_thread_policy (in ThreadPolicyValue value); +#endif +# if ! defined (CORBA_E_MICRO) + LifespanPolicy create_lifespan_policy ( + in LifespanPolicyValue value + ); + + IdUniquenessPolicy create_id_uniqueness_policy ( + in IdUniquenessPolicyValue value + ); + + IdAssignmentPolicy create_id_assignment_policy ( + in IdAssignmentPolicyValue value + ); +#endif +# if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO) && !defined (TAO_HAS_MINIMUM_POA) + ImplicitActivationPolicy create_implicit_activation_policy ( + in ImplicitActivationPolicyValue value + ); + + ServantRetentionPolicy create_servant_retention_policy ( + in ServantRetentionPolicyValue value + ); + + RequestProcessingPolicy create_request_processing_policy ( + in RequestProcessingPolicyValue value + ); +# endif + + // POA attributes + readonly attribute string the_name; + readonly attribute POA the_parent; +# if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO) + readonly attribute POAList the_children; +# endif + readonly attribute POAManager the_POAManager; +# if (TAO_HAS_MINIMUM_POA == 0) && ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO) + readonly attribute POAManagerFactory the_POAManagerFactory; +#endif +# if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO) && !defined (TAO_HAS_MINIMUM_POA) + attribute AdapterActivator the_activator; +# endif + +# if ! defined (CORBA_E_COMPACT) && ! defined (CORBA_E_MICRO) && !defined (TAO_HAS_MINIMUM_POA) + // Servant Manager registration: + + ServantManager get_servant_manager () + raises (WrongPolicy); + + void set_servant_manager (in ServantManager imgr) + raises (WrongPolicy); + + // Operations for the USE_DEFAULT_SERVANT policy. + + Servant get_servant () + raises (NoServant, + WrongPolicy); + + void set_servant (in Servant p_servant) + raises (WrongPolicy); +# endif + + // Object activation and deactivation. + + ObjectId activate_object (in Servant p_servant) + raises (ServantAlreadyActive, + WrongPolicy); + +#if !defined (CORBA_E_MICRO) + void activate_object_with_id (in ObjectId id, + in Servant p_servant) + raises (ServantAlreadyActive, + ObjectAlreadyActive, + WrongPolicy); +#endif + + void deactivate_object (in ObjectId oid) + raises (ObjectNotActive, WrongPolicy); + + // Reference creation operations. + + Object create_reference (in CORBA::RepositoryId intf) + raises (WrongPolicy); + + Object create_reference_with_id (in ObjectId oid, + in CORBA::RepositoryId intf); + + // Identity mapping operations:. + ObjectId servant_to_id (in Servant p_servant) + raises (ServantNotActive, + WrongPolicy); + + Object servant_to_reference (in Servant p_servant) + raises (ServantNotActive, WrongPolicy); + + Servant reference_to_servant (in Object reference) + raises (ObjectNotActive, + WrongAdapter, + WrongPolicy); + + ObjectId reference_to_id (in Object reference) + raises (WrongAdapter, + WrongPolicy); + + Servant id_to_servant (in ObjectId oid) + raises (ObjectNotActive, WrongPolicy); + + Object id_to_reference (in ObjectId oid) + raises (ObjectNotActive, + WrongPolicy); + + readonly attribute CORBA::OctetSeq id; + }; +}; + +#endif // _PORTABLE_SERVER_IDL_ |