// -*- C++ -*- // // $Id$ // **** Code generated by the The ACE ORB (TAO) IDL Compiler **** // TAO and the TAO IDL Compiler have been developed by: // Center for Distributed Object Computing // Washington University // St. Louis, MO // USA // http://www.cs.wustl.edu/~schmidt/doc-center.html // and // Distributed Object Computing Laboratory // University of California at Irvine // Irvine, CA // USA // http://doc.ece.uci.edu/ // // Information about TAO is available at: // http://www.cs.wustl.edu/~schmidt/TAO.html #ifndef TAO_IDL_INTERFACES_H #define TAO_IDL_INTERFACES_H #include "ace/pre.h" #include "tao/IFR_Client/InterfaceC.h" #if !defined (ACE_LACKS_PRAGMA_ONCE) # pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ #include "tao/PortableServer/Operation_Table.h" #include "tao/PortableServer/Object_Adapter.h" #include "tao/PortableServer/ThruPOA_Object_Proxy_Impl.h" #include "tao/PortableServer/ServerRequestInfo.h" #include "tao/PortableInterceptor.h" #include "tao/Stub.h" #include "tao/ORB_Core.h" #include "tao/TAO_Server_Request.h" #if defined(_MSC_VER) #if (_MSC_VER >= 1200) #pragma warning(push) #endif /* _MSC_VER >= 1200 */ #pragma warning(disable:4250) #endif /* _MSC_VER */ #if defined (__BORLANDC__) #pragma option push -w-rvl -w-rch -w-ccc -w-inl #endif /* __BORLANDC__ */ class POA_CORBA_IRObject; typedef POA_CORBA_IRObject *POA_CORBA_IRObject_ptr; // Forward Classes Declaration class _TAO_IRObject_ThruPOA_Proxy_Impl; class _TAO_IRObject_Strategized_Proxy_Broker; class POA_CORBA_IRObject : public virtual PortableServer::ServantBase { protected: POA_CORBA_IRObject (void); public: POA_CORBA_IRObject (const POA_CORBA_IRObject& rhs); virtual ~POA_CORBA_IRObject (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); ::CORBA::IRObject *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; virtual IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_def_kind_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void destroy_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. class TAO_ServerRequestInfo_CORBA_IRObject_def_kind_get : public TAO_ServerRequestInfo { public: friend class POA_CORBA_IRObject; TAO_ServerRequestInfo_CORBA_IRObject_def_kind_get ( TAO_ServerRequest &_tao_server_request, POA_CORBA_IRObject *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_CORBA_IRObject_def_kind_get (const TAO_ServerRequestInfo_CORBA_IRObject_def_kind_get &); void operator= (const TAO_ServerRequestInfo_CORBA_IRObject_def_kind_get &); private: POA_CORBA_IRObject *_tao_impl; void result (IR::DefinitionKind result); // update the result IR_DefinitionKind _result; }; class TAO_ServerRequestInfo_CORBA_IRObject_destroy : public TAO_ServerRequestInfo { public: friend class POA_CORBA_IRObject; TAO_ServerRequestInfo_CORBA_IRObject_destroy ( TAO_ServerRequest &_tao_server_request, POA_CORBA_IRObject *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_CORBA_IRObject_destroy (const TAO_ServerRequestInfo_CORBA_IRObject_destroy &); void operator= (const TAO_ServerRequestInfo_CORBA_IRObject_destroy &); private: POA_CORBA_IRObject *_tao_impl; }; #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_IRObject_Strategized_Proxy_Broker : public virtual _TAO_IRObject_Proxy_Broker { public: _TAO_IRObject_Strategized_Proxy_Broker (void); virtual ~_TAO_IRObject_Strategized_Proxy_Broker (void); virtual _TAO_IRObject_Proxy_Impl &select_proxy ( CORBA_IRObject *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_IRObject_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_IRObject_Strategized_Proxy_Broker *the_TAO_IRObject_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_IRObject_ThruPOA_Proxy_Impl : public virtual _TAO_IRObject_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl { public: _TAO_IRObject_ThruPOA_Proxy_Impl (void); virtual ~_TAO_IRObject_ThruPOA_Proxy_Impl (void) { } virtual IR_DefinitionKind def_kind ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void destroy ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// TAO_NAMESPACE POA_IR { class Contained; typedef Contained *Contained_ptr; // Forward Classes Declaration class _TAO_Contained_ThruPOA_Proxy_Impl; class _TAO_Contained_Strategized_Proxy_Broker; class Contained : public virtual POA_CORBA_IRObject { protected: Contained (void); public: Contained (const Contained& rhs); virtual ~Contained (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_Contained *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char *_interface_repository_id (void) const; virtual char *id ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_id_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void id ( const char *id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_id_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual char *name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_name_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void name ( const char *name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_name_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual char *version ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_version_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void version ( const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_version_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_Container_ptr defined_in ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_defined_in_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual char *absolute_name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_absolute_name_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_Repository_ptr containing_repository ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_containing_repository_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_Contained::Description *describe ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void describe_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void move ( IR_Container_ptr new_container, const char *new_name, const char *new_version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void move_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. class TAO_ServerRequestInfo_IR_Contained_id_get : public TAO_ServerRequestInfo { public: friend class POA_IR::Contained; TAO_ServerRequestInfo_IR_Contained_id_get ( TAO_ServerRequest &_tao_server_request, POA_IR::Contained *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Contained_id_get (const TAO_ServerRequestInfo_IR_Contained_id_get &); void operator= (const TAO_ServerRequestInfo_IR_Contained_id_get &); private: POA_IR::Contained *_tao_impl; void result (char *result); // update the result char * _result; }; class TAO_ServerRequestInfo_IR_Contained_id_set : public TAO_ServerRequestInfo { public: friend class POA_IR::Contained; TAO_ServerRequestInfo_IR_Contained_id_set ( TAO_ServerRequest &_tao_server_request, POA_IR::Contained *tao_impl , const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Contained_id_set (const TAO_ServerRequestInfo_IR_Contained_id_set &); void operator= (const TAO_ServerRequestInfo_IR_Contained_id_set &); private: POA_IR::Contained *_tao_impl; const char * id_; }; class TAO_ServerRequestInfo_IR_Contained_name_get : public TAO_ServerRequestInfo { public: friend class POA_IR::Contained; TAO_ServerRequestInfo_IR_Contained_name_get ( TAO_ServerRequest &_tao_server_request, POA_IR::Contained *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Contained_name_get (const TAO_ServerRequestInfo_IR_Contained_name_get &); void operator= (const TAO_ServerRequestInfo_IR_Contained_name_get &); private: POA_IR::Contained *_tao_impl; void result (char * result); // update the result char * _result; }; class TAO_ServerRequestInfo_IR_Contained_name_set : public TAO_ServerRequestInfo { public: friend class POA_IR::Contained; TAO_ServerRequestInfo_IR_Contained_name_set ( TAO_ServerRequest &_tao_server_request, POA_IR::Contained *tao_impl , const char * name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Contained_name_set (const TAO_ServerRequestInfo_IR_Contained_name_set &); void operator= (const TAO_ServerRequestInfo_IR_Contained_name_set &); private: POA_IR::Contained *_tao_impl; const char * name_; }; class TAO_ServerRequestInfo_IR_Contained_version_get : public TAO_ServerRequestInfo { public: friend class POA_IR::Contained; TAO_ServerRequestInfo_IR_Contained_version_get ( TAO_ServerRequest &_tao_server_request, POA_IR::Contained *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Contained_version_get (const TAO_ServerRequestInfo_IR_Contained_version_get &); void operator= (const TAO_ServerRequestInfo_IR_Contained_version_get &); private: POA_IR::Contained *_tao_impl; void result (char * result); // update the result char * _result; }; class TAO_ServerRequestInfo_IR_Contained_version_set : public TAO_ServerRequestInfo { public: friend class POA_IR::Contained; TAO_ServerRequestInfo_IR_Contained_version_set ( TAO_ServerRequest &_tao_server_request, POA_IR::Contained *tao_impl , const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Contained_version_set (const TAO_ServerRequestInfo_IR_Contained_version_set &); void operator= (const TAO_ServerRequestInfo_IR_Contained_version_set &); private: POA_IR::Contained *_tao_impl; const char * version_; }; class TAO_ServerRequestInfo_IR_Contained_defined_in_get : public TAO_ServerRequestInfo { public: friend class POA_IR::Contained; TAO_ServerRequestInfo_IR_Contained_defined_in_get ( TAO_ServerRequest &_tao_server_request, POA_IR::Contained *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Contained_defined_in_get (const TAO_ServerRequestInfo_IR_Contained_defined_in_get &); void operator= (const TAO_ServerRequestInfo_IR_Contained_defined_in_get &); private: POA_IR::Contained *_tao_impl; void result (IR::Container_ptr result); // update the result IR_Container_ptr _result; }; class TAO_ServerRequestInfo_IR_Contained_absolute_name_get : public TAO_ServerRequestInfo { public: friend class POA_IR::Contained; TAO_ServerRequestInfo_IR_Contained_absolute_name_get ( TAO_ServerRequest &_tao_server_request, POA_IR::Contained *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Contained_absolute_name_get (const TAO_ServerRequestInfo_IR_Contained_absolute_name_get &); void operator= (const TAO_ServerRequestInfo_IR_Contained_absolute_name_get &); private: POA_IR::Contained *_tao_impl; void result (char * result); // update the result char * _result; }; class TAO_ServerRequestInfo_IR_Contained_containing_repository_get : public TAO_ServerRequestInfo { public: friend class POA_IR::Contained; TAO_ServerRequestInfo_IR_Contained_containing_repository_get ( TAO_ServerRequest &_tao_server_request, POA_IR::Contained *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Contained_containing_repository_get (const TAO_ServerRequestInfo_IR_Contained_containing_repository_get &); void operator= (const TAO_ServerRequestInfo_IR_Contained_containing_repository_get &); private: POA_IR::Contained *_tao_impl; void result (IR::Repository_ptr result); // update the result IR_Repository_ptr _result; }; class TAO_ServerRequestInfo_IR_Contained_describe : public TAO_ServerRequestInfo { public: friend class POA_IR::Contained; TAO_ServerRequestInfo_IR_Contained_describe ( TAO_ServerRequest &_tao_server_request, POA_IR::Contained *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Contained_describe (const TAO_ServerRequestInfo_IR_Contained_describe &); void operator= (const TAO_ServerRequestInfo_IR_Contained_describe &); private: POA_IR::Contained *_tao_impl; void result (IR::Contained::Description * result); // update the result IR_Contained::Description * _result; }; class TAO_ServerRequestInfo_IR_Contained_move : public TAO_ServerRequestInfo { public: friend class POA_IR::Contained; TAO_ServerRequestInfo_IR_Contained_move ( TAO_ServerRequest &_tao_server_request, POA_IR::Contained *tao_impl , IR_Container_ptr new_container, const char * new_name, const char * new_version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Contained_move (const TAO_ServerRequestInfo_IR_Contained_move &); void operator= (const TAO_ServerRequestInfo_IR_Contained_move &); private: POA_IR::Contained *_tao_impl; IR_Container_ptr new_container_; const char * new_name_; const char * new_version_; }; #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_Contained_Strategized_Proxy_Broker : public virtual _TAO_Contained_Proxy_Broker { public: _TAO_Contained_Strategized_Proxy_Broker (void); virtual ~_TAO_Contained_Strategized_Proxy_Broker (void); virtual _TAO_Contained_Proxy_Impl &select_proxy ( IR_Contained *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_Contained_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_Contained_Strategized_Proxy_Broker *the_TAO_Contained_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_Contained_ThruPOA_Proxy_Impl : public virtual _TAO_Contained_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual _TAO_IRObject_ThruPOA_Proxy_Impl { public: _TAO_Contained_ThruPOA_Proxy_Impl (void); virtual ~_TAO_Contained_ThruPOA_Proxy_Impl (void) { } virtual char * id ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void id ( CORBA_Object *_collocated_tao_target_, const char * id, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual char * name ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void name ( CORBA_Object *_collocated_tao_target_, const char * name, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual char * version ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void version ( CORBA_Object *_collocated_tao_target_, const char * version, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_Container_ptr defined_in ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual char * absolute_name ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_Repository_ptr containing_repository ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_Contained::Description * describe ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void move ( CORBA_Object *_collocated_tao_target_, IR_Container_ptr new_container, const char * new_name, const char * new_version, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class Contained_tie : public Contained { public: Contained_tie (T &t); // the T& ctor Contained_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA Contained_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag Contained_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~Contained_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); char * id ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void id ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void name ( const char * name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * version ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void version ( const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container_ptr defined_in ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * absolute_name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Repository_ptr containing_repository ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained::Description * describe ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void move ( IR_Container_ptr new_container, const char * new_name, const char * new_version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed Contained_tie (const Contained_tie &); void operator= (const Contained_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class Container; typedef Container *Container_ptr; // Forward Classes Declaration class _TAO_Container_ThruPOA_Proxy_Impl; class _TAO_Container_Strategized_Proxy_Broker; class Container : public virtual POA_CORBA_IRObject { protected: Container (void); public: Container (const Container& rhs); virtual ~Container (void); virtual CORBA::Boolean _is_a ( const char *logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void *_downcast ( const char *logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_Container *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char *_interface_repository_id (void) const; virtual IR_Contained_ptr lookup ( const char *search_name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void lookup_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_ContainedSeq *contents ( IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void contents_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_ContainedSeq *lookup_name ( const char *search_name, CORBA::Long levels_to_search, IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void lookup_name_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_Container::DescriptionSeq *describe_contents ( IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Long max_returned_objs, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void describe_contents_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_ModuleDef_ptr create_module ( const char *id, const char *name, const char *version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void create_module_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_ConstantDef_ptr create_constant ( const char *id, const char *name, const char *version, IR_IDLType_ptr type, const CORBA::Any & value, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void create_constant_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_StructDef_ptr create_struct ( const char *id, const char *name, const char *version, const IR_StructMemberSeq &members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void create_struct_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_UnionDef_ptr create_union ( const char *id, const char *name, const char *version, IR_IDLType_ptr discriminator_type, const IR_UnionMemberSeq &members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void create_union_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_EnumDef_ptr create_enum ( const char * id, const char * name, const char * version, const IR_EnumMemberSeq &members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void create_enum_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_AliasDef_ptr create_alias ( const char *id, const char *name, const char *version, IR_IDLType_ptr original_type, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void create_alias_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_InterfaceDef_ptr create_interface ( const char *id, const char *name, const char *version, const IR_InterfaceDefSeq &base_interfaces, CORBA::Boolean is_abstract, CORBA::Boolean is_local, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void create_interface_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_ValueDef_ptr create_value ( const char *id, const char *name, const char *version, CORBA::Boolean is_custom, CORBA::Boolean is_abstract, IR_ValueDef_ptr base_value, CORBA::Boolean is_truncatable, const IR_ValueDefSeq &abstract_base_values, const IR_InterfaceDefSeq &supported_interfaces, const IR_InitializerSeq &initializers, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void create_value_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_ValueBoxDef_ptr create_value_box ( const char *id, const char *name, const char *version, IR_IDLType_ptr original_type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void create_value_box_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_ExceptionDef_ptr create_exception ( const char *id, const char *name, const char *version, const IR_StructMemberSeq &members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void create_exception_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_NativeDef_ptr create_native ( const char *id, const char *name, const char *version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void create_native_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. class TAO_ServerRequestInfo_IR_Container_lookup : public TAO_ServerRequestInfo { public: friend class POA_IR::Container; TAO_ServerRequestInfo_IR_Container_lookup ( TAO_ServerRequest &_tao_server_request, POA_IR::Container *tao_impl , const char * search_name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Container_lookup (const TAO_ServerRequestInfo_IR_Container_lookup &); void operator= (const TAO_ServerRequestInfo_IR_Container_lookup &); private: POA_IR::Container *_tao_impl; const char * search_name_; void result (IR::Contained_ptr result); // update the result IR_Contained_ptr _result; }; class TAO_ServerRequestInfo_IR_Container_contents : public TAO_ServerRequestInfo { public: friend class POA_IR::Container; TAO_ServerRequestInfo_IR_Container_contents ( TAO_ServerRequest &_tao_server_request, POA_IR::Container *tao_impl , IR_DefinitionKind & limit_type, const CORBA::Boolean & exclude_inherited, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Container_contents (const TAO_ServerRequestInfo_IR_Container_contents &); void operator= (const TAO_ServerRequestInfo_IR_Container_contents &); private: POA_IR::Container *_tao_impl; const IR_DefinitionKind & limit_type_; const CORBA::Boolean & exclude_inherited_; void result (IR::ContainedSeq * result); // update the result IR_ContainedSeq * _result; }; class TAO_ServerRequestInfo_IR_Container_lookup_name : public TAO_ServerRequestInfo { public: friend class POA_IR::Container; TAO_ServerRequestInfo_IR_Container_lookup_name ( TAO_ServerRequest &_tao_server_request, POA_IR::Container *tao_impl , const char * search_name, const CORBA::Long & levels_to_search, IR_DefinitionKind & limit_type, const CORBA::Boolean & exclude_inherited, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Container_lookup_name (const TAO_ServerRequestInfo_IR_Container_lookup_name &); void operator= (const TAO_ServerRequestInfo_IR_Container_lookup_name &); private: POA_IR::Container *_tao_impl; const char * search_name_; const CORBA::Long & levels_to_search_; const IR_DefinitionKind & limit_type_; const CORBA::Boolean & exclude_inherited_; void result (IR::ContainedSeq * result); // update the result IR_ContainedSeq * _result; }; class TAO_ServerRequestInfo_IR_Container_describe_contents : public TAO_ServerRequestInfo { public: friend class POA_IR::Container; TAO_ServerRequestInfo_IR_Container_describe_contents ( TAO_ServerRequest &_tao_server_request, POA_IR::Container *tao_impl , IR_DefinitionKind & limit_type, const CORBA::Boolean & exclude_inherited, const CORBA::Long & max_returned_objs, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Container_describe_contents (const TAO_ServerRequestInfo_IR_Container_describe_contents &); void operator= (const TAO_ServerRequestInfo_IR_Container_describe_contents &); private: POA_IR::Container *_tao_impl; const IR_DefinitionKind & limit_type_; const CORBA::Boolean & exclude_inherited_; const CORBA::Long & max_returned_objs_; void result (IR::Container::DescriptionSeq * result); // update the result IR_Container::DescriptionSeq * _result; }; class TAO_ServerRequestInfo_IR_Container_create_module : public TAO_ServerRequestInfo { public: friend class POA_IR::Container; TAO_ServerRequestInfo_IR_Container_create_module ( TAO_ServerRequest &_tao_server_request, POA_IR::Container *tao_impl , const char * id, const char * name, const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Container_create_module (const TAO_ServerRequestInfo_IR_Container_create_module &); void operator= (const TAO_ServerRequestInfo_IR_Container_create_module &); private: POA_IR::Container *_tao_impl; const char * id_; const char * name_; const char * version_; void result (IR::ModuleDef_ptr result); // update the result IR_ModuleDef_ptr _result; }; class TAO_ServerRequestInfo_IR_Container_create_constant : public TAO_ServerRequestInfo { public: friend class POA_IR::Container; TAO_ServerRequestInfo_IR_Container_create_constant ( TAO_ServerRequest &_tao_server_request, POA_IR::Container *tao_impl , const char * id, const char * name, const char * version, IR_IDLType_ptr type, const CORBA::Any & value, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Container_create_constant (const TAO_ServerRequestInfo_IR_Container_create_constant &); void operator= (const TAO_ServerRequestInfo_IR_Container_create_constant &); private: POA_IR::Container *_tao_impl; const char * id_; const char * name_; const char * version_; IR_IDLType_ptr type_; const CORBA::Any & value_; void result (IR::ConstantDef_ptr result); // update the result IR_ConstantDef_ptr _result; }; class TAO_ServerRequestInfo_IR_Container_create_struct : public TAO_ServerRequestInfo { public: friend class POA_IR::Container; TAO_ServerRequestInfo_IR_Container_create_struct ( TAO_ServerRequest &_tao_server_request, POA_IR::Container *tao_impl , const char * id, const char * name, const char * version, const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Container_create_struct (const TAO_ServerRequestInfo_IR_Container_create_struct &); void operator= (const TAO_ServerRequestInfo_IR_Container_create_struct &); private: POA_IR::Container *_tao_impl; const char * id_; const char * name_; const char * version_; const IR_StructMemberSeq & members_; void result (IR::StructDef_ptr result); // update the result IR_StructDef_ptr _result; }; class TAO_ServerRequestInfo_IR_Container_create_union : public TAO_ServerRequestInfo { public: friend class POA_IR::Container; TAO_ServerRequestInfo_IR_Container_create_union ( TAO_ServerRequest &_tao_server_request, POA_IR::Container *tao_impl , const char * id, const char * name, const char * version, IR_IDLType_ptr discriminator_type, const IR_UnionMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Container_create_union (const TAO_ServerRequestInfo_IR_Container_create_union &); void operator= (const TAO_ServerRequestInfo_IR_Container_create_union &); private: POA_IR::Container *_tao_impl; const char * id_; const char * name_; const char * version_; IR_IDLType_ptr discriminator_type_; const IR_UnionMemberSeq & members_; void result (IR::UnionDef_ptr result); // update the result IR_UnionDef_ptr _result; }; class TAO_ServerRequestInfo_IR_Container_create_enum : public TAO_ServerRequestInfo { public: friend class POA_IR::Container; TAO_ServerRequestInfo_IR_Container_create_enum ( TAO_ServerRequest &_tao_server_request, POA_IR::Container *tao_impl , const char * id, const char * name, const char * version, const IR_EnumMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Container_create_enum (const TAO_ServerRequestInfo_IR_Container_create_enum &); void operator= (const TAO_ServerRequestInfo_IR_Container_create_enum &); private: POA_IR::Container *_tao_impl; const char * id_; const char * name_; const char * version_; const IR_EnumMemberSeq & members_; void result (IR::EnumDef_ptr result); // update the result IR_EnumDef_ptr _result; }; class TAO_ServerRequestInfo_IR_Container_create_alias : public TAO_ServerRequestInfo { public: friend class POA_IR::Container; TAO_ServerRequestInfo_IR_Container_create_alias ( TAO_ServerRequest &_tao_server_request, POA_IR::Container *tao_impl , const char * id, const char * name, const char * version, IR_IDLType_ptr original_type, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Container_create_alias (const TAO_ServerRequestInfo_IR_Container_create_alias &); void operator= (const TAO_ServerRequestInfo_IR_Container_create_alias &); private: POA_IR::Container *_tao_impl; const char * id_; const char * name_; const char * version_; IR_IDLType_ptr original_type_; void result (IR::AliasDef_ptr result); // update the result IR_AliasDef_ptr _result; }; class TAO_ServerRequestInfo_IR_Container_create_interface : public TAO_ServerRequestInfo { public: friend class POA_IR::Container; TAO_ServerRequestInfo_IR_Container_create_interface ( TAO_ServerRequest &_tao_server_request, POA_IR::Container *tao_impl , const char * id, const char * name, const char * version, const IR_InterfaceDefSeq & base_interfaces, const CORBA::Boolean & is_abstract, const CORBA::Boolean & is_local, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Container_create_interface (const TAO_ServerRequestInfo_IR_Container_create_interface &); void operator= (const TAO_ServerRequestInfo_IR_Container_create_interface &); private: POA_IR::Container *_tao_impl; const char * id_; const char * name_; const char * version_; const IR_InterfaceDefSeq & base_interfaces_; const CORBA::Boolean & is_abstract_; const CORBA::Boolean & is_local_; void result (IR::InterfaceDef_ptr result); // update the result IR_InterfaceDef_ptr _result; }; class TAO_ServerRequestInfo_IR_Container_create_value : public TAO_ServerRequestInfo { public: friend class POA_IR::Container; TAO_ServerRequestInfo_IR_Container_create_value ( TAO_ServerRequest &_tao_server_request, POA_IR::Container *tao_impl , const char * id, const char * name, const char * version, const CORBA::Boolean & is_custom, const CORBA::Boolean & is_abstract, IR_ValueDef_ptr base_value, const CORBA::Boolean & is_truncatable, const IR_ValueDefSeq & abstract_base_values, const IR_InterfaceDefSeq & supported_interfaces, const IR_InitializerSeq & initializers, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Container_create_value (const TAO_ServerRequestInfo_IR_Container_create_value &); void operator= (const TAO_ServerRequestInfo_IR_Container_create_value &); private: POA_IR::Container *_tao_impl; const char * id_; const char * name_; const char * version_; const CORBA::Boolean & is_custom_; const CORBA::Boolean & is_abstract_; IR_ValueDef_ptr base_value_; const CORBA::Boolean & is_truncatable_; const IR_ValueDefSeq & abstract_base_values_; const IR_InterfaceDefSeq & supported_interfaces_; const IR_InitializerSeq & initializers_; void result (IR::ValueDef_ptr result); // update the result IR_ValueDef_ptr _result; }; class TAO_ServerRequestInfo_IR_Container_create_value_box : public TAO_ServerRequestInfo { public: friend class POA_IR::Container; TAO_ServerRequestInfo_IR_Container_create_value_box ( TAO_ServerRequest &_tao_server_request, POA_IR::Container *tao_impl , const char * id, const char * name, const char * version, IR_IDLType_ptr original_type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Container_create_value_box (const TAO_ServerRequestInfo_IR_Container_create_value_box &); void operator= (const TAO_ServerRequestInfo_IR_Container_create_value_box &); private: POA_IR::Container *_tao_impl; const char * id_; const char * name_; const char * version_; IR_IDLType_ptr original_type_def_; void result (IR::ValueBoxDef_ptr result); // update the result IR_ValueBoxDef_ptr _result; }; class TAO_ServerRequestInfo_IR_Container_create_exception : public TAO_ServerRequestInfo { public: friend class POA_IR::Container; TAO_ServerRequestInfo_IR_Container_create_exception ( TAO_ServerRequest &_tao_server_request, POA_IR::Container *tao_impl , const char * id, const char * name, const char * version, const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Container_create_exception (const TAO_ServerRequestInfo_IR_Container_create_exception &); void operator= (const TAO_ServerRequestInfo_IR_Container_create_exception &); private: POA_IR::Container *_tao_impl; const char * id_; const char * name_; const char * version_; const IR_StructMemberSeq & members_; void result (IR::ExceptionDef_ptr result); // update the result IR_ExceptionDef_ptr _result; }; class TAO_ServerRequestInfo_IR_Container_create_native : public TAO_ServerRequestInfo { public: friend class POA_IR::Container; TAO_ServerRequestInfo_IR_Container_create_native ( TAO_ServerRequest &_tao_server_request, POA_IR::Container *tao_impl , const char * id, const char * name, const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Container_create_native (const TAO_ServerRequestInfo_IR_Container_create_native &); void operator= (const TAO_ServerRequestInfo_IR_Container_create_native &); private: POA_IR::Container *_tao_impl; const char * id_; const char * name_; const char * version_; void result (IR::NativeDef_ptr result); // update the result IR_NativeDef_ptr _result; }; #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_Container_Strategized_Proxy_Broker : public virtual _TAO_Container_Proxy_Broker { public: _TAO_Container_Strategized_Proxy_Broker (void); virtual ~_TAO_Container_Strategized_Proxy_Broker (void); virtual _TAO_Container_Proxy_Impl &select_proxy ( IR_Container *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_Container_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_Container_Strategized_Proxy_Broker *the_TAO_Container_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_Container_ThruPOA_Proxy_Impl : public virtual _TAO_Container_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual _TAO_IRObject_ThruPOA_Proxy_Impl { public: _TAO_Container_ThruPOA_Proxy_Impl (void); virtual ~_TAO_Container_ThruPOA_Proxy_Impl (void) { } virtual IR_Contained_ptr lookup ( CORBA_Object *_collocated_tao_target_, const char * search_name, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_ContainedSeq * contents ( CORBA_Object *_collocated_tao_target_, IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_ContainedSeq * lookup_name ( CORBA_Object *_collocated_tao_target_, const char * search_name, CORBA::Long levels_to_search, IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_Container::DescriptionSeq * describe_contents ( CORBA_Object *_collocated_tao_target_, IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Long max_returned_objs, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_ModuleDef_ptr create_module ( CORBA_Object *_collocated_tao_target_, const char * id, const char * name, const char * version, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_ConstantDef_ptr create_constant ( CORBA_Object *_collocated_tao_target_, const char * id, const char * name, const char * version, IR_IDLType_ptr type, const CORBA::Any & value, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_StructDef_ptr create_struct ( CORBA_Object *_collocated_tao_target_, const char * id, const char * name, const char * version, const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_UnionDef_ptr create_union ( CORBA_Object *_collocated_tao_target_, const char * id, const char * name, const char * version, IR_IDLType_ptr discriminator_type, const IR_UnionMemberSeq & members, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_EnumDef_ptr create_enum ( CORBA_Object *_collocated_tao_target_, const char * id, const char * name, const char * version, const IR_EnumMemberSeq & members, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_AliasDef_ptr create_alias ( CORBA_Object *_collocated_tao_target_, const char * id, const char * name, const char * version, IR_IDLType_ptr original_type, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_InterfaceDef_ptr create_interface ( CORBA_Object *_collocated_tao_target_, const char * id, const char * name, const char * version, const IR_InterfaceDefSeq & base_interfaces, CORBA::Boolean is_abstract, CORBA::Boolean is_local, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_ValueDef_ptr create_value ( CORBA_Object *_collocated_tao_target_, const char * id, const char * name, const char * version, CORBA::Boolean is_custom, CORBA::Boolean is_abstract, IR_ValueDef_ptr base_value, CORBA::Boolean is_truncatable, const IR_ValueDefSeq & abstract_base_values, const IR_InterfaceDefSeq & supported_interfaces, const IR_InitializerSeq & initializers, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_ValueBoxDef_ptr create_value_box ( CORBA_Object *_collocated_tao_target_, const char * id, const char * name, const char * version, IR_IDLType_ptr original_type_def, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_ExceptionDef_ptr create_exception ( CORBA_Object *_collocated_tao_target_, const char * id, const char * name, const char * version, const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_NativeDef_ptr create_native ( CORBA_Object *_collocated_tao_target_, const char * id, const char * name, const char * version, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class Container_tie : public Container { public: Container_tie (T &t); // the T& ctor Container_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA Container_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag Container_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~Container_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); IR_Contained_ptr lookup ( const char * search_name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ContainedSeq * contents ( IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ContainedSeq * lookup_name ( const char * search_name, CORBA::Long levels_to_search, IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container::DescriptionSeq * describe_contents ( IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Long max_returned_objs, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ModuleDef_ptr create_module ( const char * id, const char * name, const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ConstantDef_ptr create_constant ( const char * id, const char * name, const char * version, IR_IDLType_ptr type, const CORBA::Any & value, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_StructDef_ptr create_struct ( const char * id, const char * name, const char * version, const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_UnionDef_ptr create_union ( const char * id, const char * name, const char * version, IR_IDLType_ptr discriminator_type, const IR_UnionMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_EnumDef_ptr create_enum ( const char * id, const char * name, const char * version, const IR_EnumMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_AliasDef_ptr create_alias ( const char * id, const char * name, const char * version, IR_IDLType_ptr original_type, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_InterfaceDef_ptr create_interface ( const char * id, const char * name, const char * version, const IR_InterfaceDefSeq & base_interfaces, CORBA::Boolean is_abstract, CORBA::Boolean is_local, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ValueDef_ptr create_value ( const char * id, const char * name, const char * version, CORBA::Boolean is_custom, CORBA::Boolean is_abstract, IR_ValueDef_ptr base_value, CORBA::Boolean is_truncatable, const IR_ValueDefSeq & abstract_base_values, const IR_InterfaceDefSeq & supported_interfaces, const IR_InitializerSeq & initializers, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ValueBoxDef_ptr create_value_box ( const char * id, const char * name, const char * version, IR_IDLType_ptr original_type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ExceptionDef_ptr create_exception ( const char * id, const char * name, const char * version, const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_NativeDef_ptr create_native ( const char * id, const char * name, const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed Container_tie (const Container_tie &); void operator= (const Container_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class IDLType; typedef IDLType *IDLType_ptr; // Forward Classes Declaration class _TAO_IDLType_ThruPOA_Proxy_Impl; class _TAO_IDLType_Strategized_Proxy_Broker; class IDLType : public virtual POA_CORBA_IRObject { protected: IDLType (void); public: IDLType (const IDLType& rhs); virtual ~IDLType (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_IDLType *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; virtual CORBA::TypeCode_ptr type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_type_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. class TAO_ServerRequestInfo_IR_IDLType_type_get : public TAO_ServerRequestInfo { public: friend class POA_IR::IDLType; TAO_ServerRequestInfo_IR_IDLType_type_get ( TAO_ServerRequest &_tao_server_request, POA_IR::IDLType *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_IDLType_type_get (const TAO_ServerRequestInfo_IR_IDLType_type_get &); void operator= (const TAO_ServerRequestInfo_IR_IDLType_type_get &); private: POA_IR::IDLType *_tao_impl; void result (CORBA::TypeCode_ptr result); // update the result CORBA::TypeCode_ptr _result; }; #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_IDLType_Strategized_Proxy_Broker : public virtual _TAO_IDLType_Proxy_Broker { public: _TAO_IDLType_Strategized_Proxy_Broker (void); virtual ~_TAO_IDLType_Strategized_Proxy_Broker (void); virtual _TAO_IDLType_Proxy_Impl &select_proxy ( IR_IDLType *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_IDLType_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_IDLType_Strategized_Proxy_Broker *the_TAO_IDLType_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_IDLType_ThruPOA_Proxy_Impl : public virtual _TAO_IDLType_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual _TAO_IRObject_ThruPOA_Proxy_Impl { public: _TAO_IDLType_ThruPOA_Proxy_Impl (void); virtual ~_TAO_IDLType_ThruPOA_Proxy_Impl (void) { } virtual CORBA::TypeCode_ptr type ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class IDLType_tie : public IDLType { public: IDLType_tie (T &t); // the T& ctor IDLType_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA IDLType_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag IDLType_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~IDLType_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); CORBA::TypeCode_ptr type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed IDLType_tie (const IDLType_tie &); void operator= (const IDLType_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class Repository; typedef Repository *Repository_ptr; // Forward Classes Declaration class _TAO_Repository_ThruPOA_Proxy_Impl; class _TAO_Repository_Strategized_Proxy_Broker; class Repository : public virtual Container { protected: Repository (void); public: Repository (const Repository& rhs); virtual ~Repository (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_Repository *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; virtual IR_Contained_ptr lookup_id ( const char * search_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void lookup_id_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual CORBA::TypeCode_ptr get_canonical_typecode ( CORBA::TypeCode_ptr tc, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void get_canonical_typecode_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_PrimitiveDef_ptr get_primitive ( IR_PrimitiveKind kind, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void get_primitive_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_StringDef_ptr create_string ( CORBA::ULong bound, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void create_string_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_WstringDef_ptr create_wstring ( CORBA::ULong bound, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void create_wstring_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_SequenceDef_ptr create_sequence ( CORBA::ULong bound, IR_IDLType_ptr element_type, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void create_sequence_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_ArrayDef_ptr create_array ( CORBA::ULong length, IR_IDLType_ptr element_type, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void create_array_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_FixedDef_ptr create_fixed ( CORBA::UShort digits, CORBA::Short scale, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void create_fixed_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void lookup_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void contents_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void lookup_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_contents_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_module_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_constant_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_struct_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_union_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_enum_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_alias_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_interface_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_value_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_value_box_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_exception_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_native_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. class TAO_ServerRequestInfo_IR_Repository_lookup_id : public TAO_ServerRequestInfo { public: friend class POA_IR::Repository; TAO_ServerRequestInfo_IR_Repository_lookup_id ( TAO_ServerRequest &_tao_server_request, POA_IR::Repository *tao_impl , const char * search_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Repository_lookup_id (const TAO_ServerRequestInfo_IR_Repository_lookup_id &); void operator= (const TAO_ServerRequestInfo_IR_Repository_lookup_id &); private: POA_IR::Repository *_tao_impl; const char * search_id_; void result (IR::Contained_ptr result); // update the result IR_Contained_ptr _result; }; class TAO_ServerRequestInfo_IR_Repository_get_canonical_typecode : public TAO_ServerRequestInfo { public: friend class POA_IR::Repository; TAO_ServerRequestInfo_IR_Repository_get_canonical_typecode ( TAO_ServerRequest &_tao_server_request, POA_IR::Repository *tao_impl , CORBA::TypeCode_ptr tc, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Repository_get_canonical_typecode (const TAO_ServerRequestInfo_IR_Repository_get_canonical_typecode &); void operator= (const TAO_ServerRequestInfo_IR_Repository_get_canonical_typecode &); private: POA_IR::Repository *_tao_impl; CORBA::TypeCode_ptr tc_; void result (CORBA::TypeCode_ptr result); // update the result CORBA::TypeCode_ptr _result; }; class TAO_ServerRequestInfo_IR_Repository_get_primitive : public TAO_ServerRequestInfo { public: friend class POA_IR::Repository; TAO_ServerRequestInfo_IR_Repository_get_primitive ( TAO_ServerRequest &_tao_server_request, POA_IR::Repository *tao_impl , IR_PrimitiveKind & kind, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Repository_get_primitive (const TAO_ServerRequestInfo_IR_Repository_get_primitive &); void operator= (const TAO_ServerRequestInfo_IR_Repository_get_primitive &); private: POA_IR::Repository *_tao_impl; const IR_PrimitiveKind & kind_; void result (IR::PrimitiveDef_ptr result); // update the result IR_PrimitiveDef_ptr _result; }; class TAO_ServerRequestInfo_IR_Repository_create_string : public TAO_ServerRequestInfo { public: friend class POA_IR::Repository; TAO_ServerRequestInfo_IR_Repository_create_string ( TAO_ServerRequest &_tao_server_request, POA_IR::Repository *tao_impl , const CORBA::ULong & bound, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Repository_create_string (const TAO_ServerRequestInfo_IR_Repository_create_string &); void operator= (const TAO_ServerRequestInfo_IR_Repository_create_string &); private: POA_IR::Repository *_tao_impl; const CORBA::ULong & bound_; void result (IR::StringDef_ptr result); // update the result IR_StringDef_ptr _result; }; class TAO_ServerRequestInfo_IR_Repository_create_wstring : public TAO_ServerRequestInfo { public: friend class POA_IR::Repository; TAO_ServerRequestInfo_IR_Repository_create_wstring ( TAO_ServerRequest &_tao_server_request, POA_IR::Repository *tao_impl , const CORBA::ULong & bound, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Repository_create_wstring (const TAO_ServerRequestInfo_IR_Repository_create_wstring &); void operator= (const TAO_ServerRequestInfo_IR_Repository_create_wstring &); private: POA_IR::Repository *_tao_impl; const CORBA::ULong & bound_; void result (IR::WstringDef_ptr result); // update the result IR_WstringDef_ptr _result; }; class TAO_ServerRequestInfo_IR_Repository_create_sequence : public TAO_ServerRequestInfo { public: friend class POA_IR::Repository; TAO_ServerRequestInfo_IR_Repository_create_sequence ( TAO_ServerRequest &_tao_server_request, POA_IR::Repository *tao_impl , const CORBA::ULong & bound, IR_IDLType_ptr element_type, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Repository_create_sequence (const TAO_ServerRequestInfo_IR_Repository_create_sequence &); void operator= (const TAO_ServerRequestInfo_IR_Repository_create_sequence &); private: POA_IR::Repository *_tao_impl; const CORBA::ULong & bound_; IR_IDLType_ptr element_type_; void result (IR::SequenceDef_ptr result); // update the result IR_SequenceDef_ptr _result; }; class TAO_ServerRequestInfo_IR_Repository_create_array : public TAO_ServerRequestInfo { public: friend class POA_IR::Repository; TAO_ServerRequestInfo_IR_Repository_create_array ( TAO_ServerRequest &_tao_server_request, POA_IR::Repository *tao_impl , const CORBA::ULong & length, IR_IDLType_ptr element_type, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Repository_create_array (const TAO_ServerRequestInfo_IR_Repository_create_array &); void operator= (const TAO_ServerRequestInfo_IR_Repository_create_array &); private: POA_IR::Repository *_tao_impl; const CORBA::ULong & length_; IR_IDLType_ptr element_type_; void result (IR::ArrayDef_ptr result); // update the result IR_ArrayDef_ptr _result; }; class TAO_ServerRequestInfo_IR_Repository_create_fixed : public TAO_ServerRequestInfo { public: friend class POA_IR::Repository; TAO_ServerRequestInfo_IR_Repository_create_fixed ( TAO_ServerRequest &_tao_server_request, POA_IR::Repository *tao_impl , const CORBA::UShort & digits, const CORBA::Short & scale, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_Repository_create_fixed (const TAO_ServerRequestInfo_IR_Repository_create_fixed &); void operator= (const TAO_ServerRequestInfo_IR_Repository_create_fixed &); private: POA_IR::Repository *_tao_impl; const CORBA::UShort & digits_; const CORBA::Short & scale_; void result (IR::FixedDef_ptr result); // update the result IR_FixedDef_ptr _result; }; #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_Repository_Strategized_Proxy_Broker : public virtual _TAO_Repository_Proxy_Broker { public: _TAO_Repository_Strategized_Proxy_Broker (void); virtual ~_TAO_Repository_Strategized_Proxy_Broker (void); virtual _TAO_Repository_Proxy_Impl &select_proxy ( IR_Repository *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_Repository_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_Repository_Strategized_Proxy_Broker *the_TAO_Repository_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_Repository_ThruPOA_Proxy_Impl : public virtual _TAO_Repository_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual _TAO_Container_ThruPOA_Proxy_Impl { public: _TAO_Repository_ThruPOA_Proxy_Impl (void); virtual ~_TAO_Repository_ThruPOA_Proxy_Impl (void) { } virtual IR_Contained_ptr lookup_id ( CORBA_Object *_collocated_tao_target_, const char * search_id, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual CORBA::TypeCode_ptr get_canonical_typecode ( CORBA_Object *_collocated_tao_target_, CORBA::TypeCode_ptr tc, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_PrimitiveDef_ptr get_primitive ( CORBA_Object *_collocated_tao_target_, IR_PrimitiveKind kind, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_StringDef_ptr create_string ( CORBA_Object *_collocated_tao_target_, CORBA::ULong bound, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_WstringDef_ptr create_wstring ( CORBA_Object *_collocated_tao_target_, CORBA::ULong bound, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_SequenceDef_ptr create_sequence ( CORBA_Object *_collocated_tao_target_, CORBA::ULong bound, IR_IDLType_ptr element_type, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_ArrayDef_ptr create_array ( CORBA_Object *_collocated_tao_target_, CORBA::ULong length, IR_IDLType_ptr element_type, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_FixedDef_ptr create_fixed ( CORBA_Object *_collocated_tao_target_, CORBA::UShort digits, CORBA::Short scale, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class Repository_tie : public virtual Repository, public virtual PortableServer::RefCountServantBase { public: Repository_tie (T &t); // the T& ctor Repository_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA Repository_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag Repository_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~Repository_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); IR_Contained_ptr lookup_id ( const char * search_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::TypeCode_ptr get_canonical_typecode ( CORBA::TypeCode_ptr tc, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_PrimitiveDef_ptr get_primitive ( IR_PrimitiveKind kind, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_StringDef_ptr create_string ( CORBA::ULong bound, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_WstringDef_ptr create_wstring ( CORBA::ULong bound, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_SequenceDef_ptr create_sequence ( CORBA::ULong bound, IR_IDLType_ptr element_type, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ArrayDef_ptr create_array ( CORBA::ULong length, IR_IDLType_ptr element_type, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_FixedDef_ptr create_fixed ( CORBA::UShort digits, CORBA::Short scale, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained_ptr lookup ( const char * search_name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ContainedSeq * contents ( IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ContainedSeq * lookup_name ( const char * search_name, CORBA::Long levels_to_search, IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container::DescriptionSeq * describe_contents ( IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Long max_returned_objs, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ModuleDef_ptr create_module ( const char * id, const char * name, const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ConstantDef_ptr create_constant ( const char * id, const char * name, const char * version, IR_IDLType_ptr type, const CORBA::Any & value, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_StructDef_ptr create_struct ( const char * id, const char * name, const char * version, const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_UnionDef_ptr create_union ( const char * id, const char * name, const char * version, IR_IDLType_ptr discriminator_type, const IR_UnionMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_EnumDef_ptr create_enum ( const char * id, const char * name, const char * version, const IR_EnumMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_AliasDef_ptr create_alias ( const char * id, const char * name, const char * version, IR_IDLType_ptr original_type, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_InterfaceDef_ptr create_interface ( const char * id, const char * name, const char * version, const IR_InterfaceDefSeq & base_interfaces, CORBA::Boolean is_abstract, CORBA::Boolean is_local, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ValueDef_ptr create_value ( const char * id, const char * name, const char * version, CORBA::Boolean is_custom, CORBA::Boolean is_abstract, IR_ValueDef_ptr base_value, CORBA::Boolean is_truncatable, const IR_ValueDefSeq & abstract_base_values, const IR_InterfaceDefSeq & supported_interfaces, const IR_InitializerSeq & initializers, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ValueBoxDef_ptr create_value_box ( const char * id, const char * name, const char * version, IR_IDLType_ptr original_type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ExceptionDef_ptr create_exception ( const char * id, const char * name, const char * version, const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_NativeDef_ptr create_native ( const char * id, const char * name, const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed Repository_tie (const Repository_tie &); void operator= (const Repository_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class ComponentRepository; typedef ComponentRepository *ComponentRepository_ptr; // Forward Classes Declaration class _TAO_ComponentRepository_ThruPOA_Proxy_Impl; class _TAO_ComponentRepository_Strategized_Proxy_Broker; class ComponentRepository : public virtual Repository { protected: ComponentRepository (void); public: ComponentRepository (const ComponentRepository& rhs); virtual ~ComponentRepository (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_ComponentRepository *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; virtual IR_ComponentDef_ptr create_component ( const char * id, const char * name, const char * version, IR_ComponentDef_ptr base_component, const IR_InterfaceDefSeq & supports_interfaces, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void create_component_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_HomeDef_ptr create_home ( const char * id, const char * name, const char * version, IR_HomeDef_ptr base_home, IR_ComponentDef_ptr managed_component, IR_ValueDef_ptr primary_key, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void create_home_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void lookup_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void get_canonical_typecode_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void get_primitive_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_string_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_wstring_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_sequence_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_array_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_fixed_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void lookup_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void contents_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void lookup_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_contents_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_module_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_constant_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_struct_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_union_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_enum_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_alias_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_interface_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_value_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_value_box_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_exception_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_native_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. class TAO_ServerRequestInfo_IR_ComponentRepository_create_component : public TAO_ServerRequestInfo { public: friend class POA_IR::ComponentRepository; TAO_ServerRequestInfo_IR_ComponentRepository_create_component ( TAO_ServerRequest &_tao_server_request, POA_IR::ComponentRepository *tao_impl , const char * id, const char * name, const char * version, IR_ComponentDef_ptr base_component, const IR_InterfaceDefSeq & supports_interfaces, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ComponentRepository_create_component (const TAO_ServerRequestInfo_IR_ComponentRepository_create_component &); void operator= (const TAO_ServerRequestInfo_IR_ComponentRepository_create_component &); private: POA_IR::ComponentRepository *_tao_impl; const char * id_; const char * name_; const char * version_; IR_ComponentDef_ptr base_component_; const IR_InterfaceDefSeq & supports_interfaces_; void result (IR::ComponentDef_ptr result); // update the result IR_ComponentDef_ptr _result; }; class TAO_ServerRequestInfo_IR_ComponentRepository_create_home : public TAO_ServerRequestInfo { public: friend class POA_IR::ComponentRepository; TAO_ServerRequestInfo_IR_ComponentRepository_create_home ( TAO_ServerRequest &_tao_server_request, POA_IR::ComponentRepository *tao_impl , const char * id, const char * name, const char * version, IR_HomeDef_ptr base_home, IR_ComponentDef_ptr managed_component, IR_ValueDef_ptr primary_key, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ComponentRepository_create_home (const TAO_ServerRequestInfo_IR_ComponentRepository_create_home &); void operator= (const TAO_ServerRequestInfo_IR_ComponentRepository_create_home &); private: POA_IR::ComponentRepository *_tao_impl; const char * id_; const char * name_; const char * version_; IR_HomeDef_ptr base_home_; IR_ComponentDef_ptr managed_component_; IR_ValueDef_ptr primary_key_; void result (IR::HomeDef_ptr result); // update the result IR_HomeDef_ptr _result; }; #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_ComponentRepository_Strategized_Proxy_Broker : public virtual _TAO_ComponentRepository_Proxy_Broker { public: _TAO_ComponentRepository_Strategized_Proxy_Broker (void); virtual ~_TAO_ComponentRepository_Strategized_Proxy_Broker (void); virtual _TAO_ComponentRepository_Proxy_Impl &select_proxy ( IR_ComponentRepository *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_ComponentRepository_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_ComponentRepository_Strategized_Proxy_Broker *the_TAO_ComponentRepository_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_ComponentRepository_ThruPOA_Proxy_Impl : public virtual _TAO_ComponentRepository_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual ::POA_IR::_TAO_Repository_ThruPOA_Proxy_Impl { public: _TAO_ComponentRepository_ThruPOA_Proxy_Impl (void); virtual ~_TAO_ComponentRepository_ThruPOA_Proxy_Impl (void) { } virtual IR_ComponentDef_ptr create_component ( CORBA_Object *_collocated_tao_target_, const char * id, const char * name, const char * version, IR_ComponentDef_ptr base_component, const IR_InterfaceDefSeq & supports_interfaces, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_HomeDef_ptr create_home ( CORBA_Object *_collocated_tao_target_, const char * id, const char * name, const char * version, IR_HomeDef_ptr base_home, IR_ComponentDef_ptr managed_component, IR_ValueDef_ptr primary_key, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class ComponentRepository_tie : public virtual ComponentRepository, public virtual PortableServer::RefCountServantBase { public: ComponentRepository_tie (T &t); // the T& ctor ComponentRepository_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA ComponentRepository_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag ComponentRepository_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~ComponentRepository_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); IR_ComponentDef_ptr create_component ( const char * id, const char * name, const char * version, IR_ComponentDef_ptr base_component, const IR_InterfaceDefSeq & supports_interfaces, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_HomeDef_ptr create_home ( const char * id, const char * name, const char * version, IR_HomeDef_ptr base_home, IR_ComponentDef_ptr managed_component, IR_ValueDef_ptr primary_key, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained_ptr lookup_id ( const char * search_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::TypeCode_ptr get_canonical_typecode ( CORBA::TypeCode_ptr tc, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_PrimitiveDef_ptr get_primitive ( IR_PrimitiveKind kind, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_StringDef_ptr create_string ( CORBA::ULong bound, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_WstringDef_ptr create_wstring ( CORBA::ULong bound, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_SequenceDef_ptr create_sequence ( CORBA::ULong bound, IR_IDLType_ptr element_type, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ArrayDef_ptr create_array ( CORBA::ULong length, IR_IDLType_ptr element_type, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_FixedDef_ptr create_fixed ( CORBA::UShort digits, CORBA::Short scale, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained_ptr lookup ( const char * search_name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ContainedSeq * contents ( IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ContainedSeq * lookup_name ( const char * search_name, CORBA::Long levels_to_search, IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container::DescriptionSeq * describe_contents ( IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Long max_returned_objs, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ModuleDef_ptr create_module ( const char * id, const char * name, const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ConstantDef_ptr create_constant ( const char * id, const char * name, const char * version, IR_IDLType_ptr type, const CORBA::Any & value, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_StructDef_ptr create_struct ( const char * id, const char * name, const char * version, const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_UnionDef_ptr create_union ( const char * id, const char * name, const char * version, IR_IDLType_ptr discriminator_type, const IR_UnionMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_EnumDef_ptr create_enum ( const char * id, const char * name, const char * version, const IR_EnumMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_AliasDef_ptr create_alias ( const char * id, const char * name, const char * version, IR_IDLType_ptr original_type, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_InterfaceDef_ptr create_interface ( const char * id, const char * name, const char * version, const IR_InterfaceDefSeq & base_interfaces, CORBA::Boolean is_abstract, CORBA::Boolean is_local, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ValueDef_ptr create_value ( const char * id, const char * name, const char * version, CORBA::Boolean is_custom, CORBA::Boolean is_abstract, IR_ValueDef_ptr base_value, CORBA::Boolean is_truncatable, const IR_ValueDefSeq & abstract_base_values, const IR_InterfaceDefSeq & supported_interfaces, const IR_InitializerSeq & initializers, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ValueBoxDef_ptr create_value_box ( const char * id, const char * name, const char * version, IR_IDLType_ptr original_type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ExceptionDef_ptr create_exception ( const char * id, const char * name, const char * version, const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_NativeDef_ptr create_native ( const char * id, const char * name, const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed ComponentRepository_tie (const ComponentRepository_tie &); void operator= (const ComponentRepository_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class ModuleDef; typedef ModuleDef *ModuleDef_ptr; // Forward Classes Declaration class _TAO_ModuleDef_ThruPOA_Proxy_Impl; class _TAO_ModuleDef_Strategized_Proxy_Broker; class ModuleDef : public virtual Container, public virtual Contained { protected: ModuleDef (void); public: ModuleDef (const ModuleDef& rhs); virtual ~ModuleDef (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_ModuleDef *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; static void lookup_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void contents_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void lookup_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_contents_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_module_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_constant_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_struct_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_union_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_enum_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_alias_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_interface_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_value_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_value_box_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_exception_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_native_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_defined_in_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_absolute_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_containing_repository_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void move_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_ModuleDef_Strategized_Proxy_Broker : public virtual _TAO_ModuleDef_Proxy_Broker { public: _TAO_ModuleDef_Strategized_Proxy_Broker (void); virtual ~_TAO_ModuleDef_Strategized_Proxy_Broker (void); virtual _TAO_ModuleDef_Proxy_Impl &select_proxy ( IR_ModuleDef *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_ModuleDef_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_ModuleDef_Strategized_Proxy_Broker *the_TAO_ModuleDef_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_ModuleDef_ThruPOA_Proxy_Impl : public virtual _TAO_ModuleDef_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual ::POA_IR::_TAO_Container_ThruPOA_Proxy_Impl, public virtual ::POA_IR::_TAO_Contained_ThruPOA_Proxy_Impl { public: _TAO_ModuleDef_ThruPOA_Proxy_Impl (void); virtual ~_TAO_ModuleDef_ThruPOA_Proxy_Impl (void) { } }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class ModuleDef_tie : public ModuleDef { public: ModuleDef_tie (T &t); // the T& ctor ModuleDef_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA ModuleDef_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag ModuleDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~ModuleDef_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); IR_Contained_ptr lookup ( const char * search_name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ContainedSeq * contents ( IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ContainedSeq * lookup_name ( const char * search_name, CORBA::Long levels_to_search, IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container::DescriptionSeq * describe_contents ( IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Long max_returned_objs, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ModuleDef_ptr create_module ( const char * id, const char * name, const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ConstantDef_ptr create_constant ( const char * id, const char * name, const char * version, IR_IDLType_ptr type, const CORBA::Any & value, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_StructDef_ptr create_struct ( const char * id, const char * name, const char * version, const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_UnionDef_ptr create_union ( const char * id, const char * name, const char * version, IR_IDLType_ptr discriminator_type, const IR_UnionMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_EnumDef_ptr create_enum ( const char * id, const char * name, const char * version, const IR_EnumMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_AliasDef_ptr create_alias ( const char * id, const char * name, const char * version, IR_IDLType_ptr original_type, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_InterfaceDef_ptr create_interface ( const char * id, const char * name, const char * version, const IR_InterfaceDefSeq & base_interfaces, CORBA::Boolean is_abstract, CORBA::Boolean is_local, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ValueDef_ptr create_value ( const char * id, const char * name, const char * version, CORBA::Boolean is_custom, CORBA::Boolean is_abstract, IR_ValueDef_ptr base_value, CORBA::Boolean is_truncatable, const IR_ValueDefSeq & abstract_base_values, const IR_InterfaceDefSeq & supported_interfaces, const IR_InitializerSeq & initializers, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ValueBoxDef_ptr create_value_box ( const char * id, const char * name, const char * version, IR_IDLType_ptr original_type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ExceptionDef_ptr create_exception ( const char * id, const char * name, const char * version, const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_NativeDef_ptr create_native ( const char * id, const char * name, const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * id ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void id ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void name ( const char * name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * version ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void version ( const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container_ptr defined_in ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * absolute_name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Repository_ptr containing_repository ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained::Description * describe ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void move ( IR_Container_ptr new_container, const char * new_name, const char * new_version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed ModuleDef_tie (const ModuleDef_tie &); void operator= (const ModuleDef_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class ConstantDef; typedef ConstantDef *ConstantDef_ptr; // Forward Classes Declaration class _TAO_ConstantDef_ThruPOA_Proxy_Impl; class _TAO_ConstantDef_Strategized_Proxy_Broker; class ConstantDef : public virtual Contained { protected: ConstantDef (void); public: ConstantDef (const ConstantDef& rhs); virtual ~ConstantDef (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_ConstantDef *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; virtual CORBA::TypeCode_ptr type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_type_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_IDLType_ptr type_def ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_type_def_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void type_def ( IR_IDLType_ptr type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_type_def_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual CORBA::Any * value ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_value_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void value ( const CORBA::Any & value, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_value_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _get_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_defined_in_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_absolute_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_containing_repository_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void move_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. class TAO_ServerRequestInfo_IR_ConstantDef_type_get : public TAO_ServerRequestInfo { public: friend class POA_IR::ConstantDef; TAO_ServerRequestInfo_IR_ConstantDef_type_get ( TAO_ServerRequest &_tao_server_request, POA_IR::ConstantDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ConstantDef_type_get (const TAO_ServerRequestInfo_IR_ConstantDef_type_get &); void operator= (const TAO_ServerRequestInfo_IR_ConstantDef_type_get &); private: POA_IR::ConstantDef *_tao_impl; void result (CORBA::TypeCode_ptr result); // update the result CORBA::TypeCode_ptr _result; }; class TAO_ServerRequestInfo_IR_ConstantDef_type_def_get : public TAO_ServerRequestInfo { public: friend class POA_IR::ConstantDef; TAO_ServerRequestInfo_IR_ConstantDef_type_def_get ( TAO_ServerRequest &_tao_server_request, POA_IR::ConstantDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ConstantDef_type_def_get (const TAO_ServerRequestInfo_IR_ConstantDef_type_def_get &); void operator= (const TAO_ServerRequestInfo_IR_ConstantDef_type_def_get &); private: POA_IR::ConstantDef *_tao_impl; void result (IR::IDLType_ptr result); // update the result IR_IDLType_ptr _result; }; class TAO_ServerRequestInfo_IR_ConstantDef_type_def_set : public TAO_ServerRequestInfo { public: friend class POA_IR::ConstantDef; TAO_ServerRequestInfo_IR_ConstantDef_type_def_set ( TAO_ServerRequest &_tao_server_request, POA_IR::ConstantDef *tao_impl , IR_IDLType_ptr type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ConstantDef_type_def_set (const TAO_ServerRequestInfo_IR_ConstantDef_type_def_set &); void operator= (const TAO_ServerRequestInfo_IR_ConstantDef_type_def_set &); private: POA_IR::ConstantDef *_tao_impl; IR_IDLType_ptr type_def_; }; class TAO_ServerRequestInfo_IR_ConstantDef_value_get : public TAO_ServerRequestInfo { public: friend class POA_IR::ConstantDef; TAO_ServerRequestInfo_IR_ConstantDef_value_get ( TAO_ServerRequest &_tao_server_request, POA_IR::ConstantDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ConstantDef_value_get (const TAO_ServerRequestInfo_IR_ConstantDef_value_get &); void operator= (const TAO_ServerRequestInfo_IR_ConstantDef_value_get &); private: POA_IR::ConstantDef *_tao_impl; void result (CORBA::Any * result); // update the result CORBA::Any * _result; }; class TAO_ServerRequestInfo_IR_ConstantDef_value_set : public TAO_ServerRequestInfo { public: friend class POA_IR::ConstantDef; TAO_ServerRequestInfo_IR_ConstantDef_value_set ( TAO_ServerRequest &_tao_server_request, POA_IR::ConstantDef *tao_impl , const CORBA::Any & value, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ConstantDef_value_set (const TAO_ServerRequestInfo_IR_ConstantDef_value_set &); void operator= (const TAO_ServerRequestInfo_IR_ConstantDef_value_set &); private: POA_IR::ConstantDef *_tao_impl; const CORBA::Any & value_; }; #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_ConstantDef_Strategized_Proxy_Broker : public virtual _TAO_ConstantDef_Proxy_Broker { public: _TAO_ConstantDef_Strategized_Proxy_Broker (void); virtual ~_TAO_ConstantDef_Strategized_Proxy_Broker (void); virtual _TAO_ConstantDef_Proxy_Impl &select_proxy ( IR_ConstantDef *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_ConstantDef_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_ConstantDef_Strategized_Proxy_Broker *the_TAO_ConstantDef_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_ConstantDef_ThruPOA_Proxy_Impl : public virtual _TAO_ConstantDef_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual ::POA_IR::_TAO_Contained_ThruPOA_Proxy_Impl { public: _TAO_ConstantDef_ThruPOA_Proxy_Impl (void); virtual ~_TAO_ConstantDef_ThruPOA_Proxy_Impl (void) { } virtual CORBA::TypeCode_ptr type ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_IDLType_ptr type_def ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void type_def ( CORBA_Object *_collocated_tao_target_, IR_IDLType_ptr type_def, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual CORBA::Any * value ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void value ( CORBA_Object *_collocated_tao_target_, const CORBA::Any & value, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class ConstantDef_tie : public ConstantDef { public: ConstantDef_tie (T &t); // the T& ctor ConstantDef_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA ConstantDef_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag ConstantDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~ConstantDef_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); CORBA::TypeCode_ptr type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_IDLType_ptr type_def ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void type_def ( IR_IDLType_ptr type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::Any * value ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void value ( const CORBA::Any & value, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * id ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void id ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void name ( const char * name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * version ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void version ( const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container_ptr defined_in ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * absolute_name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Repository_ptr containing_repository ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained::Description * describe ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void move ( IR_Container_ptr new_container, const char * new_name, const char * new_version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed ConstantDef_tie (const ConstantDef_tie &); void operator= (const ConstantDef_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class TypedefDef; typedef TypedefDef *TypedefDef_ptr; // Forward Classes Declaration class _TAO_TypedefDef_ThruPOA_Proxy_Impl; class _TAO_TypedefDef_Strategized_Proxy_Broker; class TypedefDef : public virtual Contained, public virtual IDLType { protected: TypedefDef (void); public: TypedefDef (const TypedefDef& rhs); virtual ~TypedefDef (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_TypedefDef *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; static void _get_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_defined_in_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_absolute_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_containing_repository_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void move_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_type_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_TypedefDef_Strategized_Proxy_Broker : public virtual _TAO_TypedefDef_Proxy_Broker { public: _TAO_TypedefDef_Strategized_Proxy_Broker (void); virtual ~_TAO_TypedefDef_Strategized_Proxy_Broker (void); virtual _TAO_TypedefDef_Proxy_Impl &select_proxy ( IR_TypedefDef *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_TypedefDef_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_TypedefDef_Strategized_Proxy_Broker *the_TAO_TypedefDef_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_TypedefDef_ThruPOA_Proxy_Impl : public virtual _TAO_TypedefDef_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual ::POA_IR::_TAO_Contained_ThruPOA_Proxy_Impl, public virtual ::POA_IR::_TAO_IDLType_ThruPOA_Proxy_Impl { public: _TAO_TypedefDef_ThruPOA_Proxy_Impl (void); virtual ~_TAO_TypedefDef_ThruPOA_Proxy_Impl (void) { } }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class TypedefDef_tie : public TypedefDef { public: TypedefDef_tie (T &t); // the T& ctor TypedefDef_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA TypedefDef_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag TypedefDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~TypedefDef_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); char * id ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void id ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void name ( const char * name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * version ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void version ( const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container_ptr defined_in ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * absolute_name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Repository_ptr containing_repository ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained::Description * describe ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void move ( IR_Container_ptr new_container, const char * new_name, const char * new_version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::TypeCode_ptr type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed TypedefDef_tie (const TypedefDef_tie &); void operator= (const TypedefDef_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class StructDef; typedef StructDef *StructDef_ptr; // Forward Classes Declaration class _TAO_StructDef_ThruPOA_Proxy_Impl; class _TAO_StructDef_Strategized_Proxy_Broker; class StructDef : public virtual TypedefDef, public virtual Container { protected: StructDef (void); public: StructDef (const StructDef& rhs); virtual ~StructDef (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_StructDef *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; virtual IR_StructMemberSeq * members ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_members_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void members ( const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_members_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void lookup_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void contents_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void lookup_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_contents_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_module_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_constant_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_struct_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_union_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_enum_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_alias_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_interface_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_value_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_value_box_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_exception_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_native_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_defined_in_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_absolute_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_containing_repository_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void move_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_type_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. class TAO_ServerRequestInfo_IR_StructDef_members_get : public TAO_ServerRequestInfo { public: friend class POA_IR::StructDef; TAO_ServerRequestInfo_IR_StructDef_members_get ( TAO_ServerRequest &_tao_server_request, POA_IR::StructDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_StructDef_members_get (const TAO_ServerRequestInfo_IR_StructDef_members_get &); void operator= (const TAO_ServerRequestInfo_IR_StructDef_members_get &); private: POA_IR::StructDef *_tao_impl; void result (IR::StructMemberSeq * result); // update the result IR_StructMemberSeq * _result; }; class TAO_ServerRequestInfo_IR_StructDef_members_set : public TAO_ServerRequestInfo { public: friend class POA_IR::StructDef; TAO_ServerRequestInfo_IR_StructDef_members_set ( TAO_ServerRequest &_tao_server_request, POA_IR::StructDef *tao_impl , const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_StructDef_members_set (const TAO_ServerRequestInfo_IR_StructDef_members_set &); void operator= (const TAO_ServerRequestInfo_IR_StructDef_members_set &); private: POA_IR::StructDef *_tao_impl; const IR_StructMemberSeq & members_; }; #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_StructDef_Strategized_Proxy_Broker : public virtual _TAO_StructDef_Proxy_Broker { public: _TAO_StructDef_Strategized_Proxy_Broker (void); virtual ~_TAO_StructDef_Strategized_Proxy_Broker (void); virtual _TAO_StructDef_Proxy_Impl &select_proxy ( IR_StructDef *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_StructDef_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_StructDef_Strategized_Proxy_Broker *the_TAO_StructDef_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_StructDef_ThruPOA_Proxy_Impl : public virtual _TAO_StructDef_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual ::POA_IR::_TAO_TypedefDef_ThruPOA_Proxy_Impl, public virtual ::POA_IR::_TAO_Container_ThruPOA_Proxy_Impl { public: _TAO_StructDef_ThruPOA_Proxy_Impl (void); virtual ~_TAO_StructDef_ThruPOA_Proxy_Impl (void) { } virtual IR_StructMemberSeq * members ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void members ( CORBA_Object *_collocated_tao_target_, const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class StructDef_tie : public StructDef { public: StructDef_tie (T &t); // the T& ctor StructDef_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA StructDef_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag StructDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~StructDef_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); IR_StructMemberSeq * members ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void members ( const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained_ptr lookup ( const char * search_name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ContainedSeq * contents ( IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ContainedSeq * lookup_name ( const char * search_name, CORBA::Long levels_to_search, IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container::DescriptionSeq * describe_contents ( IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Long max_returned_objs, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ModuleDef_ptr create_module ( const char * id, const char * name, const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ConstantDef_ptr create_constant ( const char * id, const char * name, const char * version, IR_IDLType_ptr type, const CORBA::Any & value, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_StructDef_ptr create_struct ( const char * id, const char * name, const char * version, const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_UnionDef_ptr create_union ( const char * id, const char * name, const char * version, IR_IDLType_ptr discriminator_type, const IR_UnionMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_EnumDef_ptr create_enum ( const char * id, const char * name, const char * version, const IR_EnumMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_AliasDef_ptr create_alias ( const char * id, const char * name, const char * version, IR_IDLType_ptr original_type, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_InterfaceDef_ptr create_interface ( const char * id, const char * name, const char * version, const IR_InterfaceDefSeq & base_interfaces, CORBA::Boolean is_abstract, CORBA::Boolean is_local, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ValueDef_ptr create_value ( const char * id, const char * name, const char * version, CORBA::Boolean is_custom, CORBA::Boolean is_abstract, IR_ValueDef_ptr base_value, CORBA::Boolean is_truncatable, const IR_ValueDefSeq & abstract_base_values, const IR_InterfaceDefSeq & supported_interfaces, const IR_InitializerSeq & initializers, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ValueBoxDef_ptr create_value_box ( const char * id, const char * name, const char * version, IR_IDLType_ptr original_type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ExceptionDef_ptr create_exception ( const char * id, const char * name, const char * version, const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_NativeDef_ptr create_native ( const char * id, const char * name, const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * id ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void id ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void name ( const char * name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * version ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void version ( const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container_ptr defined_in ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * absolute_name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Repository_ptr containing_repository ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained::Description * describe ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void move ( IR_Container_ptr new_container, const char * new_name, const char * new_version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::TypeCode_ptr type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed StructDef_tie (const StructDef_tie &); void operator= (const StructDef_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class UnionDef; typedef UnionDef *UnionDef_ptr; // Forward Classes Declaration class _TAO_UnionDef_ThruPOA_Proxy_Impl; class _TAO_UnionDef_Strategized_Proxy_Broker; class UnionDef : public virtual TypedefDef, public virtual Container { protected: UnionDef (void); public: UnionDef (const UnionDef& rhs); virtual ~UnionDef (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_UnionDef *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; virtual CORBA::TypeCode_ptr discriminator_type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_discriminator_type_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_IDLType_ptr discriminator_type_def ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_discriminator_type_def_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void discriminator_type_def ( IR_IDLType_ptr discriminator_type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_discriminator_type_def_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_UnionMemberSeq * members ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_members_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void members ( const IR_UnionMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_members_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void lookup_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void contents_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void lookup_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_contents_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_module_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_constant_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_struct_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_union_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_enum_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_alias_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_interface_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_value_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_value_box_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_exception_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_native_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_defined_in_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_absolute_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_containing_repository_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void move_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_type_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. class TAO_ServerRequestInfo_IR_UnionDef_discriminator_type_get : public TAO_ServerRequestInfo { public: friend class POA_IR::UnionDef; TAO_ServerRequestInfo_IR_UnionDef_discriminator_type_get ( TAO_ServerRequest &_tao_server_request, POA_IR::UnionDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_UnionDef_discriminator_type_get (const TAO_ServerRequestInfo_IR_UnionDef_discriminator_type_get &); void operator= (const TAO_ServerRequestInfo_IR_UnionDef_discriminator_type_get &); private: POA_IR::UnionDef *_tao_impl; void result (CORBA::TypeCode_ptr result); // update the result CORBA::TypeCode_ptr _result; }; class TAO_ServerRequestInfo_IR_UnionDef_discriminator_type_def_get : public TAO_ServerRequestInfo { public: friend class POA_IR::UnionDef; TAO_ServerRequestInfo_IR_UnionDef_discriminator_type_def_get ( TAO_ServerRequest &_tao_server_request, POA_IR::UnionDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_UnionDef_discriminator_type_def_get (const TAO_ServerRequestInfo_IR_UnionDef_discriminator_type_def_get &); void operator= (const TAO_ServerRequestInfo_IR_UnionDef_discriminator_type_def_get &); private: POA_IR::UnionDef *_tao_impl; void result (IR::IDLType_ptr result); // update the result IR_IDLType_ptr _result; }; class TAO_ServerRequestInfo_IR_UnionDef_discriminator_type_def_set : public TAO_ServerRequestInfo { public: friend class POA_IR::UnionDef; TAO_ServerRequestInfo_IR_UnionDef_discriminator_type_def_set ( TAO_ServerRequest &_tao_server_request, POA_IR::UnionDef *tao_impl , IR_IDLType_ptr discriminator_type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_UnionDef_discriminator_type_def_set (const TAO_ServerRequestInfo_IR_UnionDef_discriminator_type_def_set &); void operator= (const TAO_ServerRequestInfo_IR_UnionDef_discriminator_type_def_set &); private: POA_IR::UnionDef *_tao_impl; IR_IDLType_ptr discriminator_type_def_; }; class TAO_ServerRequestInfo_IR_UnionDef_members_get : public TAO_ServerRequestInfo { public: friend class POA_IR::UnionDef; TAO_ServerRequestInfo_IR_UnionDef_members_get ( TAO_ServerRequest &_tao_server_request, POA_IR::UnionDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_UnionDef_members_get (const TAO_ServerRequestInfo_IR_UnionDef_members_get &); void operator= (const TAO_ServerRequestInfo_IR_UnionDef_members_get &); private: POA_IR::UnionDef *_tao_impl; void result (IR::UnionMemberSeq * result); // update the result IR_UnionMemberSeq * _result; }; class TAO_ServerRequestInfo_IR_UnionDef_members_set : public TAO_ServerRequestInfo { public: friend class POA_IR::UnionDef; TAO_ServerRequestInfo_IR_UnionDef_members_set ( TAO_ServerRequest &_tao_server_request, POA_IR::UnionDef *tao_impl , const IR_UnionMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_UnionDef_members_set (const TAO_ServerRequestInfo_IR_UnionDef_members_set &); void operator= (const TAO_ServerRequestInfo_IR_UnionDef_members_set &); private: POA_IR::UnionDef *_tao_impl; const IR_UnionMemberSeq & members_; }; #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_UnionDef_Strategized_Proxy_Broker : public virtual _TAO_UnionDef_Proxy_Broker { public: _TAO_UnionDef_Strategized_Proxy_Broker (void); virtual ~_TAO_UnionDef_Strategized_Proxy_Broker (void); virtual _TAO_UnionDef_Proxy_Impl &select_proxy ( IR_UnionDef *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_UnionDef_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_UnionDef_Strategized_Proxy_Broker *the_TAO_UnionDef_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_UnionDef_ThruPOA_Proxy_Impl : public virtual _TAO_UnionDef_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual ::POA_IR::_TAO_TypedefDef_ThruPOA_Proxy_Impl, public virtual ::POA_IR::_TAO_Container_ThruPOA_Proxy_Impl { public: _TAO_UnionDef_ThruPOA_Proxy_Impl (void); virtual ~_TAO_UnionDef_ThruPOA_Proxy_Impl (void) { } virtual CORBA::TypeCode_ptr discriminator_type ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_IDLType_ptr discriminator_type_def ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void discriminator_type_def ( CORBA_Object *_collocated_tao_target_, IR_IDLType_ptr discriminator_type_def, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_UnionMemberSeq * members ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void members ( CORBA_Object *_collocated_tao_target_, const IR_UnionMemberSeq & members, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class UnionDef_tie : public UnionDef { public: UnionDef_tie (T &t); // the T& ctor UnionDef_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA UnionDef_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag UnionDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~UnionDef_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); CORBA::TypeCode_ptr discriminator_type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_IDLType_ptr discriminator_type_def ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void discriminator_type_def ( IR_IDLType_ptr discriminator_type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_UnionMemberSeq * members ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void members ( const IR_UnionMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained_ptr lookup ( const char * search_name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ContainedSeq * contents ( IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ContainedSeq * lookup_name ( const char * search_name, CORBA::Long levels_to_search, IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container::DescriptionSeq * describe_contents ( IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Long max_returned_objs, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ModuleDef_ptr create_module ( const char * id, const char * name, const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ConstantDef_ptr create_constant ( const char * id, const char * name, const char * version, IR_IDLType_ptr type, const CORBA::Any & value, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_StructDef_ptr create_struct ( const char * id, const char * name, const char * version, const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_UnionDef_ptr create_union ( const char * id, const char * name, const char * version, IR_IDLType_ptr discriminator_type, const IR_UnionMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_EnumDef_ptr create_enum ( const char * id, const char * name, const char * version, const IR_EnumMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_AliasDef_ptr create_alias ( const char * id, const char * name, const char * version, IR_IDLType_ptr original_type, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_InterfaceDef_ptr create_interface ( const char * id, const char * name, const char * version, const IR_InterfaceDefSeq & base_interfaces, CORBA::Boolean is_abstract, CORBA::Boolean is_local, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ValueDef_ptr create_value ( const char * id, const char * name, const char * version, CORBA::Boolean is_custom, CORBA::Boolean is_abstract, IR_ValueDef_ptr base_value, CORBA::Boolean is_truncatable, const IR_ValueDefSeq & abstract_base_values, const IR_InterfaceDefSeq & supported_interfaces, const IR_InitializerSeq & initializers, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ValueBoxDef_ptr create_value_box ( const char * id, const char * name, const char * version, IR_IDLType_ptr original_type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ExceptionDef_ptr create_exception ( const char * id, const char * name, const char * version, const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_NativeDef_ptr create_native ( const char * id, const char * name, const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * id ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void id ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void name ( const char * name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * version ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void version ( const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container_ptr defined_in ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * absolute_name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Repository_ptr containing_repository ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained::Description * describe ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void move ( IR_Container_ptr new_container, const char * new_name, const char * new_version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::TypeCode_ptr type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed UnionDef_tie (const UnionDef_tie &); void operator= (const UnionDef_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class EnumDef; typedef EnumDef *EnumDef_ptr; // Forward Classes Declaration class _TAO_EnumDef_ThruPOA_Proxy_Impl; class _TAO_EnumDef_Strategized_Proxy_Broker; class EnumDef : public virtual TypedefDef { protected: EnumDef (void); public: EnumDef (const EnumDef& rhs); virtual ~EnumDef (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_EnumDef *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; virtual IR_EnumMemberSeq * members ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_members_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void members ( const IR_EnumMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_members_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _get_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_defined_in_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_absolute_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_containing_repository_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void move_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_type_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. class TAO_ServerRequestInfo_IR_EnumDef_members_get : public TAO_ServerRequestInfo { public: friend class POA_IR::EnumDef; TAO_ServerRequestInfo_IR_EnumDef_members_get ( TAO_ServerRequest &_tao_server_request, POA_IR::EnumDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_EnumDef_members_get (const TAO_ServerRequestInfo_IR_EnumDef_members_get &); void operator= (const TAO_ServerRequestInfo_IR_EnumDef_members_get &); private: POA_IR::EnumDef *_tao_impl; void result (IR::EnumMemberSeq * result); // update the result IR_EnumMemberSeq * _result; }; class TAO_ServerRequestInfo_IR_EnumDef_members_set : public TAO_ServerRequestInfo { public: friend class POA_IR::EnumDef; TAO_ServerRequestInfo_IR_EnumDef_members_set ( TAO_ServerRequest &_tao_server_request, POA_IR::EnumDef *tao_impl , const IR_EnumMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_EnumDef_members_set (const TAO_ServerRequestInfo_IR_EnumDef_members_set &); void operator= (const TAO_ServerRequestInfo_IR_EnumDef_members_set &); private: POA_IR::EnumDef *_tao_impl; const IR_EnumMemberSeq & members_; }; #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_EnumDef_Strategized_Proxy_Broker : public virtual _TAO_EnumDef_Proxy_Broker { public: _TAO_EnumDef_Strategized_Proxy_Broker (void); virtual ~_TAO_EnumDef_Strategized_Proxy_Broker (void); virtual _TAO_EnumDef_Proxy_Impl &select_proxy ( IR_EnumDef *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_EnumDef_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_EnumDef_Strategized_Proxy_Broker *the_TAO_EnumDef_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_EnumDef_ThruPOA_Proxy_Impl : public virtual _TAO_EnumDef_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual ::POA_IR::_TAO_TypedefDef_ThruPOA_Proxy_Impl { public: _TAO_EnumDef_ThruPOA_Proxy_Impl (void); virtual ~_TAO_EnumDef_ThruPOA_Proxy_Impl (void) { } virtual IR_EnumMemberSeq * members ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void members ( CORBA_Object *_collocated_tao_target_, const IR_EnumMemberSeq & members, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class EnumDef_tie : public EnumDef { public: EnumDef_tie (T &t); // the T& ctor EnumDef_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA EnumDef_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag EnumDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~EnumDef_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); IR_EnumMemberSeq * members ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void members ( const IR_EnumMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * id ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void id ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void name ( const char * name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * version ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void version ( const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container_ptr defined_in ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * absolute_name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Repository_ptr containing_repository ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained::Description * describe ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void move ( IR_Container_ptr new_container, const char * new_name, const char * new_version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::TypeCode_ptr type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed EnumDef_tie (const EnumDef_tie &); void operator= (const EnumDef_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class AliasDef; typedef AliasDef *AliasDef_ptr; // Forward Classes Declaration class _TAO_AliasDef_ThruPOA_Proxy_Impl; class _TAO_AliasDef_Strategized_Proxy_Broker; class AliasDef : public virtual TypedefDef { protected: AliasDef (void); public: AliasDef (const AliasDef& rhs); virtual ~AliasDef (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_AliasDef *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; virtual IR_IDLType_ptr original_type_def ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_original_type_def_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void original_type_def ( IR_IDLType_ptr original_type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_original_type_def_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _get_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_defined_in_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_absolute_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_containing_repository_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void move_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_type_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. class TAO_ServerRequestInfo_IR_AliasDef_original_type_def_get : public TAO_ServerRequestInfo { public: friend class POA_IR::AliasDef; TAO_ServerRequestInfo_IR_AliasDef_original_type_def_get ( TAO_ServerRequest &_tao_server_request, POA_IR::AliasDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_AliasDef_original_type_def_get (const TAO_ServerRequestInfo_IR_AliasDef_original_type_def_get &); void operator= (const TAO_ServerRequestInfo_IR_AliasDef_original_type_def_get &); private: POA_IR::AliasDef *_tao_impl; void result (IR::IDLType_ptr result); // update the result IR_IDLType_ptr _result; }; class TAO_ServerRequestInfo_IR_AliasDef_original_type_def_set : public TAO_ServerRequestInfo { public: friend class POA_IR::AliasDef; TAO_ServerRequestInfo_IR_AliasDef_original_type_def_set ( TAO_ServerRequest &_tao_server_request, POA_IR::AliasDef *tao_impl , IR_IDLType_ptr original_type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_AliasDef_original_type_def_set (const TAO_ServerRequestInfo_IR_AliasDef_original_type_def_set &); void operator= (const TAO_ServerRequestInfo_IR_AliasDef_original_type_def_set &); private: POA_IR::AliasDef *_tao_impl; IR_IDLType_ptr original_type_def_; }; #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_AliasDef_Strategized_Proxy_Broker : public virtual _TAO_AliasDef_Proxy_Broker { public: _TAO_AliasDef_Strategized_Proxy_Broker (void); virtual ~_TAO_AliasDef_Strategized_Proxy_Broker (void); virtual _TAO_AliasDef_Proxy_Impl &select_proxy ( IR_AliasDef *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_AliasDef_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_AliasDef_Strategized_Proxy_Broker *the_TAO_AliasDef_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_AliasDef_ThruPOA_Proxy_Impl : public virtual _TAO_AliasDef_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual ::POA_IR::_TAO_TypedefDef_ThruPOA_Proxy_Impl { public: _TAO_AliasDef_ThruPOA_Proxy_Impl (void); virtual ~_TAO_AliasDef_ThruPOA_Proxy_Impl (void) { } virtual IR_IDLType_ptr original_type_def ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void original_type_def ( CORBA_Object *_collocated_tao_target_, IR_IDLType_ptr original_type_def, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class AliasDef_tie : public AliasDef { public: AliasDef_tie (T &t); // the T& ctor AliasDef_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA AliasDef_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag AliasDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~AliasDef_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); IR_IDLType_ptr original_type_def ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void original_type_def ( IR_IDLType_ptr original_type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * id ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void id ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void name ( const char * name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * version ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void version ( const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container_ptr defined_in ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * absolute_name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Repository_ptr containing_repository ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained::Description * describe ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void move ( IR_Container_ptr new_container, const char * new_name, const char * new_version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::TypeCode_ptr type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed AliasDef_tie (const AliasDef_tie &); void operator= (const AliasDef_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class NativeDef; typedef NativeDef *NativeDef_ptr; // Forward Classes Declaration class _TAO_NativeDef_ThruPOA_Proxy_Impl; class _TAO_NativeDef_Strategized_Proxy_Broker; class NativeDef : public virtual TypedefDef { protected: NativeDef (void); public: NativeDef (const NativeDef& rhs); virtual ~NativeDef (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_NativeDef *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; static void _get_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_defined_in_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_absolute_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_containing_repository_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void move_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_type_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_NativeDef_Strategized_Proxy_Broker : public virtual _TAO_NativeDef_Proxy_Broker { public: _TAO_NativeDef_Strategized_Proxy_Broker (void); virtual ~_TAO_NativeDef_Strategized_Proxy_Broker (void); virtual _TAO_NativeDef_Proxy_Impl &select_proxy ( IR_NativeDef *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_NativeDef_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_NativeDef_Strategized_Proxy_Broker *the_TAO_NativeDef_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_NativeDef_ThruPOA_Proxy_Impl : public virtual _TAO_NativeDef_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual ::POA_IR::_TAO_TypedefDef_ThruPOA_Proxy_Impl { public: _TAO_NativeDef_ThruPOA_Proxy_Impl (void); virtual ~_TAO_NativeDef_ThruPOA_Proxy_Impl (void) { } }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class NativeDef_tie : public NativeDef { public: NativeDef_tie (T &t); // the T& ctor NativeDef_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA NativeDef_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag NativeDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~NativeDef_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); char * id ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void id ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void name ( const char * name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * version ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void version ( const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container_ptr defined_in ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * absolute_name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Repository_ptr containing_repository ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained::Description * describe ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void move ( IR_Container_ptr new_container, const char * new_name, const char * new_version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::TypeCode_ptr type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed NativeDef_tie (const NativeDef_tie &); void operator= (const NativeDef_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class PrimitiveDef; typedef PrimitiveDef *PrimitiveDef_ptr; // Forward Classes Declaration class _TAO_PrimitiveDef_ThruPOA_Proxy_Impl; class _TAO_PrimitiveDef_Strategized_Proxy_Broker; class PrimitiveDef : public virtual IDLType { protected: PrimitiveDef (void); public: PrimitiveDef (const PrimitiveDef& rhs); virtual ~PrimitiveDef (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_PrimitiveDef *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; virtual IR_PrimitiveKind kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_kind_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _get_type_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. class TAO_ServerRequestInfo_IR_PrimitiveDef_kind_get : public TAO_ServerRequestInfo { public: friend class POA_IR::PrimitiveDef; TAO_ServerRequestInfo_IR_PrimitiveDef_kind_get ( TAO_ServerRequest &_tao_server_request, POA_IR::PrimitiveDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_PrimitiveDef_kind_get (const TAO_ServerRequestInfo_IR_PrimitiveDef_kind_get &); void operator= (const TAO_ServerRequestInfo_IR_PrimitiveDef_kind_get &); private: POA_IR::PrimitiveDef *_tao_impl; void result (IR::PrimitiveKind result); // update the result IR_PrimitiveKind _result; }; #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_PrimitiveDef_Strategized_Proxy_Broker : public virtual _TAO_PrimitiveDef_Proxy_Broker { public: _TAO_PrimitiveDef_Strategized_Proxy_Broker (void); virtual ~_TAO_PrimitiveDef_Strategized_Proxy_Broker (void); virtual _TAO_PrimitiveDef_Proxy_Impl &select_proxy ( IR_PrimitiveDef *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_PrimitiveDef_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_PrimitiveDef_Strategized_Proxy_Broker *the_TAO_PrimitiveDef_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_PrimitiveDef_ThruPOA_Proxy_Impl : public virtual _TAO_PrimitiveDef_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual ::POA_IR::_TAO_IDLType_ThruPOA_Proxy_Impl { public: _TAO_PrimitiveDef_ThruPOA_Proxy_Impl (void); virtual ~_TAO_PrimitiveDef_ThruPOA_Proxy_Impl (void) { } virtual IR_PrimitiveKind kind ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class PrimitiveDef_tie : public PrimitiveDef { public: PrimitiveDef_tie (T &t); // the T& ctor PrimitiveDef_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA PrimitiveDef_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag PrimitiveDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~PrimitiveDef_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); IR_PrimitiveKind kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::TypeCode_ptr type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed PrimitiveDef_tie (const PrimitiveDef_tie &); void operator= (const PrimitiveDef_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class StringDef; typedef StringDef *StringDef_ptr; // Forward Classes Declaration class _TAO_StringDef_ThruPOA_Proxy_Impl; class _TAO_StringDef_Strategized_Proxy_Broker; class StringDef : public virtual IDLType { protected: StringDef (void); public: StringDef (const StringDef& rhs); virtual ~StringDef (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_StringDef *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; virtual CORBA::ULong bound ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_bound_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void bound ( CORBA::ULong bound, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_bound_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _get_type_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. class TAO_ServerRequestInfo_IR_StringDef_bound_get : public TAO_ServerRequestInfo { public: friend class POA_IR::StringDef; TAO_ServerRequestInfo_IR_StringDef_bound_get ( TAO_ServerRequest &_tao_server_request, POA_IR::StringDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_StringDef_bound_get (const TAO_ServerRequestInfo_IR_StringDef_bound_get &); void operator= (const TAO_ServerRequestInfo_IR_StringDef_bound_get &); private: POA_IR::StringDef *_tao_impl; void result (CORBA::ULong result); // update the result CORBA::ULong _result; }; class TAO_ServerRequestInfo_IR_StringDef_bound_set : public TAO_ServerRequestInfo { public: friend class POA_IR::StringDef; TAO_ServerRequestInfo_IR_StringDef_bound_set ( TAO_ServerRequest &_tao_server_request, POA_IR::StringDef *tao_impl , const CORBA::ULong & bound, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_StringDef_bound_set (const TAO_ServerRequestInfo_IR_StringDef_bound_set &); void operator= (const TAO_ServerRequestInfo_IR_StringDef_bound_set &); private: POA_IR::StringDef *_tao_impl; const CORBA::ULong & bound_; }; #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_StringDef_Strategized_Proxy_Broker : public virtual _TAO_StringDef_Proxy_Broker { public: _TAO_StringDef_Strategized_Proxy_Broker (void); virtual ~_TAO_StringDef_Strategized_Proxy_Broker (void); virtual _TAO_StringDef_Proxy_Impl &select_proxy ( IR_StringDef *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_StringDef_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_StringDef_Strategized_Proxy_Broker *the_TAO_StringDef_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_StringDef_ThruPOA_Proxy_Impl : public virtual _TAO_StringDef_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual ::POA_IR::_TAO_IDLType_ThruPOA_Proxy_Impl { public: _TAO_StringDef_ThruPOA_Proxy_Impl (void); virtual ~_TAO_StringDef_ThruPOA_Proxy_Impl (void) { } virtual CORBA::ULong bound ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void bound ( CORBA_Object *_collocated_tao_target_, CORBA::ULong bound, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class StringDef_tie : public StringDef { public: StringDef_tie (T &t); // the T& ctor StringDef_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA StringDef_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag StringDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~StringDef_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); CORBA::ULong bound ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void bound ( CORBA::ULong bound, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::TypeCode_ptr type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed StringDef_tie (const StringDef_tie &); void operator= (const StringDef_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class WstringDef; typedef WstringDef *WstringDef_ptr; // Forward Classes Declaration class _TAO_WstringDef_ThruPOA_Proxy_Impl; class _TAO_WstringDef_Strategized_Proxy_Broker; class WstringDef : public virtual IDLType { protected: WstringDef (void); public: WstringDef (const WstringDef& rhs); virtual ~WstringDef (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_WstringDef *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; virtual CORBA::ULong bound ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_bound_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void bound ( CORBA::ULong bound, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_bound_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _get_type_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. class TAO_ServerRequestInfo_IR_WstringDef_bound_get : public TAO_ServerRequestInfo { public: friend class POA_IR::WstringDef; TAO_ServerRequestInfo_IR_WstringDef_bound_get ( TAO_ServerRequest &_tao_server_request, POA_IR::WstringDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_WstringDef_bound_get (const TAO_ServerRequestInfo_IR_WstringDef_bound_get &); void operator= (const TAO_ServerRequestInfo_IR_WstringDef_bound_get &); private: POA_IR::WstringDef *_tao_impl; void result (CORBA::ULong result); // update the result CORBA::ULong _result; }; class TAO_ServerRequestInfo_IR_WstringDef_bound_set : public TAO_ServerRequestInfo { public: friend class POA_IR::WstringDef; TAO_ServerRequestInfo_IR_WstringDef_bound_set ( TAO_ServerRequest &_tao_server_request, POA_IR::WstringDef *tao_impl , const CORBA::ULong & bound, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_WstringDef_bound_set (const TAO_ServerRequestInfo_IR_WstringDef_bound_set &); void operator= (const TAO_ServerRequestInfo_IR_WstringDef_bound_set &); private: POA_IR::WstringDef *_tao_impl; const CORBA::ULong & bound_; }; #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_WstringDef_Strategized_Proxy_Broker : public virtual _TAO_WstringDef_Proxy_Broker { public: _TAO_WstringDef_Strategized_Proxy_Broker (void); virtual ~_TAO_WstringDef_Strategized_Proxy_Broker (void); virtual _TAO_WstringDef_Proxy_Impl &select_proxy ( IR_WstringDef *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_WstringDef_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_WstringDef_Strategized_Proxy_Broker *the_TAO_WstringDef_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_WstringDef_ThruPOA_Proxy_Impl : public virtual _TAO_WstringDef_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual ::POA_IR::_TAO_IDLType_ThruPOA_Proxy_Impl { public: _TAO_WstringDef_ThruPOA_Proxy_Impl (void); virtual ~_TAO_WstringDef_ThruPOA_Proxy_Impl (void) { } virtual CORBA::ULong bound ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void bound ( CORBA_Object *_collocated_tao_target_, CORBA::ULong bound, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class WstringDef_tie : public WstringDef { public: WstringDef_tie (T &t); // the T& ctor WstringDef_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA WstringDef_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag WstringDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~WstringDef_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); CORBA::ULong bound ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void bound ( CORBA::ULong bound, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::TypeCode_ptr type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed WstringDef_tie (const WstringDef_tie &); void operator= (const WstringDef_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class FixedDef; typedef FixedDef *FixedDef_ptr; // Forward Classes Declaration class _TAO_FixedDef_ThruPOA_Proxy_Impl; class _TAO_FixedDef_Strategized_Proxy_Broker; class FixedDef : public virtual IDLType { protected: FixedDef (void); public: FixedDef (const FixedDef& rhs); virtual ~FixedDef (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_FixedDef *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; virtual CORBA::UShort digits ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_digits_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void digits ( CORBA::UShort digits, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_digits_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual CORBA::Short scale ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_scale_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void scale ( CORBA::Short scale, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_scale_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _get_type_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. class TAO_ServerRequestInfo_IR_FixedDef_digits_get : public TAO_ServerRequestInfo { public: friend class POA_IR::FixedDef; TAO_ServerRequestInfo_IR_FixedDef_digits_get ( TAO_ServerRequest &_tao_server_request, POA_IR::FixedDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_FixedDef_digits_get (const TAO_ServerRequestInfo_IR_FixedDef_digits_get &); void operator= (const TAO_ServerRequestInfo_IR_FixedDef_digits_get &); private: POA_IR::FixedDef *_tao_impl; void result (CORBA::UShort result); // update the result CORBA::UShort _result; }; class TAO_ServerRequestInfo_IR_FixedDef_digits_set : public TAO_ServerRequestInfo { public: friend class POA_IR::FixedDef; TAO_ServerRequestInfo_IR_FixedDef_digits_set ( TAO_ServerRequest &_tao_server_request, POA_IR::FixedDef *tao_impl , const CORBA::UShort & digits, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_FixedDef_digits_set (const TAO_ServerRequestInfo_IR_FixedDef_digits_set &); void operator= (const TAO_ServerRequestInfo_IR_FixedDef_digits_set &); private: POA_IR::FixedDef *_tao_impl; const CORBA::UShort & digits_; }; class TAO_ServerRequestInfo_IR_FixedDef_scale_get : public TAO_ServerRequestInfo { public: friend class POA_IR::FixedDef; TAO_ServerRequestInfo_IR_FixedDef_scale_get ( TAO_ServerRequest &_tao_server_request, POA_IR::FixedDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_FixedDef_scale_get (const TAO_ServerRequestInfo_IR_FixedDef_scale_get &); void operator= (const TAO_ServerRequestInfo_IR_FixedDef_scale_get &); private: POA_IR::FixedDef *_tao_impl; void result (CORBA::Short result); // update the result CORBA::Short _result; }; class TAO_ServerRequestInfo_IR_FixedDef_scale_set : public TAO_ServerRequestInfo { public: friend class POA_IR::FixedDef; TAO_ServerRequestInfo_IR_FixedDef_scale_set ( TAO_ServerRequest &_tao_server_request, POA_IR::FixedDef *tao_impl , const CORBA::Short & scale, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_FixedDef_scale_set (const TAO_ServerRequestInfo_IR_FixedDef_scale_set &); void operator= (const TAO_ServerRequestInfo_IR_FixedDef_scale_set &); private: POA_IR::FixedDef *_tao_impl; const CORBA::Short & scale_; }; #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_FixedDef_Strategized_Proxy_Broker : public virtual _TAO_FixedDef_Proxy_Broker { public: _TAO_FixedDef_Strategized_Proxy_Broker (void); virtual ~_TAO_FixedDef_Strategized_Proxy_Broker (void); virtual _TAO_FixedDef_Proxy_Impl &select_proxy ( IR_FixedDef *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_FixedDef_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_FixedDef_Strategized_Proxy_Broker *the_TAO_FixedDef_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_FixedDef_ThruPOA_Proxy_Impl : public virtual _TAO_FixedDef_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual ::POA_IR::_TAO_IDLType_ThruPOA_Proxy_Impl { public: _TAO_FixedDef_ThruPOA_Proxy_Impl (void); virtual ~_TAO_FixedDef_ThruPOA_Proxy_Impl (void) { } virtual CORBA::UShort digits ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void digits ( CORBA_Object *_collocated_tao_target_, CORBA::UShort digits, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual CORBA::Short scale ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void scale ( CORBA_Object *_collocated_tao_target_, CORBA::Short scale, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class FixedDef_tie : public FixedDef { public: FixedDef_tie (T &t); // the T& ctor FixedDef_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA FixedDef_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag FixedDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~FixedDef_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); CORBA::UShort digits ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void digits ( CORBA::UShort digits, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::Short scale ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void scale ( CORBA::Short scale, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::TypeCode_ptr type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed FixedDef_tie (const FixedDef_tie &); void operator= (const FixedDef_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class SequenceDef; typedef SequenceDef *SequenceDef_ptr; // Forward Classes Declaration class _TAO_SequenceDef_ThruPOA_Proxy_Impl; class _TAO_SequenceDef_Strategized_Proxy_Broker; class SequenceDef : public virtual IDLType { protected: SequenceDef (void); public: SequenceDef (const SequenceDef& rhs); virtual ~SequenceDef (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_SequenceDef *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; virtual CORBA::ULong bound ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_bound_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void bound ( CORBA::ULong bound, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_bound_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual CORBA::TypeCode_ptr element_type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_element_type_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_IDLType_ptr element_type_def ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_element_type_def_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void element_type_def ( IR_IDLType_ptr element_type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_element_type_def_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _get_type_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. class TAO_ServerRequestInfo_IR_SequenceDef_bound_get : public TAO_ServerRequestInfo { public: friend class POA_IR::SequenceDef; TAO_ServerRequestInfo_IR_SequenceDef_bound_get ( TAO_ServerRequest &_tao_server_request, POA_IR::SequenceDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_SequenceDef_bound_get (const TAO_ServerRequestInfo_IR_SequenceDef_bound_get &); void operator= (const TAO_ServerRequestInfo_IR_SequenceDef_bound_get &); private: POA_IR::SequenceDef *_tao_impl; void result (CORBA::ULong result); // update the result CORBA::ULong _result; }; class TAO_ServerRequestInfo_IR_SequenceDef_bound_set : public TAO_ServerRequestInfo { public: friend class POA_IR::SequenceDef; TAO_ServerRequestInfo_IR_SequenceDef_bound_set ( TAO_ServerRequest &_tao_server_request, POA_IR::SequenceDef *tao_impl , const CORBA::ULong & bound, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_SequenceDef_bound_set (const TAO_ServerRequestInfo_IR_SequenceDef_bound_set &); void operator= (const TAO_ServerRequestInfo_IR_SequenceDef_bound_set &); private: POA_IR::SequenceDef *_tao_impl; const CORBA::ULong & bound_; }; class TAO_ServerRequestInfo_IR_SequenceDef_element_type_get : public TAO_ServerRequestInfo { public: friend class POA_IR::SequenceDef; TAO_ServerRequestInfo_IR_SequenceDef_element_type_get ( TAO_ServerRequest &_tao_server_request, POA_IR::SequenceDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_SequenceDef_element_type_get (const TAO_ServerRequestInfo_IR_SequenceDef_element_type_get &); void operator= (const TAO_ServerRequestInfo_IR_SequenceDef_element_type_get &); private: POA_IR::SequenceDef *_tao_impl; void result (CORBA::TypeCode_ptr result); // update the result CORBA::TypeCode_ptr _result; }; class TAO_ServerRequestInfo_IR_SequenceDef_element_type_def_get : public TAO_ServerRequestInfo { public: friend class POA_IR::SequenceDef; TAO_ServerRequestInfo_IR_SequenceDef_element_type_def_get ( TAO_ServerRequest &_tao_server_request, POA_IR::SequenceDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_SequenceDef_element_type_def_get (const TAO_ServerRequestInfo_IR_SequenceDef_element_type_def_get &); void operator= (const TAO_ServerRequestInfo_IR_SequenceDef_element_type_def_get &); private: POA_IR::SequenceDef *_tao_impl; void result (IR::IDLType_ptr result); // update the result IR_IDLType_ptr _result; }; class TAO_ServerRequestInfo_IR_SequenceDef_element_type_def_set : public TAO_ServerRequestInfo { public: friend class POA_IR::SequenceDef; TAO_ServerRequestInfo_IR_SequenceDef_element_type_def_set ( TAO_ServerRequest &_tao_server_request, POA_IR::SequenceDef *tao_impl , IR_IDLType_ptr element_type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_SequenceDef_element_type_def_set (const TAO_ServerRequestInfo_IR_SequenceDef_element_type_def_set &); void operator= (const TAO_ServerRequestInfo_IR_SequenceDef_element_type_def_set &); private: POA_IR::SequenceDef *_tao_impl; IR_IDLType_ptr element_type_def_; }; #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_SequenceDef_Strategized_Proxy_Broker : public virtual _TAO_SequenceDef_Proxy_Broker { public: _TAO_SequenceDef_Strategized_Proxy_Broker (void); virtual ~_TAO_SequenceDef_Strategized_Proxy_Broker (void); virtual _TAO_SequenceDef_Proxy_Impl &select_proxy ( IR_SequenceDef *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_SequenceDef_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_SequenceDef_Strategized_Proxy_Broker *the_TAO_SequenceDef_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_SequenceDef_ThruPOA_Proxy_Impl : public virtual _TAO_SequenceDef_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual ::POA_IR::_TAO_IDLType_ThruPOA_Proxy_Impl { public: _TAO_SequenceDef_ThruPOA_Proxy_Impl (void); virtual ~_TAO_SequenceDef_ThruPOA_Proxy_Impl (void) { } virtual CORBA::ULong bound ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void bound ( CORBA_Object *_collocated_tao_target_, CORBA::ULong bound, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual CORBA::TypeCode_ptr element_type ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_IDLType_ptr element_type_def ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void element_type_def ( CORBA_Object *_collocated_tao_target_, IR_IDLType_ptr element_type_def, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class SequenceDef_tie : public SequenceDef { public: SequenceDef_tie (T &t); // the T& ctor SequenceDef_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA SequenceDef_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag SequenceDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~SequenceDef_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); CORBA::ULong bound ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void bound ( CORBA::ULong bound, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::TypeCode_ptr element_type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_IDLType_ptr element_type_def ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void element_type_def ( IR_IDLType_ptr element_type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::TypeCode_ptr type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed SequenceDef_tie (const SequenceDef_tie &); void operator= (const SequenceDef_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class ArrayDef; typedef ArrayDef *ArrayDef_ptr; // Forward Classes Declaration class _TAO_ArrayDef_ThruPOA_Proxy_Impl; class _TAO_ArrayDef_Strategized_Proxy_Broker; class ArrayDef : public virtual IDLType { protected: ArrayDef (void); public: ArrayDef (const ArrayDef& rhs); virtual ~ArrayDef (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_ArrayDef *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; virtual CORBA::ULong length ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_length_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void length ( CORBA::ULong length, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_length_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual CORBA::TypeCode_ptr element_type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_element_type_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_IDLType_ptr element_type_def ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_element_type_def_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void element_type_def ( IR_IDLType_ptr element_type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_element_type_def_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _get_type_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. class TAO_ServerRequestInfo_IR_ArrayDef_length_get : public TAO_ServerRequestInfo { public: friend class POA_IR::ArrayDef; TAO_ServerRequestInfo_IR_ArrayDef_length_get ( TAO_ServerRequest &_tao_server_request, POA_IR::ArrayDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ArrayDef_length_get (const TAO_ServerRequestInfo_IR_ArrayDef_length_get &); void operator= (const TAO_ServerRequestInfo_IR_ArrayDef_length_get &); private: POA_IR::ArrayDef *_tao_impl; void result (CORBA::ULong result); // update the result CORBA::ULong _result; }; class TAO_ServerRequestInfo_IR_ArrayDef_length_set : public TAO_ServerRequestInfo { public: friend class POA_IR::ArrayDef; TAO_ServerRequestInfo_IR_ArrayDef_length_set ( TAO_ServerRequest &_tao_server_request, POA_IR::ArrayDef *tao_impl , const CORBA::ULong & length, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ArrayDef_length_set (const TAO_ServerRequestInfo_IR_ArrayDef_length_set &); void operator= (const TAO_ServerRequestInfo_IR_ArrayDef_length_set &); private: POA_IR::ArrayDef *_tao_impl; const CORBA::ULong & length_; }; class TAO_ServerRequestInfo_IR_ArrayDef_element_type_get : public TAO_ServerRequestInfo { public: friend class POA_IR::ArrayDef; TAO_ServerRequestInfo_IR_ArrayDef_element_type_get ( TAO_ServerRequest &_tao_server_request, POA_IR::ArrayDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ArrayDef_element_type_get (const TAO_ServerRequestInfo_IR_ArrayDef_element_type_get &); void operator= (const TAO_ServerRequestInfo_IR_ArrayDef_element_type_get &); private: POA_IR::ArrayDef *_tao_impl; void result (CORBA::TypeCode_ptr result); // update the result CORBA::TypeCode_ptr _result; }; class TAO_ServerRequestInfo_IR_ArrayDef_element_type_def_get : public TAO_ServerRequestInfo { public: friend class POA_IR::ArrayDef; TAO_ServerRequestInfo_IR_ArrayDef_element_type_def_get ( TAO_ServerRequest &_tao_server_request, POA_IR::ArrayDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ArrayDef_element_type_def_get (const TAO_ServerRequestInfo_IR_ArrayDef_element_type_def_get &); void operator= (const TAO_ServerRequestInfo_IR_ArrayDef_element_type_def_get &); private: POA_IR::ArrayDef *_tao_impl; void result (IR::IDLType_ptr result); // update the result IR_IDLType_ptr _result; }; class TAO_ServerRequestInfo_IR_ArrayDef_element_type_def_set : public TAO_ServerRequestInfo { public: friend class POA_IR::ArrayDef; TAO_ServerRequestInfo_IR_ArrayDef_element_type_def_set ( TAO_ServerRequest &_tao_server_request, POA_IR::ArrayDef *tao_impl , IR_IDLType_ptr element_type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ArrayDef_element_type_def_set (const TAO_ServerRequestInfo_IR_ArrayDef_element_type_def_set &); void operator= (const TAO_ServerRequestInfo_IR_ArrayDef_element_type_def_set &); private: POA_IR::ArrayDef *_tao_impl; IR_IDLType_ptr element_type_def_; }; #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_ArrayDef_Strategized_Proxy_Broker : public virtual _TAO_ArrayDef_Proxy_Broker { public: _TAO_ArrayDef_Strategized_Proxy_Broker (void); virtual ~_TAO_ArrayDef_Strategized_Proxy_Broker (void); virtual _TAO_ArrayDef_Proxy_Impl &select_proxy ( IR_ArrayDef *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_ArrayDef_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_ArrayDef_Strategized_Proxy_Broker *the_TAO_ArrayDef_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_ArrayDef_ThruPOA_Proxy_Impl : public virtual _TAO_ArrayDef_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual ::POA_IR::_TAO_IDLType_ThruPOA_Proxy_Impl { public: _TAO_ArrayDef_ThruPOA_Proxy_Impl (void); virtual ~_TAO_ArrayDef_ThruPOA_Proxy_Impl (void) { } virtual CORBA::ULong length ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void length ( CORBA_Object *_collocated_tao_target_, CORBA::ULong length, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual CORBA::TypeCode_ptr element_type ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_IDLType_ptr element_type_def ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void element_type_def ( CORBA_Object *_collocated_tao_target_, IR_IDLType_ptr element_type_def, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class ArrayDef_tie : public ArrayDef { public: ArrayDef_tie (T &t); // the T& ctor ArrayDef_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA ArrayDef_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag ArrayDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~ArrayDef_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); CORBA::ULong length ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void length ( CORBA::ULong length, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::TypeCode_ptr element_type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_IDLType_ptr element_type_def ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void element_type_def ( IR_IDLType_ptr element_type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::TypeCode_ptr type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed ArrayDef_tie (const ArrayDef_tie &); void operator= (const ArrayDef_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class ExceptionDef; typedef ExceptionDef *ExceptionDef_ptr; // Forward Classes Declaration class _TAO_ExceptionDef_ThruPOA_Proxy_Impl; class _TAO_ExceptionDef_Strategized_Proxy_Broker; class ExceptionDef : public virtual Contained, public virtual Container { protected: ExceptionDef (void); public: ExceptionDef (const ExceptionDef& rhs); virtual ~ExceptionDef (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_ExceptionDef *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; virtual CORBA::TypeCode_ptr type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_type_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_StructMemberSeq * members ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_members_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void members ( const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_members_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _get_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_defined_in_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_absolute_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_containing_repository_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void move_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void lookup_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void contents_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void lookup_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_contents_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_module_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_constant_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_struct_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_union_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_enum_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_alias_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_interface_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_value_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_value_box_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_exception_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_native_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. class TAO_ServerRequestInfo_IR_ExceptionDef_type_get : public TAO_ServerRequestInfo { public: friend class POA_IR::ExceptionDef; TAO_ServerRequestInfo_IR_ExceptionDef_type_get ( TAO_ServerRequest &_tao_server_request, POA_IR::ExceptionDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ExceptionDef_type_get (const TAO_ServerRequestInfo_IR_ExceptionDef_type_get &); void operator= (const TAO_ServerRequestInfo_IR_ExceptionDef_type_get &); private: POA_IR::ExceptionDef *_tao_impl; void result (CORBA::TypeCode_ptr result); // update the result CORBA::TypeCode_ptr _result; }; class TAO_ServerRequestInfo_IR_ExceptionDef_members_get : public TAO_ServerRequestInfo { public: friend class POA_IR::ExceptionDef; TAO_ServerRequestInfo_IR_ExceptionDef_members_get ( TAO_ServerRequest &_tao_server_request, POA_IR::ExceptionDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ExceptionDef_members_get (const TAO_ServerRequestInfo_IR_ExceptionDef_members_get &); void operator= (const TAO_ServerRequestInfo_IR_ExceptionDef_members_get &); private: POA_IR::ExceptionDef *_tao_impl; void result (IR::StructMemberSeq * result); // update the result IR_StructMemberSeq * _result; }; class TAO_ServerRequestInfo_IR_ExceptionDef_members_set : public TAO_ServerRequestInfo { public: friend class POA_IR::ExceptionDef; TAO_ServerRequestInfo_IR_ExceptionDef_members_set ( TAO_ServerRequest &_tao_server_request, POA_IR::ExceptionDef *tao_impl , const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ExceptionDef_members_set (const TAO_ServerRequestInfo_IR_ExceptionDef_members_set &); void operator= (const TAO_ServerRequestInfo_IR_ExceptionDef_members_set &); private: POA_IR::ExceptionDef *_tao_impl; const IR_StructMemberSeq & members_; }; #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_ExceptionDef_Strategized_Proxy_Broker : public virtual _TAO_ExceptionDef_Proxy_Broker { public: _TAO_ExceptionDef_Strategized_Proxy_Broker (void); virtual ~_TAO_ExceptionDef_Strategized_Proxy_Broker (void); virtual _TAO_ExceptionDef_Proxy_Impl &select_proxy ( IR_ExceptionDef *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_ExceptionDef_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_ExceptionDef_Strategized_Proxy_Broker *the_TAO_ExceptionDef_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_ExceptionDef_ThruPOA_Proxy_Impl : public virtual _TAO_ExceptionDef_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual ::POA_IR::_TAO_Contained_ThruPOA_Proxy_Impl, public virtual ::POA_IR::_TAO_Container_ThruPOA_Proxy_Impl { public: _TAO_ExceptionDef_ThruPOA_Proxy_Impl (void); virtual ~_TAO_ExceptionDef_ThruPOA_Proxy_Impl (void) { } virtual CORBA::TypeCode_ptr type ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_StructMemberSeq * members ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void members ( CORBA_Object *_collocated_tao_target_, const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class ExceptionDef_tie : public ExceptionDef { public: ExceptionDef_tie (T &t); // the T& ctor ExceptionDef_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA ExceptionDef_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag ExceptionDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~ExceptionDef_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); CORBA::TypeCode_ptr type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_StructMemberSeq * members ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void members ( const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * id ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void id ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void name ( const char * name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * version ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void version ( const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container_ptr defined_in ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * absolute_name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Repository_ptr containing_repository ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained::Description * describe ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void move ( IR_Container_ptr new_container, const char * new_name, const char * new_version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained_ptr lookup ( const char * search_name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ContainedSeq * contents ( IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ContainedSeq * lookup_name ( const char * search_name, CORBA::Long levels_to_search, IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container::DescriptionSeq * describe_contents ( IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Long max_returned_objs, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ModuleDef_ptr create_module ( const char * id, const char * name, const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ConstantDef_ptr create_constant ( const char * id, const char * name, const char * version, IR_IDLType_ptr type, const CORBA::Any & value, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_StructDef_ptr create_struct ( const char * id, const char * name, const char * version, const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_UnionDef_ptr create_union ( const char * id, const char * name, const char * version, IR_IDLType_ptr discriminator_type, const IR_UnionMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_EnumDef_ptr create_enum ( const char * id, const char * name, const char * version, const IR_EnumMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_AliasDef_ptr create_alias ( const char * id, const char * name, const char * version, IR_IDLType_ptr original_type, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_InterfaceDef_ptr create_interface ( const char * id, const char * name, const char * version, const IR_InterfaceDefSeq & base_interfaces, CORBA::Boolean is_abstract, CORBA::Boolean is_local, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ValueDef_ptr create_value ( const char * id, const char * name, const char * version, CORBA::Boolean is_custom, CORBA::Boolean is_abstract, IR_ValueDef_ptr base_value, CORBA::Boolean is_truncatable, const IR_ValueDefSeq & abstract_base_values, const IR_InterfaceDefSeq & supported_interfaces, const IR_InitializerSeq & initializers, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ValueBoxDef_ptr create_value_box ( const char * id, const char * name, const char * version, IR_IDLType_ptr original_type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ExceptionDef_ptr create_exception ( const char * id, const char * name, const char * version, const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_NativeDef_ptr create_native ( const char * id, const char * name, const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed ExceptionDef_tie (const ExceptionDef_tie &); void operator= (const ExceptionDef_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class AttributeDef; typedef AttributeDef *AttributeDef_ptr; // Forward Classes Declaration class _TAO_AttributeDef_ThruPOA_Proxy_Impl; class _TAO_AttributeDef_Strategized_Proxy_Broker; class AttributeDef : public virtual Contained { protected: AttributeDef (void); public: AttributeDef (const AttributeDef& rhs); virtual ~AttributeDef (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_AttributeDef *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; virtual CORBA::TypeCode_ptr type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_type_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_IDLType_ptr type_def ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_type_def_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void type_def ( IR_IDLType_ptr type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_type_def_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_AttributeMode mode ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_mode_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void mode ( IR_AttributeMode mode, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_mode_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _get_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_defined_in_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_absolute_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_containing_repository_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void move_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. class TAO_ServerRequestInfo_IR_AttributeDef_type_get : public TAO_ServerRequestInfo { public: friend class POA_IR::AttributeDef; TAO_ServerRequestInfo_IR_AttributeDef_type_get ( TAO_ServerRequest &_tao_server_request, POA_IR::AttributeDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_AttributeDef_type_get (const TAO_ServerRequestInfo_IR_AttributeDef_type_get &); void operator= (const TAO_ServerRequestInfo_IR_AttributeDef_type_get &); private: POA_IR::AttributeDef *_tao_impl; void result (CORBA::TypeCode_ptr result); // update the result CORBA::TypeCode_ptr _result; }; class TAO_ServerRequestInfo_IR_AttributeDef_type_def_get : public TAO_ServerRequestInfo { public: friend class POA_IR::AttributeDef; TAO_ServerRequestInfo_IR_AttributeDef_type_def_get ( TAO_ServerRequest &_tao_server_request, POA_IR::AttributeDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_AttributeDef_type_def_get (const TAO_ServerRequestInfo_IR_AttributeDef_type_def_get &); void operator= (const TAO_ServerRequestInfo_IR_AttributeDef_type_def_get &); private: POA_IR::AttributeDef *_tao_impl; void result (IR::IDLType_ptr result); // update the result IR_IDLType_ptr _result; }; class TAO_ServerRequestInfo_IR_AttributeDef_type_def_set : public TAO_ServerRequestInfo { public: friend class POA_IR::AttributeDef; TAO_ServerRequestInfo_IR_AttributeDef_type_def_set ( TAO_ServerRequest &_tao_server_request, POA_IR::AttributeDef *tao_impl , IR_IDLType_ptr type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_AttributeDef_type_def_set (const TAO_ServerRequestInfo_IR_AttributeDef_type_def_set &); void operator= (const TAO_ServerRequestInfo_IR_AttributeDef_type_def_set &); private: POA_IR::AttributeDef *_tao_impl; IR_IDLType_ptr type_def_; }; class TAO_ServerRequestInfo_IR_AttributeDef_mode_get : public TAO_ServerRequestInfo { public: friend class POA_IR::AttributeDef; TAO_ServerRequestInfo_IR_AttributeDef_mode_get ( TAO_ServerRequest &_tao_server_request, POA_IR::AttributeDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_AttributeDef_mode_get (const TAO_ServerRequestInfo_IR_AttributeDef_mode_get &); void operator= (const TAO_ServerRequestInfo_IR_AttributeDef_mode_get &); private: POA_IR::AttributeDef *_tao_impl; void result (IR::AttributeMode result); // update the result IR_AttributeMode _result; }; class TAO_ServerRequestInfo_IR_AttributeDef_mode_set : public TAO_ServerRequestInfo { public: friend class POA_IR::AttributeDef; TAO_ServerRequestInfo_IR_AttributeDef_mode_set ( TAO_ServerRequest &_tao_server_request, POA_IR::AttributeDef *tao_impl , IR_AttributeMode & mode, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_AttributeDef_mode_set (const TAO_ServerRequestInfo_IR_AttributeDef_mode_set &); void operator= (const TAO_ServerRequestInfo_IR_AttributeDef_mode_set &); private: POA_IR::AttributeDef *_tao_impl; const IR_AttributeMode & mode_; }; #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_AttributeDef_Strategized_Proxy_Broker : public virtual _TAO_AttributeDef_Proxy_Broker { public: _TAO_AttributeDef_Strategized_Proxy_Broker (void); virtual ~_TAO_AttributeDef_Strategized_Proxy_Broker (void); virtual _TAO_AttributeDef_Proxy_Impl &select_proxy ( IR_AttributeDef *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_AttributeDef_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_AttributeDef_Strategized_Proxy_Broker *the_TAO_AttributeDef_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_AttributeDef_ThruPOA_Proxy_Impl : public virtual _TAO_AttributeDef_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual ::POA_IR::_TAO_Contained_ThruPOA_Proxy_Impl { public: _TAO_AttributeDef_ThruPOA_Proxy_Impl (void); virtual ~_TAO_AttributeDef_ThruPOA_Proxy_Impl (void) { } virtual CORBA::TypeCode_ptr type ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_IDLType_ptr type_def ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void type_def ( CORBA_Object *_collocated_tao_target_, IR_IDLType_ptr type_def, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_AttributeMode mode ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void mode ( CORBA_Object *_collocated_tao_target_, IR_AttributeMode mode, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class AttributeDef_tie : public AttributeDef { public: AttributeDef_tie (T &t); // the T& ctor AttributeDef_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA AttributeDef_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag AttributeDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~AttributeDef_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); CORBA::TypeCode_ptr type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_IDLType_ptr type_def ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void type_def ( IR_IDLType_ptr type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_AttributeMode mode ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void mode ( IR_AttributeMode mode, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * id ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void id ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void name ( const char * name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * version ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void version ( const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container_ptr defined_in ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * absolute_name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Repository_ptr containing_repository ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained::Description * describe ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void move ( IR_Container_ptr new_container, const char * new_name, const char * new_version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed AttributeDef_tie (const AttributeDef_tie &); void operator= (const AttributeDef_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class OperationDef; typedef OperationDef *OperationDef_ptr; // Forward Classes Declaration class _TAO_OperationDef_ThruPOA_Proxy_Impl; class _TAO_OperationDef_Strategized_Proxy_Broker; class OperationDef : public virtual Contained { protected: OperationDef (void); public: OperationDef (const OperationDef& rhs); virtual ~OperationDef (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_OperationDef *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; virtual CORBA::TypeCode_ptr result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_result_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_IDLType_ptr result_def ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_result_def_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void result_def ( IR_IDLType_ptr result_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_result_def_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_ParDescriptionSeq * params ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_params_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void params ( const IR_ParDescriptionSeq & params, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_params_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_OperationMode mode ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_mode_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void mode ( IR_OperationMode mode, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_mode_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_ContextIdSeq * contexts ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_contexts_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void contexts ( const IR_ContextIdSeq & contexts, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_contexts_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_ExceptionDefSeq * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_exceptions_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void exceptions ( const IR_ExceptionDefSeq & exceptions, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_exceptions_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _get_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_defined_in_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_absolute_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_containing_repository_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void move_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. class TAO_ServerRequestInfo_IR_OperationDef_result_get : public TAO_ServerRequestInfo { public: friend class POA_IR::OperationDef; TAO_ServerRequestInfo_IR_OperationDef_result_get ( TAO_ServerRequest &_tao_server_request, POA_IR::OperationDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_OperationDef_result_get (const TAO_ServerRequestInfo_IR_OperationDef_result_get &); void operator= (const TAO_ServerRequestInfo_IR_OperationDef_result_get &); private: POA_IR::OperationDef *_tao_impl; void result (CORBA::TypeCode_ptr result); // update the result CORBA::TypeCode_ptr _result; }; class TAO_ServerRequestInfo_IR_OperationDef_result_def_get : public TAO_ServerRequestInfo { public: friend class POA_IR::OperationDef; TAO_ServerRequestInfo_IR_OperationDef_result_def_get ( TAO_ServerRequest &_tao_server_request, POA_IR::OperationDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_OperationDef_result_def_get (const TAO_ServerRequestInfo_IR_OperationDef_result_def_get &); void operator= (const TAO_ServerRequestInfo_IR_OperationDef_result_def_get &); private: POA_IR::OperationDef *_tao_impl; void result (IR::IDLType_ptr result); // update the result IR_IDLType_ptr _result; }; class TAO_ServerRequestInfo_IR_OperationDef_result_def_set : public TAO_ServerRequestInfo { public: friend class POA_IR::OperationDef; TAO_ServerRequestInfo_IR_OperationDef_result_def_set ( TAO_ServerRequest &_tao_server_request, POA_IR::OperationDef *tao_impl , IR_IDLType_ptr result_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_OperationDef_result_def_set (const TAO_ServerRequestInfo_IR_OperationDef_result_def_set &); void operator= (const TAO_ServerRequestInfo_IR_OperationDef_result_def_set &); private: POA_IR::OperationDef *_tao_impl; IR_IDLType_ptr result_def_; }; class TAO_ServerRequestInfo_IR_OperationDef_params_get : public TAO_ServerRequestInfo { public: friend class POA_IR::OperationDef; TAO_ServerRequestInfo_IR_OperationDef_params_get ( TAO_ServerRequest &_tao_server_request, POA_IR::OperationDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_OperationDef_params_get (const TAO_ServerRequestInfo_IR_OperationDef_params_get &); void operator= (const TAO_ServerRequestInfo_IR_OperationDef_params_get &); private: POA_IR::OperationDef *_tao_impl; void result (IR::ParDescriptionSeq * result); // update the result IR_ParDescriptionSeq * _result; }; class TAO_ServerRequestInfo_IR_OperationDef_params_set : public TAO_ServerRequestInfo { public: friend class POA_IR::OperationDef; TAO_ServerRequestInfo_IR_OperationDef_params_set ( TAO_ServerRequest &_tao_server_request, POA_IR::OperationDef *tao_impl , const IR_ParDescriptionSeq & params, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_OperationDef_params_set (const TAO_ServerRequestInfo_IR_OperationDef_params_set &); void operator= (const TAO_ServerRequestInfo_IR_OperationDef_params_set &); private: POA_IR::OperationDef *_tao_impl; const IR_ParDescriptionSeq & params_; }; class TAO_ServerRequestInfo_IR_OperationDef_mode_get : public TAO_ServerRequestInfo { public: friend class POA_IR::OperationDef; TAO_ServerRequestInfo_IR_OperationDef_mode_get ( TAO_ServerRequest &_tao_server_request, POA_IR::OperationDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_OperationDef_mode_get (const TAO_ServerRequestInfo_IR_OperationDef_mode_get &); void operator= (const TAO_ServerRequestInfo_IR_OperationDef_mode_get &); private: POA_IR::OperationDef *_tao_impl; void result (IR::OperationMode result); // update the result IR_OperationMode _result; }; class TAO_ServerRequestInfo_IR_OperationDef_mode_set : public TAO_ServerRequestInfo { public: friend class POA_IR::OperationDef; TAO_ServerRequestInfo_IR_OperationDef_mode_set ( TAO_ServerRequest &_tao_server_request, POA_IR::OperationDef *tao_impl , IR_OperationMode & mode, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_OperationDef_mode_set (const TAO_ServerRequestInfo_IR_OperationDef_mode_set &); void operator= (const TAO_ServerRequestInfo_IR_OperationDef_mode_set &); private: POA_IR::OperationDef *_tao_impl; const IR_OperationMode & mode_; }; class TAO_ServerRequestInfo_IR_OperationDef_contexts_get : public TAO_ServerRequestInfo { public: friend class POA_IR::OperationDef; TAO_ServerRequestInfo_IR_OperationDef_contexts_get ( TAO_ServerRequest &_tao_server_request, POA_IR::OperationDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_OperationDef_contexts_get (const TAO_ServerRequestInfo_IR_OperationDef_contexts_get &); void operator= (const TAO_ServerRequestInfo_IR_OperationDef_contexts_get &); private: POA_IR::OperationDef *_tao_impl; void result (IR::ContextIdSeq * result); // update the result IR_ContextIdSeq * _result; }; class TAO_ServerRequestInfo_IR_OperationDef_contexts_set : public TAO_ServerRequestInfo { public: friend class POA_IR::OperationDef; TAO_ServerRequestInfo_IR_OperationDef_contexts_set ( TAO_ServerRequest &_tao_server_request, POA_IR::OperationDef *tao_impl , const IR_ContextIdSeq & contexts, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_OperationDef_contexts_set (const TAO_ServerRequestInfo_IR_OperationDef_contexts_set &); void operator= (const TAO_ServerRequestInfo_IR_OperationDef_contexts_set &); private: POA_IR::OperationDef *_tao_impl; const IR_ContextIdSeq & contexts_; }; class TAO_ServerRequestInfo_IR_OperationDef_exceptions_get : public TAO_ServerRequestInfo { public: friend class POA_IR::OperationDef; TAO_ServerRequestInfo_IR_OperationDef_exceptions_get ( TAO_ServerRequest &_tao_server_request, POA_IR::OperationDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_OperationDef_exceptions_get (const TAO_ServerRequestInfo_IR_OperationDef_exceptions_get &); void operator= (const TAO_ServerRequestInfo_IR_OperationDef_exceptions_get &); private: POA_IR::OperationDef *_tao_impl; void result (IR::ExceptionDefSeq * result); // update the result IR_ExceptionDefSeq * _result; }; class TAO_ServerRequestInfo_IR_OperationDef_exceptions_set : public TAO_ServerRequestInfo { public: friend class POA_IR::OperationDef; TAO_ServerRequestInfo_IR_OperationDef_exceptions_set ( TAO_ServerRequest &_tao_server_request, POA_IR::OperationDef *tao_impl , const IR_ExceptionDefSeq & exceptions, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_OperationDef_exceptions_set (const TAO_ServerRequestInfo_IR_OperationDef_exceptions_set &); void operator= (const TAO_ServerRequestInfo_IR_OperationDef_exceptions_set &); private: POA_IR::OperationDef *_tao_impl; const IR_ExceptionDefSeq & exceptions_; }; #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_OperationDef_Strategized_Proxy_Broker : public virtual _TAO_OperationDef_Proxy_Broker { public: _TAO_OperationDef_Strategized_Proxy_Broker (void); virtual ~_TAO_OperationDef_Strategized_Proxy_Broker (void); virtual _TAO_OperationDef_Proxy_Impl &select_proxy ( IR_OperationDef *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_OperationDef_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_OperationDef_Strategized_Proxy_Broker *the_TAO_OperationDef_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_OperationDef_ThruPOA_Proxy_Impl : public virtual _TAO_OperationDef_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual ::POA_IR::_TAO_Contained_ThruPOA_Proxy_Impl { public: _TAO_OperationDef_ThruPOA_Proxy_Impl (void); virtual ~_TAO_OperationDef_ThruPOA_Proxy_Impl (void) { } virtual CORBA::TypeCode_ptr result ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_IDLType_ptr result_def ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void result_def ( CORBA_Object *_collocated_tao_target_, IR_IDLType_ptr result_def, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_ParDescriptionSeq * params ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void params ( CORBA_Object *_collocated_tao_target_, const IR_ParDescriptionSeq & params, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_OperationMode mode ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void mode ( CORBA_Object *_collocated_tao_target_, IR_OperationMode mode, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_ContextIdSeq * contexts ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void contexts ( CORBA_Object *_collocated_tao_target_, const IR_ContextIdSeq & contexts, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_ExceptionDefSeq * exceptions ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void exceptions ( CORBA_Object *_collocated_tao_target_, const IR_ExceptionDefSeq & exceptions, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class OperationDef_tie : public OperationDef { public: OperationDef_tie (T &t); // the T& ctor OperationDef_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA OperationDef_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag OperationDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~OperationDef_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); CORBA::TypeCode_ptr result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_IDLType_ptr result_def ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void result_def ( IR_IDLType_ptr result_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ParDescriptionSeq * params ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void params ( const IR_ParDescriptionSeq & params, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_OperationMode mode ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void mode ( IR_OperationMode mode, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ContextIdSeq * contexts ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void contexts ( const IR_ContextIdSeq & contexts, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ExceptionDefSeq * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void exceptions ( const IR_ExceptionDefSeq & exceptions, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * id ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void id ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void name ( const char * name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * version ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void version ( const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container_ptr defined_in ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * absolute_name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Repository_ptr containing_repository ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained::Description * describe ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void move ( IR_Container_ptr new_container, const char * new_name, const char * new_version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed OperationDef_tie (const OperationDef_tie &); void operator= (const OperationDef_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class InterfaceDef; typedef InterfaceDef *InterfaceDef_ptr; // Forward Classes Declaration class _TAO_InterfaceDef_ThruPOA_Proxy_Impl; class _TAO_InterfaceDef_Strategized_Proxy_Broker; class InterfaceDef : public virtual Container, public virtual Contained, public virtual IDLType { protected: InterfaceDef (void); public: InterfaceDef (const InterfaceDef& rhs); virtual ~InterfaceDef (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_InterfaceDef *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; virtual IR_InterfaceDefSeq * base_interfaces ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_base_interfaces_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void base_interfaces ( const IR_InterfaceDefSeq & base_interfaces, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_base_interfaces_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual CORBA::Boolean is_abstract ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_is_abstract_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void is_abstract ( CORBA::Boolean is_abstract, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_is_abstract_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual CORBA::Boolean is_local ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_is_local_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void is_local ( CORBA::Boolean is_local, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_is_local_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual CORBA::Boolean is_a ( const char * interface_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void is_a_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_AttributeDef_ptr create_attribute ( const char * id, const char * name, const char * version, IR_IDLType_ptr type, IR_AttributeMode mode, const IR_ExceptionDefSeq & get_exceptions, const IR_ExceptionDefSeq & put_exceptions, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void create_attribute_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_OperationDef_ptr create_operation ( const char * id, const char * name, const char * version, IR_IDLType_ptr result, IR_OperationMode mode, const IR_ParDescriptionSeq & params, const IR_ExceptionDefSeq & exceptions, const IR_ContextIdSeq & contexts, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void create_operation_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void lookup_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void contents_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void lookup_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_contents_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_module_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_constant_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_struct_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_union_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_enum_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_alias_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_interface_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_value_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_value_box_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_exception_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_native_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_defined_in_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_absolute_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_containing_repository_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void move_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_type_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. class TAO_ServerRequestInfo_IR_InterfaceDef_base_interfaces_get : public TAO_ServerRequestInfo { public: friend class POA_IR::InterfaceDef; TAO_ServerRequestInfo_IR_InterfaceDef_base_interfaces_get ( TAO_ServerRequest &_tao_server_request, POA_IR::InterfaceDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_InterfaceDef_base_interfaces_get (const TAO_ServerRequestInfo_IR_InterfaceDef_base_interfaces_get &); void operator= (const TAO_ServerRequestInfo_IR_InterfaceDef_base_interfaces_get &); private: POA_IR::InterfaceDef *_tao_impl; void result (IR::InterfaceDefSeq * result); // update the result IR_InterfaceDefSeq * _result; }; class TAO_ServerRequestInfo_IR_InterfaceDef_base_interfaces_set : public TAO_ServerRequestInfo { public: friend class POA_IR::InterfaceDef; TAO_ServerRequestInfo_IR_InterfaceDef_base_interfaces_set ( TAO_ServerRequest &_tao_server_request, POA_IR::InterfaceDef *tao_impl , const IR_InterfaceDefSeq & base_interfaces, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_InterfaceDef_base_interfaces_set (const TAO_ServerRequestInfo_IR_InterfaceDef_base_interfaces_set &); void operator= (const TAO_ServerRequestInfo_IR_InterfaceDef_base_interfaces_set &); private: POA_IR::InterfaceDef *_tao_impl; const IR_InterfaceDefSeq & base_interfaces_; }; class TAO_ServerRequestInfo_IR_InterfaceDef_is_abstract_get : public TAO_ServerRequestInfo { public: friend class POA_IR::InterfaceDef; TAO_ServerRequestInfo_IR_InterfaceDef_is_abstract_get ( TAO_ServerRequest &_tao_server_request, POA_IR::InterfaceDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_InterfaceDef_is_abstract_get (const TAO_ServerRequestInfo_IR_InterfaceDef_is_abstract_get &); void operator= (const TAO_ServerRequestInfo_IR_InterfaceDef_is_abstract_get &); private: POA_IR::InterfaceDef *_tao_impl; void result (CORBA::Boolean result); // update the result CORBA::Boolean _result; }; class TAO_ServerRequestInfo_IR_InterfaceDef_is_abstract_set : public TAO_ServerRequestInfo { public: friend class POA_IR::InterfaceDef; TAO_ServerRequestInfo_IR_InterfaceDef_is_abstract_set ( TAO_ServerRequest &_tao_server_request, POA_IR::InterfaceDef *tao_impl , const CORBA::Boolean & is_abstract, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_InterfaceDef_is_abstract_set (const TAO_ServerRequestInfo_IR_InterfaceDef_is_abstract_set &); void operator= (const TAO_ServerRequestInfo_IR_InterfaceDef_is_abstract_set &); private: POA_IR::InterfaceDef *_tao_impl; const CORBA::Boolean & is_abstract_; }; class TAO_ServerRequestInfo_IR_InterfaceDef_is_local_get : public TAO_ServerRequestInfo { public: friend class POA_IR::InterfaceDef; TAO_ServerRequestInfo_IR_InterfaceDef_is_local_get ( TAO_ServerRequest &_tao_server_request, POA_IR::InterfaceDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_InterfaceDef_is_local_get (const TAO_ServerRequestInfo_IR_InterfaceDef_is_local_get &); void operator= (const TAO_ServerRequestInfo_IR_InterfaceDef_is_local_get &); private: POA_IR::InterfaceDef *_tao_impl; void result (CORBA::Boolean result); // update the result CORBA::Boolean _result; }; class TAO_ServerRequestInfo_IR_InterfaceDef_is_local_set : public TAO_ServerRequestInfo { public: friend class POA_IR::InterfaceDef; TAO_ServerRequestInfo_IR_InterfaceDef_is_local_set ( TAO_ServerRequest &_tao_server_request, POA_IR::InterfaceDef *tao_impl , const CORBA::Boolean & is_local, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_InterfaceDef_is_local_set (const TAO_ServerRequestInfo_IR_InterfaceDef_is_local_set &); void operator= (const TAO_ServerRequestInfo_IR_InterfaceDef_is_local_set &); private: POA_IR::InterfaceDef *_tao_impl; const CORBA::Boolean & is_local_; }; class TAO_ServerRequestInfo_IR_InterfaceDef_is_a : public TAO_ServerRequestInfo { public: friend class POA_IR::InterfaceDef; TAO_ServerRequestInfo_IR_InterfaceDef_is_a ( TAO_ServerRequest &_tao_server_request, POA_IR::InterfaceDef *tao_impl , const char * interface_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_InterfaceDef_is_a (const TAO_ServerRequestInfo_IR_InterfaceDef_is_a &); void operator= (const TAO_ServerRequestInfo_IR_InterfaceDef_is_a &); private: POA_IR::InterfaceDef *_tao_impl; const char * interface_id_; void result (CORBA::Boolean result); // update the result CORBA::Boolean _result; }; class TAO_ServerRequestInfo_IR_InterfaceDef_create_attribute : public TAO_ServerRequestInfo { public: friend class POA_IR::InterfaceDef; TAO_ServerRequestInfo_IR_InterfaceDef_create_attribute ( TAO_ServerRequest &_tao_server_request, POA_IR::InterfaceDef *tao_impl , const char * id, const char * name, const char * version, IR_IDLType_ptr type, IR_AttributeMode & mode, const IR_ExceptionDefSeq & get_exceptions, const IR_ExceptionDefSeq & put_exceptions, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_InterfaceDef_create_attribute (const TAO_ServerRequestInfo_IR_InterfaceDef_create_attribute &); void operator= (const TAO_ServerRequestInfo_IR_InterfaceDef_create_attribute &); private: POA_IR::InterfaceDef *_tao_impl; const char * id_; const char * name_; const char * version_; IR_IDLType_ptr type_; const IR_AttributeMode & mode_; const IR_ExceptionDefSeq & get_exceptions_; const IR_ExceptionDefSeq & put_exceptions_; void result (IR::AttributeDef_ptr result); // update the result IR_AttributeDef_ptr _result; }; class TAO_ServerRequestInfo_IR_InterfaceDef_create_operation : public TAO_ServerRequestInfo { public: friend class POA_IR::InterfaceDef; TAO_ServerRequestInfo_IR_InterfaceDef_create_operation ( TAO_ServerRequest &_tao_server_request, POA_IR::InterfaceDef *tao_impl , const char * id, const char * name, const char * version, IR_IDLType_ptr result, IR_OperationMode & mode, const IR_ParDescriptionSeq & params, const IR_ExceptionDefSeq & exceptions, const IR_ContextIdSeq & contexts, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_InterfaceDef_create_operation (const TAO_ServerRequestInfo_IR_InterfaceDef_create_operation &); void operator= (const TAO_ServerRequestInfo_IR_InterfaceDef_create_operation &); private: POA_IR::InterfaceDef *_tao_impl; const char * id_; const char * name_; const char * version_; IR_IDLType_ptr result_; const IR_OperationMode & mode_; const IR_ParDescriptionSeq & params_; const IR_ExceptionDefSeq & exceptions_; const IR_ContextIdSeq & contexts_; void result (IR::OperationDef_ptr result); // update the result IR_OperationDef_ptr _result; }; #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_InterfaceDef_Strategized_Proxy_Broker : public virtual _TAO_InterfaceDef_Proxy_Broker { public: _TAO_InterfaceDef_Strategized_Proxy_Broker (void); virtual ~_TAO_InterfaceDef_Strategized_Proxy_Broker (void); virtual _TAO_InterfaceDef_Proxy_Impl &select_proxy ( IR_InterfaceDef *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_InterfaceDef_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_InterfaceDef_Strategized_Proxy_Broker *the_TAO_InterfaceDef_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_InterfaceDef_ThruPOA_Proxy_Impl : public virtual _TAO_InterfaceDef_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual ::POA_IR::_TAO_Container_ThruPOA_Proxy_Impl, public virtual ::POA_IR::_TAO_Contained_ThruPOA_Proxy_Impl, public virtual ::POA_IR::_TAO_IDLType_ThruPOA_Proxy_Impl { public: _TAO_InterfaceDef_ThruPOA_Proxy_Impl (void); virtual ~_TAO_InterfaceDef_ThruPOA_Proxy_Impl (void) { } virtual IR_InterfaceDefSeq * base_interfaces ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void base_interfaces ( CORBA_Object *_collocated_tao_target_, const IR_InterfaceDefSeq & base_interfaces, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual CORBA::Boolean is_abstract ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void is_abstract ( CORBA_Object *_collocated_tao_target_, CORBA::Boolean is_abstract, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual CORBA::Boolean is_local ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void is_local ( CORBA_Object *_collocated_tao_target_, CORBA::Boolean is_local, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual CORBA::Boolean is_a ( CORBA_Object *_collocated_tao_target_, const char * interface_id, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_AttributeDef_ptr create_attribute ( CORBA_Object *_collocated_tao_target_, const char * id, const char * name, const char * version, IR_IDLType_ptr type, IR_AttributeMode mode, const IR_ExceptionDefSeq & get_exceptions, const IR_ExceptionDefSeq & put_exceptions, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_OperationDef_ptr create_operation ( CORBA_Object *_collocated_tao_target_, const char * id, const char * name, const char * version, IR_IDLType_ptr result, IR_OperationMode mode, const IR_ParDescriptionSeq & params, const IR_ExceptionDefSeq & exceptions, const IR_ContextIdSeq & contexts, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class InterfaceDef_tie : public InterfaceDef { public: InterfaceDef_tie (T &t); // the T& ctor InterfaceDef_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA InterfaceDef_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag InterfaceDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~InterfaceDef_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); IR_InterfaceDefSeq * base_interfaces ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void base_interfaces ( const IR_InterfaceDefSeq & base_interfaces, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::Boolean is_abstract ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void is_abstract ( CORBA::Boolean is_abstract, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::Boolean is_local ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void is_local ( CORBA::Boolean is_local, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::Boolean is_a ( const char * interface_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_AttributeDef_ptr create_attribute ( const char * id, const char * name, const char * version, IR_IDLType_ptr type, IR_AttributeMode mode, const IR_ExceptionDefSeq & get_exceptions, const IR_ExceptionDefSeq & put_exceptions, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_OperationDef_ptr create_operation ( const char * id, const char * name, const char * version, IR_IDLType_ptr result, IR_OperationMode mode, const IR_ParDescriptionSeq & params, const IR_ExceptionDefSeq & exceptions, const IR_ContextIdSeq & contexts, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained_ptr lookup ( const char * search_name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ContainedSeq * contents ( IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ContainedSeq * lookup_name ( const char * search_name, CORBA::Long levels_to_search, IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container::DescriptionSeq * describe_contents ( IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Long max_returned_objs, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ModuleDef_ptr create_module ( const char * id, const char * name, const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ConstantDef_ptr create_constant ( const char * id, const char * name, const char * version, IR_IDLType_ptr type, const CORBA::Any & value, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_StructDef_ptr create_struct ( const char * id, const char * name, const char * version, const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_UnionDef_ptr create_union ( const char * id, const char * name, const char * version, IR_IDLType_ptr discriminator_type, const IR_UnionMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_EnumDef_ptr create_enum ( const char * id, const char * name, const char * version, const IR_EnumMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_AliasDef_ptr create_alias ( const char * id, const char * name, const char * version, IR_IDLType_ptr original_type, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_InterfaceDef_ptr create_interface ( const char * id, const char * name, const char * version, const IR_InterfaceDefSeq & base_interfaces, CORBA::Boolean is_abstract, CORBA::Boolean is_local, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ValueDef_ptr create_value ( const char * id, const char * name, const char * version, CORBA::Boolean is_custom, CORBA::Boolean is_abstract, IR_ValueDef_ptr base_value, CORBA::Boolean is_truncatable, const IR_ValueDefSeq & abstract_base_values, const IR_InterfaceDefSeq & supported_interfaces, const IR_InitializerSeq & initializers, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ValueBoxDef_ptr create_value_box ( const char * id, const char * name, const char * version, IR_IDLType_ptr original_type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ExceptionDef_ptr create_exception ( const char * id, const char * name, const char * version, const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_NativeDef_ptr create_native ( const char * id, const char * name, const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * id ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void id ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void name ( const char * name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * version ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void version ( const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container_ptr defined_in ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * absolute_name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Repository_ptr containing_repository ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained::Description * describe ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void move ( IR_Container_ptr new_container, const char * new_name, const char * new_version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::TypeCode_ptr type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed InterfaceDef_tie (const InterfaceDef_tie &); void operator= (const InterfaceDef_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class ValueMemberDef; typedef ValueMemberDef *ValueMemberDef_ptr; // Forward Classes Declaration class _TAO_ValueMemberDef_ThruPOA_Proxy_Impl; class _TAO_ValueMemberDef_Strategized_Proxy_Broker; class ValueMemberDef : public virtual Contained { protected: ValueMemberDef (void); public: ValueMemberDef (const ValueMemberDef& rhs); virtual ~ValueMemberDef (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_ValueMemberDef *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; virtual CORBA::TypeCode_ptr type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_type_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_IDLType_ptr type_def ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_type_def_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void type_def ( IR_IDLType_ptr type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_type_def_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual CORBA::Visibility access ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_access_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void access ( CORBA::Visibility access, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_access_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _get_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_defined_in_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_absolute_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_containing_repository_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void move_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. class TAO_ServerRequestInfo_IR_ValueMemberDef_type_get : public TAO_ServerRequestInfo { public: friend class POA_IR::ValueMemberDef; TAO_ServerRequestInfo_IR_ValueMemberDef_type_get ( TAO_ServerRequest &_tao_server_request, POA_IR::ValueMemberDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ValueMemberDef_type_get (const TAO_ServerRequestInfo_IR_ValueMemberDef_type_get &); void operator= (const TAO_ServerRequestInfo_IR_ValueMemberDef_type_get &); private: POA_IR::ValueMemberDef *_tao_impl; void result (CORBA::TypeCode_ptr result); // update the result CORBA::TypeCode_ptr _result; }; class TAO_ServerRequestInfo_IR_ValueMemberDef_type_def_get : public TAO_ServerRequestInfo { public: friend class POA_IR::ValueMemberDef; TAO_ServerRequestInfo_IR_ValueMemberDef_type_def_get ( TAO_ServerRequest &_tao_server_request, POA_IR::ValueMemberDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ValueMemberDef_type_def_get (const TAO_ServerRequestInfo_IR_ValueMemberDef_type_def_get &); void operator= (const TAO_ServerRequestInfo_IR_ValueMemberDef_type_def_get &); private: POA_IR::ValueMemberDef *_tao_impl; void result (IR::IDLType_ptr result); // update the result IR_IDLType_ptr _result; }; class TAO_ServerRequestInfo_IR_ValueMemberDef_type_def_set : public TAO_ServerRequestInfo { public: friend class POA_IR::ValueMemberDef; TAO_ServerRequestInfo_IR_ValueMemberDef_type_def_set ( TAO_ServerRequest &_tao_server_request, POA_IR::ValueMemberDef *tao_impl , IR_IDLType_ptr type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ValueMemberDef_type_def_set (const TAO_ServerRequestInfo_IR_ValueMemberDef_type_def_set &); void operator= (const TAO_ServerRequestInfo_IR_ValueMemberDef_type_def_set &); private: POA_IR::ValueMemberDef *_tao_impl; IR_IDLType_ptr type_def_; }; class TAO_ServerRequestInfo_IR_ValueMemberDef_access_get : public TAO_ServerRequestInfo { public: friend class POA_IR::ValueMemberDef; TAO_ServerRequestInfo_IR_ValueMemberDef_access_get ( TAO_ServerRequest &_tao_server_request, POA_IR::ValueMemberDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ValueMemberDef_access_get (const TAO_ServerRequestInfo_IR_ValueMemberDef_access_get &); void operator= (const TAO_ServerRequestInfo_IR_ValueMemberDef_access_get &); private: POA_IR::ValueMemberDef *_tao_impl; void result (CORBA::Visibility result); // update the result CORBA::Visibility _result; }; class TAO_ServerRequestInfo_IR_ValueMemberDef_access_set : public TAO_ServerRequestInfo { public: friend class POA_IR::ValueMemberDef; TAO_ServerRequestInfo_IR_ValueMemberDef_access_set ( TAO_ServerRequest &_tao_server_request, POA_IR::ValueMemberDef *tao_impl , const CORBA::Visibility & access, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ValueMemberDef_access_set (const TAO_ServerRequestInfo_IR_ValueMemberDef_access_set &); void operator= (const TAO_ServerRequestInfo_IR_ValueMemberDef_access_set &); private: POA_IR::ValueMemberDef *_tao_impl; const CORBA::Visibility & access_; }; #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_ValueMemberDef_Strategized_Proxy_Broker : public virtual _TAO_ValueMemberDef_Proxy_Broker { public: _TAO_ValueMemberDef_Strategized_Proxy_Broker (void); virtual ~_TAO_ValueMemberDef_Strategized_Proxy_Broker (void); virtual _TAO_ValueMemberDef_Proxy_Impl &select_proxy ( IR_ValueMemberDef *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_ValueMemberDef_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_ValueMemberDef_Strategized_Proxy_Broker *the_TAO_ValueMemberDef_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_ValueMemberDef_ThruPOA_Proxy_Impl : public virtual _TAO_ValueMemberDef_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual ::POA_IR::_TAO_Contained_ThruPOA_Proxy_Impl { public: _TAO_ValueMemberDef_ThruPOA_Proxy_Impl (void); virtual ~_TAO_ValueMemberDef_ThruPOA_Proxy_Impl (void) { } virtual CORBA::TypeCode_ptr type ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_IDLType_ptr type_def ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void type_def ( CORBA_Object *_collocated_tao_target_, IR_IDLType_ptr type_def, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual CORBA::Visibility access ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void access ( CORBA_Object *_collocated_tao_target_, CORBA::Visibility access, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class ValueMemberDef_tie : public ValueMemberDef { public: ValueMemberDef_tie (T &t); // the T& ctor ValueMemberDef_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA ValueMemberDef_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag ValueMemberDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~ValueMemberDef_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); CORBA::TypeCode_ptr type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_IDLType_ptr type_def ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void type_def ( IR_IDLType_ptr type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::Visibility access ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void access ( CORBA::Visibility access, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * id ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void id ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void name ( const char * name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * version ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void version ( const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container_ptr defined_in ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * absolute_name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Repository_ptr containing_repository ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained::Description * describe ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void move ( IR_Container_ptr new_container, const char * new_name, const char * new_version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed ValueMemberDef_tie (const ValueMemberDef_tie &); void operator= (const ValueMemberDef_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class ValueDef; typedef ValueDef *ValueDef_ptr; // Forward Classes Declaration class _TAO_ValueDef_ThruPOA_Proxy_Impl; class _TAO_ValueDef_Strategized_Proxy_Broker; class ValueDef : public virtual Container, public virtual Contained, public virtual IDLType { protected: ValueDef (void); public: ValueDef (const ValueDef& rhs); virtual ~ValueDef (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_ValueDef *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; virtual IR_InterfaceDefSeq * supported_interfaces ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_supported_interfaces_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void supported_interfaces ( const IR_InterfaceDefSeq & supported_interfaces, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_supported_interfaces_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_InitializerSeq * initializers ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_initializers_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void initializers ( const IR_InitializerSeq & initializers, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_initializers_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_ValueDef_ptr base_value ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_base_value_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void base_value ( IR_ValueDef_ptr base_value, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_base_value_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_ValueDefSeq * abstract_base_values ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_abstract_base_values_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void abstract_base_values ( const IR_ValueDefSeq & abstract_base_values, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_abstract_base_values_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual CORBA::Boolean is_abstract ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_is_abstract_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void is_abstract ( CORBA::Boolean is_abstract, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_is_abstract_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual CORBA::Boolean is_custom ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_is_custom_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void is_custom ( CORBA::Boolean is_custom, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_is_custom_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual CORBA::Boolean is_truncatable ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_is_truncatable_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void is_truncatable ( CORBA::Boolean is_truncatable, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_is_truncatable_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual CORBA::Boolean is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void is_a_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_ValueMemberDef_ptr create_value_member ( const char * id, const char * name, const char * version, IR_IDLType_ptr type, CORBA::Visibility access, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void create_value_member_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_AttributeDef_ptr create_attribute ( const char * id, const char * name, const char * version, IR_IDLType_ptr type, IR_AttributeMode mode, const IR_ExceptionDefSeq & get_exceptions, const IR_ExceptionDefSeq & put_exceptions, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void create_attribute_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_OperationDef_ptr create_operation ( const char * id, const char * name, const char * version, IR_IDLType_ptr result, IR_OperationMode mode, const IR_ParDescriptionSeq & params, const IR_ExceptionDefSeq & exceptions, const IR_ContextIdSeq & contexts, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void create_operation_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void lookup_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void contents_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void lookup_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_contents_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_module_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_constant_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_struct_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_union_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_enum_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_alias_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_interface_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_value_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_value_box_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_exception_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_native_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_defined_in_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_absolute_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_containing_repository_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void move_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_type_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. class TAO_ServerRequestInfo_IR_ValueDef_supported_interfaces_get : public TAO_ServerRequestInfo { public: friend class POA_IR::ValueDef; TAO_ServerRequestInfo_IR_ValueDef_supported_interfaces_get ( TAO_ServerRequest &_tao_server_request, POA_IR::ValueDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ValueDef_supported_interfaces_get (const TAO_ServerRequestInfo_IR_ValueDef_supported_interfaces_get &); void operator= (const TAO_ServerRequestInfo_IR_ValueDef_supported_interfaces_get &); private: POA_IR::ValueDef *_tao_impl; void result (IR::InterfaceDefSeq * result); // update the result IR_InterfaceDefSeq * _result; }; class TAO_ServerRequestInfo_IR_ValueDef_supported_interfaces_set : public TAO_ServerRequestInfo { public: friend class POA_IR::ValueDef; TAO_ServerRequestInfo_IR_ValueDef_supported_interfaces_set ( TAO_ServerRequest &_tao_server_request, POA_IR::ValueDef *tao_impl , const IR_InterfaceDefSeq & supported_interfaces, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ValueDef_supported_interfaces_set (const TAO_ServerRequestInfo_IR_ValueDef_supported_interfaces_set &); void operator= (const TAO_ServerRequestInfo_IR_ValueDef_supported_interfaces_set &); private: POA_IR::ValueDef *_tao_impl; const IR_InterfaceDefSeq & supported_interfaces_; }; class TAO_ServerRequestInfo_IR_ValueDef_initializers_get : public TAO_ServerRequestInfo { public: friend class POA_IR::ValueDef; TAO_ServerRequestInfo_IR_ValueDef_initializers_get ( TAO_ServerRequest &_tao_server_request, POA_IR::ValueDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ValueDef_initializers_get (const TAO_ServerRequestInfo_IR_ValueDef_initializers_get &); void operator= (const TAO_ServerRequestInfo_IR_ValueDef_initializers_get &); private: POA_IR::ValueDef *_tao_impl; void result (IR::InitializerSeq * result); // update the result IR_InitializerSeq * _result; }; class TAO_ServerRequestInfo_IR_ValueDef_initializers_set : public TAO_ServerRequestInfo { public: friend class POA_IR::ValueDef; TAO_ServerRequestInfo_IR_ValueDef_initializers_set ( TAO_ServerRequest &_tao_server_request, POA_IR::ValueDef *tao_impl , const IR_InitializerSeq & initializers, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ValueDef_initializers_set (const TAO_ServerRequestInfo_IR_ValueDef_initializers_set &); void operator= (const TAO_ServerRequestInfo_IR_ValueDef_initializers_set &); private: POA_IR::ValueDef *_tao_impl; const IR_InitializerSeq & initializers_; }; class TAO_ServerRequestInfo_IR_ValueDef_base_value_get : public TAO_ServerRequestInfo { public: friend class POA_IR::ValueDef; TAO_ServerRequestInfo_IR_ValueDef_base_value_get ( TAO_ServerRequest &_tao_server_request, POA_IR::ValueDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ValueDef_base_value_get (const TAO_ServerRequestInfo_IR_ValueDef_base_value_get &); void operator= (const TAO_ServerRequestInfo_IR_ValueDef_base_value_get &); private: POA_IR::ValueDef *_tao_impl; void result (IR::ValueDef_ptr result); // update the result IR_ValueDef_ptr _result; }; class TAO_ServerRequestInfo_IR_ValueDef_base_value_set : public TAO_ServerRequestInfo { public: friend class POA_IR::ValueDef; TAO_ServerRequestInfo_IR_ValueDef_base_value_set ( TAO_ServerRequest &_tao_server_request, POA_IR::ValueDef *tao_impl , IR_ValueDef_ptr base_value, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ValueDef_base_value_set (const TAO_ServerRequestInfo_IR_ValueDef_base_value_set &); void operator= (const TAO_ServerRequestInfo_IR_ValueDef_base_value_set &); private: POA_IR::ValueDef *_tao_impl; IR_ValueDef_ptr base_value_; }; class TAO_ServerRequestInfo_IR_ValueDef_abstract_base_values_get : public TAO_ServerRequestInfo { public: friend class POA_IR::ValueDef; TAO_ServerRequestInfo_IR_ValueDef_abstract_base_values_get ( TAO_ServerRequest &_tao_server_request, POA_IR::ValueDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ValueDef_abstract_base_values_get (const TAO_ServerRequestInfo_IR_ValueDef_abstract_base_values_get &); void operator= (const TAO_ServerRequestInfo_IR_ValueDef_abstract_base_values_get &); private: POA_IR::ValueDef *_tao_impl; void result (IR::ValueDefSeq * result); // update the result IR_ValueDefSeq * _result; }; class TAO_ServerRequestInfo_IR_ValueDef_abstract_base_values_set : public TAO_ServerRequestInfo { public: friend class POA_IR::ValueDef; TAO_ServerRequestInfo_IR_ValueDef_abstract_base_values_set ( TAO_ServerRequest &_tao_server_request, POA_IR::ValueDef *tao_impl , const IR_ValueDefSeq & abstract_base_values, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ValueDef_abstract_base_values_set (const TAO_ServerRequestInfo_IR_ValueDef_abstract_base_values_set &); void operator= (const TAO_ServerRequestInfo_IR_ValueDef_abstract_base_values_set &); private: POA_IR::ValueDef *_tao_impl; const IR_ValueDefSeq & abstract_base_values_; }; class TAO_ServerRequestInfo_IR_ValueDef_is_abstract_get : public TAO_ServerRequestInfo { public: friend class POA_IR::ValueDef; TAO_ServerRequestInfo_IR_ValueDef_is_abstract_get ( TAO_ServerRequest &_tao_server_request, POA_IR::ValueDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ValueDef_is_abstract_get (const TAO_ServerRequestInfo_IR_ValueDef_is_abstract_get &); void operator= (const TAO_ServerRequestInfo_IR_ValueDef_is_abstract_get &); private: POA_IR::ValueDef *_tao_impl; void result (CORBA::Boolean result); // update the result CORBA::Boolean _result; }; class TAO_ServerRequestInfo_IR_ValueDef_is_abstract_set : public TAO_ServerRequestInfo { public: friend class POA_IR::ValueDef; TAO_ServerRequestInfo_IR_ValueDef_is_abstract_set ( TAO_ServerRequest &_tao_server_request, POA_IR::ValueDef *tao_impl , const CORBA::Boolean & is_abstract, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ValueDef_is_abstract_set (const TAO_ServerRequestInfo_IR_ValueDef_is_abstract_set &); void operator= (const TAO_ServerRequestInfo_IR_ValueDef_is_abstract_set &); private: POA_IR::ValueDef *_tao_impl; const CORBA::Boolean & is_abstract_; }; class TAO_ServerRequestInfo_IR_ValueDef_is_custom_get : public TAO_ServerRequestInfo { public: friend class POA_IR::ValueDef; TAO_ServerRequestInfo_IR_ValueDef_is_custom_get ( TAO_ServerRequest &_tao_server_request, POA_IR::ValueDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ValueDef_is_custom_get (const TAO_ServerRequestInfo_IR_ValueDef_is_custom_get &); void operator= (const TAO_ServerRequestInfo_IR_ValueDef_is_custom_get &); private: POA_IR::ValueDef *_tao_impl; void result (CORBA::Boolean result); // update the result CORBA::Boolean _result; }; class TAO_ServerRequestInfo_IR_ValueDef_is_custom_set : public TAO_ServerRequestInfo { public: friend class POA_IR::ValueDef; TAO_ServerRequestInfo_IR_ValueDef_is_custom_set ( TAO_ServerRequest &_tao_server_request, POA_IR::ValueDef *tao_impl , const CORBA::Boolean & is_custom, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ValueDef_is_custom_set (const TAO_ServerRequestInfo_IR_ValueDef_is_custom_set &); void operator= (const TAO_ServerRequestInfo_IR_ValueDef_is_custom_set &); private: POA_IR::ValueDef *_tao_impl; const CORBA::Boolean & is_custom_; }; class TAO_ServerRequestInfo_IR_ValueDef_is_truncatable_get : public TAO_ServerRequestInfo { public: friend class POA_IR::ValueDef; TAO_ServerRequestInfo_IR_ValueDef_is_truncatable_get ( TAO_ServerRequest &_tao_server_request, POA_IR::ValueDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ValueDef_is_truncatable_get (const TAO_ServerRequestInfo_IR_ValueDef_is_truncatable_get &); void operator= (const TAO_ServerRequestInfo_IR_ValueDef_is_truncatable_get &); private: POA_IR::ValueDef *_tao_impl; void result (CORBA::Boolean result); // update the result CORBA::Boolean _result; }; class TAO_ServerRequestInfo_IR_ValueDef_is_truncatable_set : public TAO_ServerRequestInfo { public: friend class POA_IR::ValueDef; TAO_ServerRequestInfo_IR_ValueDef_is_truncatable_set ( TAO_ServerRequest &_tao_server_request, POA_IR::ValueDef *tao_impl , const CORBA::Boolean & is_truncatable, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ValueDef_is_truncatable_set (const TAO_ServerRequestInfo_IR_ValueDef_is_truncatable_set &); void operator= (const TAO_ServerRequestInfo_IR_ValueDef_is_truncatable_set &); private: POA_IR::ValueDef *_tao_impl; const CORBA::Boolean & is_truncatable_; }; class TAO_ServerRequestInfo_IR_ValueDef_is_a : public TAO_ServerRequestInfo { public: friend class POA_IR::ValueDef; TAO_ServerRequestInfo_IR_ValueDef_is_a ( TAO_ServerRequest &_tao_server_request, POA_IR::ValueDef *tao_impl , const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ValueDef_is_a (const TAO_ServerRequestInfo_IR_ValueDef_is_a &); void operator= (const TAO_ServerRequestInfo_IR_ValueDef_is_a &); private: POA_IR::ValueDef *_tao_impl; const char * id_; void result (CORBA::Boolean result); // update the result CORBA::Boolean _result; }; class TAO_ServerRequestInfo_IR_ValueDef_create_value_member : public TAO_ServerRequestInfo { public: friend class POA_IR::ValueDef; TAO_ServerRequestInfo_IR_ValueDef_create_value_member ( TAO_ServerRequest &_tao_server_request, POA_IR::ValueDef *tao_impl , const char * id, const char * name, const char * version, IR_IDLType_ptr type, const CORBA::Visibility & access, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ValueDef_create_value_member (const TAO_ServerRequestInfo_IR_ValueDef_create_value_member &); void operator= (const TAO_ServerRequestInfo_IR_ValueDef_create_value_member &); private: POA_IR::ValueDef *_tao_impl; const char * id_; const char * name_; const char * version_; IR_IDLType_ptr type_; const CORBA::Visibility & access_; void result (IR::ValueMemberDef_ptr result); // update the result IR_ValueMemberDef_ptr _result; }; class TAO_ServerRequestInfo_IR_ValueDef_create_attribute : public TAO_ServerRequestInfo { public: friend class POA_IR::ValueDef; TAO_ServerRequestInfo_IR_ValueDef_create_attribute ( TAO_ServerRequest &_tao_server_request, POA_IR::ValueDef *tao_impl , const char * id, const char * name, const char * version, IR_IDLType_ptr type, IR_AttributeMode & mode, const IR_ExceptionDefSeq & get_exceptions, const IR_ExceptionDefSeq & put_exceptions, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ValueDef_create_attribute (const TAO_ServerRequestInfo_IR_ValueDef_create_attribute &); void operator= (const TAO_ServerRequestInfo_IR_ValueDef_create_attribute &); private: POA_IR::ValueDef *_tao_impl; const char * id_; const char * name_; const char * version_; IR_IDLType_ptr type_; const IR_AttributeMode & mode_; const IR_ExceptionDefSeq & get_exceptions_; const IR_ExceptionDefSeq & put_exceptions_; void result (IR::AttributeDef_ptr result); // update the result IR_AttributeDef_ptr _result; }; class TAO_ServerRequestInfo_IR_ValueDef_create_operation : public TAO_ServerRequestInfo { public: friend class POA_IR::ValueDef; TAO_ServerRequestInfo_IR_ValueDef_create_operation ( TAO_ServerRequest &_tao_server_request, POA_IR::ValueDef *tao_impl , const char * id, const char * name, const char * version, IR_IDLType_ptr result, IR_OperationMode & mode, const IR_ParDescriptionSeq & params, const IR_ExceptionDefSeq & exceptions, const IR_ContextIdSeq & contexts, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ValueDef_create_operation (const TAO_ServerRequestInfo_IR_ValueDef_create_operation &); void operator= (const TAO_ServerRequestInfo_IR_ValueDef_create_operation &); private: POA_IR::ValueDef *_tao_impl; const char * id_; const char * name_; const char * version_; IR_IDLType_ptr result_; const IR_OperationMode & mode_; const IR_ParDescriptionSeq & params_; const IR_ExceptionDefSeq & exceptions_; const IR_ContextIdSeq & contexts_; void result (IR::OperationDef_ptr result); // update the result IR_OperationDef_ptr _result; }; #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_ValueDef_Strategized_Proxy_Broker : public virtual _TAO_ValueDef_Proxy_Broker { public: _TAO_ValueDef_Strategized_Proxy_Broker (void); virtual ~_TAO_ValueDef_Strategized_Proxy_Broker (void); virtual _TAO_ValueDef_Proxy_Impl &select_proxy ( IR_ValueDef *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_ValueDef_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_ValueDef_Strategized_Proxy_Broker *the_TAO_ValueDef_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_ValueDef_ThruPOA_Proxy_Impl : public virtual _TAO_ValueDef_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual ::POA_IR::_TAO_Container_ThruPOA_Proxy_Impl, public virtual ::POA_IR::_TAO_Contained_ThruPOA_Proxy_Impl, public virtual ::POA_IR::_TAO_IDLType_ThruPOA_Proxy_Impl { public: _TAO_ValueDef_ThruPOA_Proxy_Impl (void); virtual ~_TAO_ValueDef_ThruPOA_Proxy_Impl (void) { } virtual IR_InterfaceDefSeq * supported_interfaces ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void supported_interfaces ( CORBA_Object *_collocated_tao_target_, const IR_InterfaceDefSeq & supported_interfaces, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_InitializerSeq * initializers ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void initializers ( CORBA_Object *_collocated_tao_target_, const IR_InitializerSeq & initializers, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_ValueDef_ptr base_value ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void base_value ( CORBA_Object *_collocated_tao_target_, IR_ValueDef_ptr base_value, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_ValueDefSeq * abstract_base_values ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void abstract_base_values ( CORBA_Object *_collocated_tao_target_, const IR_ValueDefSeq & abstract_base_values, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual CORBA::Boolean is_abstract ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void is_abstract ( CORBA_Object *_collocated_tao_target_, CORBA::Boolean is_abstract, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual CORBA::Boolean is_custom ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void is_custom ( CORBA_Object *_collocated_tao_target_, CORBA::Boolean is_custom, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual CORBA::Boolean is_truncatable ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void is_truncatable ( CORBA_Object *_collocated_tao_target_, CORBA::Boolean is_truncatable, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual CORBA::Boolean is_a ( CORBA_Object *_collocated_tao_target_, const char * id, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_ValueMemberDef_ptr create_value_member ( CORBA_Object *_collocated_tao_target_, const char * id, const char * name, const char * version, IR_IDLType_ptr type, CORBA::Visibility access, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_AttributeDef_ptr create_attribute ( CORBA_Object *_collocated_tao_target_, const char * id, const char * name, const char * version, IR_IDLType_ptr type, IR_AttributeMode mode, const IR_ExceptionDefSeq & get_exceptions, const IR_ExceptionDefSeq & put_exceptions, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_OperationDef_ptr create_operation ( CORBA_Object *_collocated_tao_target_, const char * id, const char * name, const char * version, IR_IDLType_ptr result, IR_OperationMode mode, const IR_ParDescriptionSeq & params, const IR_ExceptionDefSeq & exceptions, const IR_ContextIdSeq & contexts, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class ValueDef_tie : public ValueDef { public: ValueDef_tie (T &t); // the T& ctor ValueDef_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA ValueDef_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag ValueDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~ValueDef_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); IR_InterfaceDefSeq * supported_interfaces ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void supported_interfaces ( const IR_InterfaceDefSeq & supported_interfaces, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_InitializerSeq * initializers ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void initializers ( const IR_InitializerSeq & initializers, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ValueDef_ptr base_value ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void base_value ( IR_ValueDef_ptr base_value, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ValueDefSeq * abstract_base_values ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void abstract_base_values ( const IR_ValueDefSeq & abstract_base_values, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::Boolean is_abstract ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void is_abstract ( CORBA::Boolean is_abstract, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::Boolean is_custom ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void is_custom ( CORBA::Boolean is_custom, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::Boolean is_truncatable ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void is_truncatable ( CORBA::Boolean is_truncatable, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::Boolean is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ValueMemberDef_ptr create_value_member ( const char * id, const char * name, const char * version, IR_IDLType_ptr type, CORBA::Visibility access, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_AttributeDef_ptr create_attribute ( const char * id, const char * name, const char * version, IR_IDLType_ptr type, IR_AttributeMode mode, const IR_ExceptionDefSeq & get_exceptions, const IR_ExceptionDefSeq & put_exceptions, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_OperationDef_ptr create_operation ( const char * id, const char * name, const char * version, IR_IDLType_ptr result, IR_OperationMode mode, const IR_ParDescriptionSeq & params, const IR_ExceptionDefSeq & exceptions, const IR_ContextIdSeq & contexts, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained_ptr lookup ( const char * search_name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ContainedSeq * contents ( IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ContainedSeq * lookup_name ( const char * search_name, CORBA::Long levels_to_search, IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container::DescriptionSeq * describe_contents ( IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Long max_returned_objs, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ModuleDef_ptr create_module ( const char * id, const char * name, const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ConstantDef_ptr create_constant ( const char * id, const char * name, const char * version, IR_IDLType_ptr type, const CORBA::Any & value, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_StructDef_ptr create_struct ( const char * id, const char * name, const char * version, const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_UnionDef_ptr create_union ( const char * id, const char * name, const char * version, IR_IDLType_ptr discriminator_type, const IR_UnionMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_EnumDef_ptr create_enum ( const char * id, const char * name, const char * version, const IR_EnumMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_AliasDef_ptr create_alias ( const char * id, const char * name, const char * version, IR_IDLType_ptr original_type, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_InterfaceDef_ptr create_interface ( const char * id, const char * name, const char * version, const IR_InterfaceDefSeq & base_interfaces, CORBA::Boolean is_abstract, CORBA::Boolean is_local, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ValueDef_ptr create_value ( const char * id, const char * name, const char * version, CORBA::Boolean is_custom, CORBA::Boolean is_abstract, IR_ValueDef_ptr base_value, CORBA::Boolean is_truncatable, const IR_ValueDefSeq & abstract_base_values, const IR_InterfaceDefSeq & supported_interfaces, const IR_InitializerSeq & initializers, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ValueBoxDef_ptr create_value_box ( const char * id, const char * name, const char * version, IR_IDLType_ptr original_type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ExceptionDef_ptr create_exception ( const char * id, const char * name, const char * version, const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_NativeDef_ptr create_native ( const char * id, const char * name, const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * id ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void id ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void name ( const char * name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * version ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void version ( const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container_ptr defined_in ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * absolute_name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Repository_ptr containing_repository ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained::Description * describe ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void move ( IR_Container_ptr new_container, const char * new_name, const char * new_version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::TypeCode_ptr type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed ValueDef_tie (const ValueDef_tie &); void operator= (const ValueDef_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class ValueBoxDef; typedef ValueBoxDef *ValueBoxDef_ptr; // Forward Classes Declaration class _TAO_ValueBoxDef_ThruPOA_Proxy_Impl; class _TAO_ValueBoxDef_Strategized_Proxy_Broker; class ValueBoxDef : public virtual TypedefDef { protected: ValueBoxDef (void); public: ValueBoxDef (const ValueBoxDef& rhs); virtual ~ValueBoxDef (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_ValueBoxDef *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; virtual IR_IDLType_ptr original_type_def ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_original_type_def_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void original_type_def ( IR_IDLType_ptr original_type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_original_type_def_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _get_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_defined_in_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_absolute_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_containing_repository_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void move_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_type_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. class TAO_ServerRequestInfo_IR_ValueBoxDef_original_type_def_get : public TAO_ServerRequestInfo { public: friend class POA_IR::ValueBoxDef; TAO_ServerRequestInfo_IR_ValueBoxDef_original_type_def_get ( TAO_ServerRequest &_tao_server_request, POA_IR::ValueBoxDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ValueBoxDef_original_type_def_get (const TAO_ServerRequestInfo_IR_ValueBoxDef_original_type_def_get &); void operator= (const TAO_ServerRequestInfo_IR_ValueBoxDef_original_type_def_get &); private: POA_IR::ValueBoxDef *_tao_impl; void result (IR::IDLType_ptr result); // update the result IR_IDLType_ptr _result; }; class TAO_ServerRequestInfo_IR_ValueBoxDef_original_type_def_set : public TAO_ServerRequestInfo { public: friend class POA_IR::ValueBoxDef; TAO_ServerRequestInfo_IR_ValueBoxDef_original_type_def_set ( TAO_ServerRequest &_tao_server_request, POA_IR::ValueBoxDef *tao_impl , IR_IDLType_ptr original_type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ValueBoxDef_original_type_def_set (const TAO_ServerRequestInfo_IR_ValueBoxDef_original_type_def_set &); void operator= (const TAO_ServerRequestInfo_IR_ValueBoxDef_original_type_def_set &); private: POA_IR::ValueBoxDef *_tao_impl; IR_IDLType_ptr original_type_def_; }; #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_ValueBoxDef_Strategized_Proxy_Broker : public virtual _TAO_ValueBoxDef_Proxy_Broker { public: _TAO_ValueBoxDef_Strategized_Proxy_Broker (void); virtual ~_TAO_ValueBoxDef_Strategized_Proxy_Broker (void); virtual _TAO_ValueBoxDef_Proxy_Impl &select_proxy ( IR_ValueBoxDef *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_ValueBoxDef_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_ValueBoxDef_Strategized_Proxy_Broker *the_TAO_ValueBoxDef_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_ValueBoxDef_ThruPOA_Proxy_Impl : public virtual _TAO_ValueBoxDef_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual ::POA_IR::_TAO_TypedefDef_ThruPOA_Proxy_Impl { public: _TAO_ValueBoxDef_ThruPOA_Proxy_Impl (void); virtual ~_TAO_ValueBoxDef_ThruPOA_Proxy_Impl (void) { } virtual IR_IDLType_ptr original_type_def ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void original_type_def ( CORBA_Object *_collocated_tao_target_, IR_IDLType_ptr original_type_def, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class ValueBoxDef_tie : public ValueBoxDef { public: ValueBoxDef_tie (T &t); // the T& ctor ValueBoxDef_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA ValueBoxDef_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag ValueBoxDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~ValueBoxDef_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); IR_IDLType_ptr original_type_def ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void original_type_def ( IR_IDLType_ptr original_type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * id ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void id ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void name ( const char * name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * version ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void version ( const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container_ptr defined_in ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * absolute_name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Repository_ptr containing_repository ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained::Description * describe ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void move ( IR_Container_ptr new_container, const char * new_name, const char * new_version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::TypeCode_ptr type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed ValueBoxDef_tie (const ValueBoxDef_tie &); void operator= (const ValueBoxDef_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class ProvidesDef; typedef ProvidesDef *ProvidesDef_ptr; // Forward Classes Declaration class _TAO_ProvidesDef_ThruPOA_Proxy_Impl; class _TAO_ProvidesDef_Strategized_Proxy_Broker; class ProvidesDef : public virtual Contained { protected: ProvidesDef (void); public: ProvidesDef (const ProvidesDef& rhs); virtual ~ProvidesDef (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_ProvidesDef *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; virtual IR_InterfaceDef_ptr interface_type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_interface_type_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _get_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_defined_in_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_absolute_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_containing_repository_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void move_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. class TAO_ServerRequestInfo_IR_ProvidesDef_interface_type_get : public TAO_ServerRequestInfo { public: friend class POA_IR::ProvidesDef; TAO_ServerRequestInfo_IR_ProvidesDef_interface_type_get ( TAO_ServerRequest &_tao_server_request, POA_IR::ProvidesDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ProvidesDef_interface_type_get (const TAO_ServerRequestInfo_IR_ProvidesDef_interface_type_get &); void operator= (const TAO_ServerRequestInfo_IR_ProvidesDef_interface_type_get &); private: POA_IR::ProvidesDef *_tao_impl; void result (IR::InterfaceDef_ptr result); // update the result IR_InterfaceDef_ptr _result; }; #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_ProvidesDef_Strategized_Proxy_Broker : public virtual _TAO_ProvidesDef_Proxy_Broker { public: _TAO_ProvidesDef_Strategized_Proxy_Broker (void); virtual ~_TAO_ProvidesDef_Strategized_Proxy_Broker (void); virtual _TAO_ProvidesDef_Proxy_Impl &select_proxy ( IR_ProvidesDef *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_ProvidesDef_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_ProvidesDef_Strategized_Proxy_Broker *the_TAO_ProvidesDef_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_ProvidesDef_ThruPOA_Proxy_Impl : public virtual _TAO_ProvidesDef_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual ::POA_IR::_TAO_Contained_ThruPOA_Proxy_Impl { public: _TAO_ProvidesDef_ThruPOA_Proxy_Impl (void); virtual ~_TAO_ProvidesDef_ThruPOA_Proxy_Impl (void) { } virtual IR_InterfaceDef_ptr interface_type ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class ProvidesDef_tie : public ProvidesDef { public: ProvidesDef_tie (T &t); // the T& ctor ProvidesDef_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA ProvidesDef_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag ProvidesDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~ProvidesDef_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); IR_InterfaceDef_ptr interface_type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * id ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void id ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void name ( const char * name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * version ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void version ( const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container_ptr defined_in ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * absolute_name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Repository_ptr containing_repository ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained::Description * describe ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void move ( IR_Container_ptr new_container, const char * new_name, const char * new_version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed ProvidesDef_tie (const ProvidesDef_tie &); void operator= (const ProvidesDef_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class UsesDef; typedef UsesDef *UsesDef_ptr; // Forward Classes Declaration class _TAO_UsesDef_ThruPOA_Proxy_Impl; class _TAO_UsesDef_Strategized_Proxy_Broker; class UsesDef : public virtual Contained { protected: UsesDef (void); public: UsesDef (const UsesDef& rhs); virtual ~UsesDef (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_UsesDef *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; virtual IR_InterfaceDef_ptr interface_type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_interface_type_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual CORBA::Boolean is_multiple ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_is_multiple_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _get_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_defined_in_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_absolute_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_containing_repository_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void move_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. class TAO_ServerRequestInfo_IR_UsesDef_interface_type_get : public TAO_ServerRequestInfo { public: friend class POA_IR::UsesDef; TAO_ServerRequestInfo_IR_UsesDef_interface_type_get ( TAO_ServerRequest &_tao_server_request, POA_IR::UsesDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_UsesDef_interface_type_get (const TAO_ServerRequestInfo_IR_UsesDef_interface_type_get &); void operator= (const TAO_ServerRequestInfo_IR_UsesDef_interface_type_get &); private: POA_IR::UsesDef *_tao_impl; void result (IR::InterfaceDef_ptr result); // update the result IR_InterfaceDef_ptr _result; }; class TAO_ServerRequestInfo_IR_UsesDef_is_multiple_get : public TAO_ServerRequestInfo { public: friend class POA_IR::UsesDef; TAO_ServerRequestInfo_IR_UsesDef_is_multiple_get ( TAO_ServerRequest &_tao_server_request, POA_IR::UsesDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_UsesDef_is_multiple_get (const TAO_ServerRequestInfo_IR_UsesDef_is_multiple_get &); void operator= (const TAO_ServerRequestInfo_IR_UsesDef_is_multiple_get &); private: POA_IR::UsesDef *_tao_impl; void result (CORBA::Boolean result); // update the result CORBA::Boolean _result; }; #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_UsesDef_Strategized_Proxy_Broker : public virtual _TAO_UsesDef_Proxy_Broker { public: _TAO_UsesDef_Strategized_Proxy_Broker (void); virtual ~_TAO_UsesDef_Strategized_Proxy_Broker (void); virtual _TAO_UsesDef_Proxy_Impl &select_proxy ( IR_UsesDef *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_UsesDef_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_UsesDef_Strategized_Proxy_Broker *the_TAO_UsesDef_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_UsesDef_ThruPOA_Proxy_Impl : public virtual _TAO_UsesDef_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual ::POA_IR::_TAO_Contained_ThruPOA_Proxy_Impl { public: _TAO_UsesDef_ThruPOA_Proxy_Impl (void); virtual ~_TAO_UsesDef_ThruPOA_Proxy_Impl (void) { } virtual IR_InterfaceDef_ptr interface_type ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual CORBA::Boolean is_multiple ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class UsesDef_tie : public UsesDef { public: UsesDef_tie (T &t); // the T& ctor UsesDef_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA UsesDef_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag UsesDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~UsesDef_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); IR_InterfaceDef_ptr interface_type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::Boolean is_multiple ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * id ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void id ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void name ( const char * name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * version ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void version ( const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container_ptr defined_in ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * absolute_name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Repository_ptr containing_repository ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained::Description * describe ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void move ( IR_Container_ptr new_container, const char * new_name, const char * new_version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed UsesDef_tie (const UsesDef_tie &); void operator= (const UsesDef_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class EventDef; typedef EventDef *EventDef_ptr; // Forward Classes Declaration class _TAO_EventDef_ThruPOA_Proxy_Impl; class _TAO_EventDef_Strategized_Proxy_Broker; class EventDef : public virtual Contained { protected: EventDef (void); public: EventDef (const EventDef& rhs); virtual ~EventDef (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_EventDef *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; virtual CORBA::Boolean is_a ( const char * event_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void is_a_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_ValueDef_ptr event ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_event_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _get_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_defined_in_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_absolute_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_containing_repository_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void move_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. class TAO_ServerRequestInfo_IR_EventDef_is_a : public TAO_ServerRequestInfo { public: friend class POA_IR::EventDef; TAO_ServerRequestInfo_IR_EventDef_is_a ( TAO_ServerRequest &_tao_server_request, POA_IR::EventDef *tao_impl , const char * event_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_EventDef_is_a (const TAO_ServerRequestInfo_IR_EventDef_is_a &); void operator= (const TAO_ServerRequestInfo_IR_EventDef_is_a &); private: POA_IR::EventDef *_tao_impl; const char * event_id_; void result (CORBA::Boolean result); // update the result CORBA::Boolean _result; }; class TAO_ServerRequestInfo_IR_EventDef_event_get : public TAO_ServerRequestInfo { public: friend class POA_IR::EventDef; TAO_ServerRequestInfo_IR_EventDef_event_get ( TAO_ServerRequest &_tao_server_request, POA_IR::EventDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_EventDef_event_get (const TAO_ServerRequestInfo_IR_EventDef_event_get &); void operator= (const TAO_ServerRequestInfo_IR_EventDef_event_get &); private: POA_IR::EventDef *_tao_impl; void result (IR::ValueDef_ptr result); // update the result IR_ValueDef_ptr _result; }; #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_EventDef_Strategized_Proxy_Broker : public virtual _TAO_EventDef_Proxy_Broker { public: _TAO_EventDef_Strategized_Proxy_Broker (void); virtual ~_TAO_EventDef_Strategized_Proxy_Broker (void); virtual _TAO_EventDef_Proxy_Impl &select_proxy ( IR_EventDef *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_EventDef_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_EventDef_Strategized_Proxy_Broker *the_TAO_EventDef_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_EventDef_ThruPOA_Proxy_Impl : public virtual _TAO_EventDef_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual ::POA_IR::_TAO_Contained_ThruPOA_Proxy_Impl { public: _TAO_EventDef_ThruPOA_Proxy_Impl (void); virtual ~_TAO_EventDef_ThruPOA_Proxy_Impl (void) { } virtual CORBA::Boolean is_a ( CORBA_Object *_collocated_tao_target_, const char * event_id, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_ValueDef_ptr event ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class EventDef_tie : public EventDef { public: EventDef_tie (T &t); // the T& ctor EventDef_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA EventDef_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag EventDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~EventDef_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); CORBA::Boolean is_a ( const char * event_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ValueDef_ptr event ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * id ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void id ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void name ( const char * name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * version ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void version ( const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container_ptr defined_in ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * absolute_name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Repository_ptr containing_repository ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained::Description * describe ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void move ( IR_Container_ptr new_container, const char * new_name, const char * new_version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed EventDef_tie (const EventDef_tie &); void operator= (const EventDef_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class EmitsDef; typedef EmitsDef *EmitsDef_ptr; // Forward Classes Declaration class _TAO_EmitsDef_ThruPOA_Proxy_Impl; class _TAO_EmitsDef_Strategized_Proxy_Broker; class EmitsDef : public virtual EventDef { protected: EmitsDef (void); public: EmitsDef (const EmitsDef& rhs); virtual ~EmitsDef (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_EmitsDef *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; static void is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_event_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_defined_in_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_absolute_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_containing_repository_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void move_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_EmitsDef_Strategized_Proxy_Broker : public virtual _TAO_EmitsDef_Proxy_Broker { public: _TAO_EmitsDef_Strategized_Proxy_Broker (void); virtual ~_TAO_EmitsDef_Strategized_Proxy_Broker (void); virtual _TAO_EmitsDef_Proxy_Impl &select_proxy ( IR_EmitsDef *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_EmitsDef_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_EmitsDef_Strategized_Proxy_Broker *the_TAO_EmitsDef_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_EmitsDef_ThruPOA_Proxy_Impl : public virtual _TAO_EmitsDef_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual ::POA_IR::_TAO_EventDef_ThruPOA_Proxy_Impl { public: _TAO_EmitsDef_ThruPOA_Proxy_Impl (void); virtual ~_TAO_EmitsDef_ThruPOA_Proxy_Impl (void) { } }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class EmitsDef_tie : public EmitsDef { public: EmitsDef_tie (T &t); // the T& ctor EmitsDef_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA EmitsDef_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag EmitsDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~EmitsDef_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); CORBA::Boolean is_a ( const char * event_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ValueDef_ptr event ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * id ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void id ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void name ( const char * name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * version ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void version ( const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container_ptr defined_in ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * absolute_name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Repository_ptr containing_repository ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained::Description * describe ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void move ( IR_Container_ptr new_container, const char * new_name, const char * new_version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed EmitsDef_tie (const EmitsDef_tie &); void operator= (const EmitsDef_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class PublishesDef; typedef PublishesDef *PublishesDef_ptr; // Forward Classes Declaration class _TAO_PublishesDef_ThruPOA_Proxy_Impl; class _TAO_PublishesDef_Strategized_Proxy_Broker; class PublishesDef : public virtual EventDef { protected: PublishesDef (void); public: PublishesDef (const PublishesDef& rhs); virtual ~PublishesDef (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_PublishesDef *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; static void is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_event_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_defined_in_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_absolute_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_containing_repository_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void move_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_PublishesDef_Strategized_Proxy_Broker : public virtual _TAO_PublishesDef_Proxy_Broker { public: _TAO_PublishesDef_Strategized_Proxy_Broker (void); virtual ~_TAO_PublishesDef_Strategized_Proxy_Broker (void); virtual _TAO_PublishesDef_Proxy_Impl &select_proxy ( IR_PublishesDef *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_PublishesDef_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_PublishesDef_Strategized_Proxy_Broker *the_TAO_PublishesDef_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_PublishesDef_ThruPOA_Proxy_Impl : public virtual _TAO_PublishesDef_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual ::POA_IR::_TAO_EventDef_ThruPOA_Proxy_Impl { public: _TAO_PublishesDef_ThruPOA_Proxy_Impl (void); virtual ~_TAO_PublishesDef_ThruPOA_Proxy_Impl (void) { } }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class PublishesDef_tie : public PublishesDef { public: PublishesDef_tie (T &t); // the T& ctor PublishesDef_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA PublishesDef_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag PublishesDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~PublishesDef_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); CORBA::Boolean is_a ( const char * event_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ValueDef_ptr event ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * id ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void id ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void name ( const char * name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * version ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void version ( const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container_ptr defined_in ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * absolute_name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Repository_ptr containing_repository ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained::Description * describe ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void move ( IR_Container_ptr new_container, const char * new_name, const char * new_version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed PublishesDef_tie (const PublishesDef_tie &); void operator= (const PublishesDef_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class ConsumesDef; typedef ConsumesDef *ConsumesDef_ptr; // Forward Classes Declaration class _TAO_ConsumesDef_ThruPOA_Proxy_Impl; class _TAO_ConsumesDef_Strategized_Proxy_Broker; class ConsumesDef : public virtual EventDef { protected: ConsumesDef (void); public: ConsumesDef (const ConsumesDef& rhs); virtual ~ConsumesDef (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_ConsumesDef *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; static void is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_event_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_defined_in_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_absolute_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_containing_repository_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void move_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_ConsumesDef_Strategized_Proxy_Broker : public virtual _TAO_ConsumesDef_Proxy_Broker { public: _TAO_ConsumesDef_Strategized_Proxy_Broker (void); virtual ~_TAO_ConsumesDef_Strategized_Proxy_Broker (void); virtual _TAO_ConsumesDef_Proxy_Impl &select_proxy ( IR_ConsumesDef *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_ConsumesDef_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_ConsumesDef_Strategized_Proxy_Broker *the_TAO_ConsumesDef_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_ConsumesDef_ThruPOA_Proxy_Impl : public virtual _TAO_ConsumesDef_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual ::POA_IR::_TAO_EventDef_ThruPOA_Proxy_Impl { public: _TAO_ConsumesDef_ThruPOA_Proxy_Impl (void); virtual ~_TAO_ConsumesDef_ThruPOA_Proxy_Impl (void) { } }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class ConsumesDef_tie : public ConsumesDef { public: ConsumesDef_tie (T &t); // the T& ctor ConsumesDef_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA ConsumesDef_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag ConsumesDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~ConsumesDef_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); CORBA::Boolean is_a ( const char * event_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ValueDef_ptr event ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * id ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void id ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void name ( const char * name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * version ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void version ( const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container_ptr defined_in ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * absolute_name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Repository_ptr containing_repository ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained::Description * describe ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void move ( IR_Container_ptr new_container, const char * new_name, const char * new_version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed ConsumesDef_tie (const ConsumesDef_tie &); void operator= (const ConsumesDef_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class ComponentDef; typedef ComponentDef *ComponentDef_ptr; // Forward Classes Declaration class _TAO_ComponentDef_ThruPOA_Proxy_Impl; class _TAO_ComponentDef_Strategized_Proxy_Broker; class ComponentDef : public virtual InterfaceDef { protected: ComponentDef (void); public: ComponentDef (const ComponentDef& rhs); virtual ~ComponentDef (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_ComponentDef *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; virtual IR_InterfaceDefSeq * supported_interfaces ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_supported_interfaces_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void supported_interfaces ( const IR_InterfaceDefSeq & supported_interfaces, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _set_supported_interfaces_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_ComponentDef_ptr base_component ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_base_component_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_ProvidesDefSeq * provides_interfaces ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_provides_interfaces_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_UsesDefSeq * uses_interfaces ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_uses_interfaces_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_EmitsDefSeq * emits_events ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_emits_events_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_PublishesDefSeq * publishes_events ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_publishes_events_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_ConsumesDefSeq * consumes_events ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_consumes_events_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual CORBA::Boolean is_basic ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_is_basic_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_ProvidesDef_ptr create_provides ( const char * id, const char * name, const char * version, IR_InterfaceDef_ptr interface_type, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void create_provides_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_UsesDef_ptr create_uses ( const char * id, const char * name, const char * version, IR_InterfaceDef_ptr interface_type, CORBA::Boolean is_multiple, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void create_uses_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_EmitsDef_ptr create_emits ( const char * id, const char * name, const char * version, IR_ValueDef_ptr value, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void create_emits_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_PublishesDef_ptr create_publishes ( const char * id, const char * name, const char * version, IR_ValueDef_ptr value, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void create_publishes_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_ConsumesDef_ptr create_consumes ( const char * id, const char * name, const char * version, IR_ValueDef_ptr value, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void create_consumes_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _get_base_interfaces_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_base_interfaces_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_is_abstract_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_is_abstract_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_is_local_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_is_local_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_attribute_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_operation_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void lookup_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void contents_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void lookup_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_contents_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_module_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_constant_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_struct_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_union_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_enum_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_alias_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_interface_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_value_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_value_box_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_exception_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_native_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_defined_in_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_absolute_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_containing_repository_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void move_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_type_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. class TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_get : public TAO_ServerRequestInfo { public: friend class POA_IR::ComponentDef; TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_get ( TAO_ServerRequest &_tao_server_request, POA_IR::ComponentDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_get (const TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_get &); void operator= (const TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_get &); private: POA_IR::ComponentDef *_tao_impl; void result (IR::InterfaceDefSeq * result); // update the result IR_InterfaceDefSeq * _result; }; class TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_set : public TAO_ServerRequestInfo { public: friend class POA_IR::ComponentDef; TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_set ( TAO_ServerRequest &_tao_server_request, POA_IR::ComponentDef *tao_impl , const IR_InterfaceDefSeq & supported_interfaces, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_set (const TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_set &); void operator= (const TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_set &); private: POA_IR::ComponentDef *_tao_impl; const IR_InterfaceDefSeq & supported_interfaces_; }; class TAO_ServerRequestInfo_IR_ComponentDef_base_component_get : public TAO_ServerRequestInfo { public: friend class POA_IR::ComponentDef; TAO_ServerRequestInfo_IR_ComponentDef_base_component_get ( TAO_ServerRequest &_tao_server_request, POA_IR::ComponentDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ComponentDef_base_component_get (const TAO_ServerRequestInfo_IR_ComponentDef_base_component_get &); void operator= (const TAO_ServerRequestInfo_IR_ComponentDef_base_component_get &); private: POA_IR::ComponentDef *_tao_impl; void result (IR::ComponentDef_ptr result); // update the result IR_ComponentDef_ptr _result; }; class TAO_ServerRequestInfo_IR_ComponentDef_provides_interfaces_get : public TAO_ServerRequestInfo { public: friend class POA_IR::ComponentDef; TAO_ServerRequestInfo_IR_ComponentDef_provides_interfaces_get ( TAO_ServerRequest &_tao_server_request, POA_IR::ComponentDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ComponentDef_provides_interfaces_get (const TAO_ServerRequestInfo_IR_ComponentDef_provides_interfaces_get &); void operator= (const TAO_ServerRequestInfo_IR_ComponentDef_provides_interfaces_get &); private: POA_IR::ComponentDef *_tao_impl; void result (IR::ProvidesDefSeq * result); // update the result IR_ProvidesDefSeq * _result; }; class TAO_ServerRequestInfo_IR_ComponentDef_uses_interfaces_get : public TAO_ServerRequestInfo { public: friend class POA_IR::ComponentDef; TAO_ServerRequestInfo_IR_ComponentDef_uses_interfaces_get ( TAO_ServerRequest &_tao_server_request, POA_IR::ComponentDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ComponentDef_uses_interfaces_get (const TAO_ServerRequestInfo_IR_ComponentDef_uses_interfaces_get &); void operator= (const TAO_ServerRequestInfo_IR_ComponentDef_uses_interfaces_get &); private: POA_IR::ComponentDef *_tao_impl; void result (IR::UsesDefSeq * result); // update the result IR_UsesDefSeq * _result; }; class TAO_ServerRequestInfo_IR_ComponentDef_emits_events_get : public TAO_ServerRequestInfo { public: friend class POA_IR::ComponentDef; TAO_ServerRequestInfo_IR_ComponentDef_emits_events_get ( TAO_ServerRequest &_tao_server_request, POA_IR::ComponentDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ComponentDef_emits_events_get (const TAO_ServerRequestInfo_IR_ComponentDef_emits_events_get &); void operator= (const TAO_ServerRequestInfo_IR_ComponentDef_emits_events_get &); private: POA_IR::ComponentDef *_tao_impl; void result (IR::EmitsDefSeq * result); // update the result IR_EmitsDefSeq * _result; }; class TAO_ServerRequestInfo_IR_ComponentDef_publishes_events_get : public TAO_ServerRequestInfo { public: friend class POA_IR::ComponentDef; TAO_ServerRequestInfo_IR_ComponentDef_publishes_events_get ( TAO_ServerRequest &_tao_server_request, POA_IR::ComponentDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ComponentDef_publishes_events_get (const TAO_ServerRequestInfo_IR_ComponentDef_publishes_events_get &); void operator= (const TAO_ServerRequestInfo_IR_ComponentDef_publishes_events_get &); private: POA_IR::ComponentDef *_tao_impl; void result (IR::PublishesDefSeq * result); // update the result IR_PublishesDefSeq * _result; }; class TAO_ServerRequestInfo_IR_ComponentDef_consumes_events_get : public TAO_ServerRequestInfo { public: friend class POA_IR::ComponentDef; TAO_ServerRequestInfo_IR_ComponentDef_consumes_events_get ( TAO_ServerRequest &_tao_server_request, POA_IR::ComponentDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ComponentDef_consumes_events_get (const TAO_ServerRequestInfo_IR_ComponentDef_consumes_events_get &); void operator= (const TAO_ServerRequestInfo_IR_ComponentDef_consumes_events_get &); private: POA_IR::ComponentDef *_tao_impl; void result (IR::ConsumesDefSeq * result); // update the result IR_ConsumesDefSeq * _result; }; class TAO_ServerRequestInfo_IR_ComponentDef_is_basic_get : public TAO_ServerRequestInfo { public: friend class POA_IR::ComponentDef; TAO_ServerRequestInfo_IR_ComponentDef_is_basic_get ( TAO_ServerRequest &_tao_server_request, POA_IR::ComponentDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ComponentDef_is_basic_get (const TAO_ServerRequestInfo_IR_ComponentDef_is_basic_get &); void operator= (const TAO_ServerRequestInfo_IR_ComponentDef_is_basic_get &); private: POA_IR::ComponentDef *_tao_impl; void result (CORBA::Boolean result); // update the result CORBA::Boolean _result; }; class TAO_ServerRequestInfo_IR_ComponentDef_create_provides : public TAO_ServerRequestInfo { public: friend class POA_IR::ComponentDef; TAO_ServerRequestInfo_IR_ComponentDef_create_provides ( TAO_ServerRequest &_tao_server_request, POA_IR::ComponentDef *tao_impl , const char * id, const char * name, const char * version, IR_InterfaceDef_ptr interface_type, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ComponentDef_create_provides (const TAO_ServerRequestInfo_IR_ComponentDef_create_provides &); void operator= (const TAO_ServerRequestInfo_IR_ComponentDef_create_provides &); private: POA_IR::ComponentDef *_tao_impl; const char * id_; const char * name_; const char * version_; IR_InterfaceDef_ptr interface_type_; void result (IR::ProvidesDef_ptr result); // update the result IR_ProvidesDef_ptr _result; }; class TAO_ServerRequestInfo_IR_ComponentDef_create_uses : public TAO_ServerRequestInfo { public: friend class POA_IR::ComponentDef; TAO_ServerRequestInfo_IR_ComponentDef_create_uses ( TAO_ServerRequest &_tao_server_request, POA_IR::ComponentDef *tao_impl , const char * id, const char * name, const char * version, IR_InterfaceDef_ptr interface_type, const CORBA::Boolean & is_multiple, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ComponentDef_create_uses (const TAO_ServerRequestInfo_IR_ComponentDef_create_uses &); void operator= (const TAO_ServerRequestInfo_IR_ComponentDef_create_uses &); private: POA_IR::ComponentDef *_tao_impl; const char * id_; const char * name_; const char * version_; IR_InterfaceDef_ptr interface_type_; const CORBA::Boolean & is_multiple_; void result (IR::UsesDef_ptr result); // update the result IR_UsesDef_ptr _result; }; class TAO_ServerRequestInfo_IR_ComponentDef_create_emits : public TAO_ServerRequestInfo { public: friend class POA_IR::ComponentDef; TAO_ServerRequestInfo_IR_ComponentDef_create_emits ( TAO_ServerRequest &_tao_server_request, POA_IR::ComponentDef *tao_impl , const char * id, const char * name, const char * version, IR_ValueDef_ptr value, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ComponentDef_create_emits (const TAO_ServerRequestInfo_IR_ComponentDef_create_emits &); void operator= (const TAO_ServerRequestInfo_IR_ComponentDef_create_emits &); private: POA_IR::ComponentDef *_tao_impl; const char * id_; const char * name_; const char * version_; IR_ValueDef_ptr value_; void result (IR::EmitsDef_ptr result); // update the result IR_EmitsDef_ptr _result; }; class TAO_ServerRequestInfo_IR_ComponentDef_create_publishes : public TAO_ServerRequestInfo { public: friend class POA_IR::ComponentDef; TAO_ServerRequestInfo_IR_ComponentDef_create_publishes ( TAO_ServerRequest &_tao_server_request, POA_IR::ComponentDef *tao_impl , const char * id, const char * name, const char * version, IR_ValueDef_ptr value, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ComponentDef_create_publishes (const TAO_ServerRequestInfo_IR_ComponentDef_create_publishes &); void operator= (const TAO_ServerRequestInfo_IR_ComponentDef_create_publishes &); private: POA_IR::ComponentDef *_tao_impl; const char * id_; const char * name_; const char * version_; IR_ValueDef_ptr value_; void result (IR::PublishesDef_ptr result); // update the result IR_PublishesDef_ptr _result; }; class TAO_ServerRequestInfo_IR_ComponentDef_create_consumes : public TAO_ServerRequestInfo { public: friend class POA_IR::ComponentDef; TAO_ServerRequestInfo_IR_ComponentDef_create_consumes ( TAO_ServerRequest &_tao_server_request, POA_IR::ComponentDef *tao_impl , const char * id, const char * name, const char * version, IR_ValueDef_ptr value, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_ComponentDef_create_consumes (const TAO_ServerRequestInfo_IR_ComponentDef_create_consumes &); void operator= (const TAO_ServerRequestInfo_IR_ComponentDef_create_consumes &); private: POA_IR::ComponentDef *_tao_impl; const char * id_; const char * name_; const char * version_; IR_ValueDef_ptr value_; void result (IR::ConsumesDef_ptr result); // update the result IR_ConsumesDef_ptr _result; }; #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_ComponentDef_Strategized_Proxy_Broker : public virtual _TAO_ComponentDef_Proxy_Broker { public: _TAO_ComponentDef_Strategized_Proxy_Broker (void); virtual ~_TAO_ComponentDef_Strategized_Proxy_Broker (void); virtual _TAO_ComponentDef_Proxy_Impl &select_proxy ( IR_ComponentDef *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_ComponentDef_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_ComponentDef_Strategized_Proxy_Broker *the_TAO_ComponentDef_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_ComponentDef_ThruPOA_Proxy_Impl : public virtual _TAO_ComponentDef_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual ::POA_IR::_TAO_InterfaceDef_ThruPOA_Proxy_Impl { public: _TAO_ComponentDef_ThruPOA_Proxy_Impl (void); virtual ~_TAO_ComponentDef_ThruPOA_Proxy_Impl (void) { } virtual IR_InterfaceDefSeq * supported_interfaces ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual void supported_interfaces ( CORBA_Object *_collocated_tao_target_, const IR_InterfaceDefSeq & supported_interfaces, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_ComponentDef_ptr base_component ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_ProvidesDefSeq * provides_interfaces ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_UsesDefSeq * uses_interfaces ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_EmitsDefSeq * emits_events ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_PublishesDefSeq * publishes_events ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_ConsumesDefSeq * consumes_events ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual CORBA::Boolean is_basic ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_ProvidesDef_ptr create_provides ( CORBA_Object *_collocated_tao_target_, const char * id, const char * name, const char * version, IR_InterfaceDef_ptr interface_type, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_UsesDef_ptr create_uses ( CORBA_Object *_collocated_tao_target_, const char * id, const char * name, const char * version, IR_InterfaceDef_ptr interface_type, CORBA::Boolean is_multiple, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_EmitsDef_ptr create_emits ( CORBA_Object *_collocated_tao_target_, const char * id, const char * name, const char * version, IR_ValueDef_ptr value, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_PublishesDef_ptr create_publishes ( CORBA_Object *_collocated_tao_target_, const char * id, const char * name, const char * version, IR_ValueDef_ptr value, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_ConsumesDef_ptr create_consumes ( CORBA_Object *_collocated_tao_target_, const char * id, const char * name, const char * version, IR_ValueDef_ptr value, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class ComponentDef_tie : public ComponentDef { public: ComponentDef_tie (T &t); // the T& ctor ComponentDef_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA ComponentDef_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag ComponentDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~ComponentDef_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); IR_InterfaceDefSeq * supported_interfaces ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void supported_interfaces ( const IR_InterfaceDefSeq & supported_interfaces, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ComponentDef_ptr base_component ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ProvidesDefSeq * provides_interfaces ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_UsesDefSeq * uses_interfaces ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_EmitsDefSeq * emits_events ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_PublishesDefSeq * publishes_events ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ConsumesDefSeq * consumes_events ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::Boolean is_basic ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ProvidesDef_ptr create_provides ( const char * id, const char * name, const char * version, IR_InterfaceDef_ptr interface_type, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_UsesDef_ptr create_uses ( const char * id, const char * name, const char * version, IR_InterfaceDef_ptr interface_type, CORBA::Boolean is_multiple, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_EmitsDef_ptr create_emits ( const char * id, const char * name, const char * version, IR_ValueDef_ptr value, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_PublishesDef_ptr create_publishes ( const char * id, const char * name, const char * version, IR_ValueDef_ptr value, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ConsumesDef_ptr create_consumes ( const char * id, const char * name, const char * version, IR_ValueDef_ptr value, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_InterfaceDefSeq * base_interfaces ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void base_interfaces ( const IR_InterfaceDefSeq & base_interfaces, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::Boolean is_abstract ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void is_abstract ( CORBA::Boolean is_abstract, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::Boolean is_local ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void is_local ( CORBA::Boolean is_local, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::Boolean is_a ( const char * interface_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_AttributeDef_ptr create_attribute ( const char * id, const char * name, const char * version, IR_IDLType_ptr type, IR_AttributeMode mode, const IR_ExceptionDefSeq & get_exceptions, const IR_ExceptionDefSeq & put_exceptions, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_OperationDef_ptr create_operation ( const char * id, const char * name, const char * version, IR_IDLType_ptr result, IR_OperationMode mode, const IR_ParDescriptionSeq & params, const IR_ExceptionDefSeq & exceptions, const IR_ContextIdSeq & contexts, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained_ptr lookup ( const char * search_name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ContainedSeq * contents ( IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ContainedSeq * lookup_name ( const char * search_name, CORBA::Long levels_to_search, IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container::DescriptionSeq * describe_contents ( IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Long max_returned_objs, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ModuleDef_ptr create_module ( const char * id, const char * name, const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ConstantDef_ptr create_constant ( const char * id, const char * name, const char * version, IR_IDLType_ptr type, const CORBA::Any & value, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_StructDef_ptr create_struct ( const char * id, const char * name, const char * version, const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_UnionDef_ptr create_union ( const char * id, const char * name, const char * version, IR_IDLType_ptr discriminator_type, const IR_UnionMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_EnumDef_ptr create_enum ( const char * id, const char * name, const char * version, const IR_EnumMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_AliasDef_ptr create_alias ( const char * id, const char * name, const char * version, IR_IDLType_ptr original_type, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_InterfaceDef_ptr create_interface ( const char * id, const char * name, const char * version, const IR_InterfaceDefSeq & base_interfaces, CORBA::Boolean is_abstract, CORBA::Boolean is_local, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ValueDef_ptr create_value ( const char * id, const char * name, const char * version, CORBA::Boolean is_custom, CORBA::Boolean is_abstract, IR_ValueDef_ptr base_value, CORBA::Boolean is_truncatable, const IR_ValueDefSeq & abstract_base_values, const IR_InterfaceDefSeq & supported_interfaces, const IR_InitializerSeq & initializers, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ValueBoxDef_ptr create_value_box ( const char * id, const char * name, const char * version, IR_IDLType_ptr original_type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ExceptionDef_ptr create_exception ( const char * id, const char * name, const char * version, const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_NativeDef_ptr create_native ( const char * id, const char * name, const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * id ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void id ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void name ( const char * name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * version ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void version ( const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container_ptr defined_in ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * absolute_name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Repository_ptr containing_repository ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained::Description * describe ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void move ( IR_Container_ptr new_container, const char * new_name, const char * new_version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::TypeCode_ptr type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed ComponentDef_tie (const ComponentDef_tie &); void operator= (const ComponentDef_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class PrimaryKeyDef; typedef PrimaryKeyDef *PrimaryKeyDef_ptr; // Forward Classes Declaration class _TAO_PrimaryKeyDef_ThruPOA_Proxy_Impl; class _TAO_PrimaryKeyDef_Strategized_Proxy_Broker; class PrimaryKeyDef : public virtual Contained { protected: PrimaryKeyDef (void); public: PrimaryKeyDef (const PrimaryKeyDef& rhs); virtual ~PrimaryKeyDef (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_PrimaryKeyDef *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; virtual CORBA::Boolean is_a ( const char * primary_key_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void is_a_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_ValueDef_ptr primary_key ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_primary_key_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _get_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_defined_in_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_absolute_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_containing_repository_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void move_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. class TAO_ServerRequestInfo_IR_PrimaryKeyDef_is_a : public TAO_ServerRequestInfo { public: friend class POA_IR::PrimaryKeyDef; TAO_ServerRequestInfo_IR_PrimaryKeyDef_is_a ( TAO_ServerRequest &_tao_server_request, POA_IR::PrimaryKeyDef *tao_impl , const char * primary_key_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_PrimaryKeyDef_is_a (const TAO_ServerRequestInfo_IR_PrimaryKeyDef_is_a &); void operator= (const TAO_ServerRequestInfo_IR_PrimaryKeyDef_is_a &); private: POA_IR::PrimaryKeyDef *_tao_impl; const char * primary_key_id_; void result (CORBA::Boolean result); // update the result CORBA::Boolean _result; }; class TAO_ServerRequestInfo_IR_PrimaryKeyDef_primary_key_get : public TAO_ServerRequestInfo { public: friend class POA_IR::PrimaryKeyDef; TAO_ServerRequestInfo_IR_PrimaryKeyDef_primary_key_get ( TAO_ServerRequest &_tao_server_request, POA_IR::PrimaryKeyDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_PrimaryKeyDef_primary_key_get (const TAO_ServerRequestInfo_IR_PrimaryKeyDef_primary_key_get &); void operator= (const TAO_ServerRequestInfo_IR_PrimaryKeyDef_primary_key_get &); private: POA_IR::PrimaryKeyDef *_tao_impl; void result (IR::ValueDef_ptr result); // update the result IR_ValueDef_ptr _result; }; #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_PrimaryKeyDef_Strategized_Proxy_Broker : public virtual _TAO_PrimaryKeyDef_Proxy_Broker { public: _TAO_PrimaryKeyDef_Strategized_Proxy_Broker (void); virtual ~_TAO_PrimaryKeyDef_Strategized_Proxy_Broker (void); virtual _TAO_PrimaryKeyDef_Proxy_Impl &select_proxy ( IR_PrimaryKeyDef *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_PrimaryKeyDef_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_PrimaryKeyDef_Strategized_Proxy_Broker *the_TAO_PrimaryKeyDef_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_PrimaryKeyDef_ThruPOA_Proxy_Impl : public virtual _TAO_PrimaryKeyDef_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual ::POA_IR::_TAO_Contained_ThruPOA_Proxy_Impl { public: _TAO_PrimaryKeyDef_ThruPOA_Proxy_Impl (void); virtual ~_TAO_PrimaryKeyDef_ThruPOA_Proxy_Impl (void) { } virtual CORBA::Boolean is_a ( CORBA_Object *_collocated_tao_target_, const char * primary_key_id, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_ValueDef_ptr primary_key ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class PrimaryKeyDef_tie : public PrimaryKeyDef { public: PrimaryKeyDef_tie (T &t); // the T& ctor PrimaryKeyDef_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA PrimaryKeyDef_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag PrimaryKeyDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~PrimaryKeyDef_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); CORBA::Boolean is_a ( const char * primary_key_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ValueDef_ptr primary_key ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * id ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void id ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void name ( const char * name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * version ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void version ( const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container_ptr defined_in ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * absolute_name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Repository_ptr containing_repository ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained::Description * describe ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void move ( IR_Container_ptr new_container, const char * new_name, const char * new_version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed PrimaryKeyDef_tie (const PrimaryKeyDef_tie &); void operator= (const PrimaryKeyDef_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class FactoryDef; typedef FactoryDef *FactoryDef_ptr; // Forward Classes Declaration class _TAO_FactoryDef_ThruPOA_Proxy_Impl; class _TAO_FactoryDef_Strategized_Proxy_Broker; class FactoryDef : public virtual OperationDef { protected: FactoryDef (void); public: FactoryDef (const FactoryDef& rhs); virtual ~FactoryDef (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_FactoryDef *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; static void _get_result_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_result_def_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_result_def_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_params_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_params_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_mode_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_mode_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_contexts_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_contexts_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_exceptions_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_exceptions_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_defined_in_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_absolute_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_containing_repository_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void move_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_FactoryDef_Strategized_Proxy_Broker : public virtual _TAO_FactoryDef_Proxy_Broker { public: _TAO_FactoryDef_Strategized_Proxy_Broker (void); virtual ~_TAO_FactoryDef_Strategized_Proxy_Broker (void); virtual _TAO_FactoryDef_Proxy_Impl &select_proxy ( IR_FactoryDef *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_FactoryDef_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_FactoryDef_Strategized_Proxy_Broker *the_TAO_FactoryDef_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_FactoryDef_ThruPOA_Proxy_Impl : public virtual _TAO_FactoryDef_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual ::POA_IR::_TAO_OperationDef_ThruPOA_Proxy_Impl { public: _TAO_FactoryDef_ThruPOA_Proxy_Impl (void); virtual ~_TAO_FactoryDef_ThruPOA_Proxy_Impl (void) { } }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class FactoryDef_tie : public FactoryDef { public: FactoryDef_tie (T &t); // the T& ctor FactoryDef_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA FactoryDef_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag FactoryDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~FactoryDef_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); CORBA::TypeCode_ptr result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_IDLType_ptr result_def ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void result_def ( IR_IDLType_ptr result_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ParDescriptionSeq * params ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void params ( const IR_ParDescriptionSeq & params, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_OperationMode mode ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void mode ( IR_OperationMode mode, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ContextIdSeq * contexts ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void contexts ( const IR_ContextIdSeq & contexts, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ExceptionDefSeq * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void exceptions ( const IR_ExceptionDefSeq & exceptions, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * id ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void id ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void name ( const char * name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * version ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void version ( const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container_ptr defined_in ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * absolute_name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Repository_ptr containing_repository ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained::Description * describe ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void move ( IR_Container_ptr new_container, const char * new_name, const char * new_version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed FactoryDef_tie (const FactoryDef_tie &); void operator= (const FactoryDef_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class FinderDef; typedef FinderDef *FinderDef_ptr; // Forward Classes Declaration class _TAO_FinderDef_ThruPOA_Proxy_Impl; class _TAO_FinderDef_Strategized_Proxy_Broker; class FinderDef : public virtual OperationDef { protected: FinderDef (void); public: FinderDef (const FinderDef& rhs); virtual ~FinderDef (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_FinderDef *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; static void _get_result_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_result_def_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_result_def_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_params_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_params_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_mode_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_mode_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_contexts_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_contexts_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_exceptions_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_exceptions_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_defined_in_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_absolute_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_containing_repository_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void move_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_FinderDef_Strategized_Proxy_Broker : public virtual _TAO_FinderDef_Proxy_Broker { public: _TAO_FinderDef_Strategized_Proxy_Broker (void); virtual ~_TAO_FinderDef_Strategized_Proxy_Broker (void); virtual _TAO_FinderDef_Proxy_Impl &select_proxy ( IR_FinderDef *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_FinderDef_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_FinderDef_Strategized_Proxy_Broker *the_TAO_FinderDef_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_FinderDef_ThruPOA_Proxy_Impl : public virtual _TAO_FinderDef_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual ::POA_IR::_TAO_OperationDef_ThruPOA_Proxy_Impl { public: _TAO_FinderDef_ThruPOA_Proxy_Impl (void); virtual ~_TAO_FinderDef_ThruPOA_Proxy_Impl (void) { } }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class FinderDef_tie : public FinderDef { public: FinderDef_tie (T &t); // the T& ctor FinderDef_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA FinderDef_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag FinderDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~FinderDef_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); CORBA::TypeCode_ptr result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_IDLType_ptr result_def ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void result_def ( IR_IDLType_ptr result_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ParDescriptionSeq * params ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void params ( const IR_ParDescriptionSeq & params, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_OperationMode mode ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void mode ( IR_OperationMode mode, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ContextIdSeq * contexts ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void contexts ( const IR_ContextIdSeq & contexts, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ExceptionDefSeq * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void exceptions ( const IR_ExceptionDefSeq & exceptions, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * id ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void id ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void name ( const char * name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * version ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void version ( const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container_ptr defined_in ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * absolute_name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Repository_ptr containing_repository ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained::Description * describe ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void move ( IR_Container_ptr new_container, const char * new_name, const char * new_version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed FinderDef_tie (const FinderDef_tie &); void operator= (const FinderDef_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ class HomeDef; typedef HomeDef *HomeDef_ptr; // Forward Classes Declaration class _TAO_HomeDef_ThruPOA_Proxy_Impl; class _TAO_HomeDef_Strategized_Proxy_Broker; class HomeDef : public virtual InterfaceDef { protected: HomeDef (void); public: HomeDef (const HomeDef& rhs); virtual ~HomeDef (void); virtual CORBA::Boolean _is_a ( const char* logical_type_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void* _downcast ( const char* logical_type_id ); static void _is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _non_existent_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual void _dispatch ( TAO_ServerRequest &_tao_req, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); IR_HomeDef *_this ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual const char* _interface_repository_id (void) const; virtual IR_HomeDef_ptr base_home ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_base_home_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_ComponentDef_ptr managed_component ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_managed_component_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_PrimaryKeyDef_ptr primary_key ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_primary_key_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_FactoryDefSeq * factories ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_factories_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_FinderDefSeq * finders ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_finders_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual CORBA::Boolean is_basic ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void _get_is_basic_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_PrimaryKeyDef_ptr create_primary_key ( const char * id, const char * name, const char * version, IR_ValueDef_ptr primary_key, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void create_primary_key_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_FactoryDef_ptr create_factory ( const char * id, const char * name, const char * version, const IR_ParDescriptionSeq & params, const IR_ExceptionDefSeq & exceptions, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void create_factory_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual IR_FinderDef_ptr create_finder ( const char * id, const char * name, const char * version, const IR_ParDescriptionSeq & params, const IR_ExceptionDefSeq & exceptions, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )) = 0; static void create_finder_skel ( TAO_ServerRequest &_tao_req, void *_tao_obj, void *_tao_context, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); static void _get_base_interfaces_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_base_interfaces_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_is_abstract_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_is_abstract_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_is_local_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_is_local_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void is_a_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_attribute_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_operation_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void lookup_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void contents_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void lookup_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_contents_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_module_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_constant_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_struct_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_union_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_enum_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_alias_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_interface_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_value_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_value_box_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_exception_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void create_native_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_id_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _set_version_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_defined_in_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_absolute_name_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_containing_repository_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void describe_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void move_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_type_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void _get_def_kind_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); static void destroy_skel ( TAO_ServerRequest &req, void *obj, void *context, CORBA::Environment &env = TAO_default_environment () ); #if (TAO_HAS_INTERCEPTORS == 1) // Generation of interceptors related RequestInfo classes per operation. // This needed to be able to store the arguments, exceptions, contexts // and build the lists dynamically on demand so that unnecessary time overhead // of building these lists when they arent used is avoided. class TAO_ServerRequestInfo_IR_HomeDef_base_home_get : public TAO_ServerRequestInfo { public: friend class POA_IR::HomeDef; TAO_ServerRequestInfo_IR_HomeDef_base_home_get ( TAO_ServerRequest &_tao_server_request, POA_IR::HomeDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_HomeDef_base_home_get (const TAO_ServerRequestInfo_IR_HomeDef_base_home_get &); void operator= (const TAO_ServerRequestInfo_IR_HomeDef_base_home_get &); private: POA_IR::HomeDef *_tao_impl; void result (IR::HomeDef_ptr result); // update the result IR_HomeDef_ptr _result; }; class TAO_ServerRequestInfo_IR_HomeDef_managed_component_get : public TAO_ServerRequestInfo { public: friend class POA_IR::HomeDef; TAO_ServerRequestInfo_IR_HomeDef_managed_component_get ( TAO_ServerRequest &_tao_server_request, POA_IR::HomeDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_HomeDef_managed_component_get (const TAO_ServerRequestInfo_IR_HomeDef_managed_component_get &); void operator= (const TAO_ServerRequestInfo_IR_HomeDef_managed_component_get &); private: POA_IR::HomeDef *_tao_impl; void result (IR::ComponentDef_ptr result); // update the result IR_ComponentDef_ptr _result; }; class TAO_ServerRequestInfo_IR_HomeDef_primary_key_get : public TAO_ServerRequestInfo { public: friend class POA_IR::HomeDef; TAO_ServerRequestInfo_IR_HomeDef_primary_key_get ( TAO_ServerRequest &_tao_server_request, POA_IR::HomeDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_HomeDef_primary_key_get (const TAO_ServerRequestInfo_IR_HomeDef_primary_key_get &); void operator= (const TAO_ServerRequestInfo_IR_HomeDef_primary_key_get &); private: POA_IR::HomeDef *_tao_impl; void result (IR::PrimaryKeyDef_ptr result); // update the result IR_PrimaryKeyDef_ptr _result; }; class TAO_ServerRequestInfo_IR_HomeDef_factories_get : public TAO_ServerRequestInfo { public: friend class POA_IR::HomeDef; TAO_ServerRequestInfo_IR_HomeDef_factories_get ( TAO_ServerRequest &_tao_server_request, POA_IR::HomeDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_HomeDef_factories_get (const TAO_ServerRequestInfo_IR_HomeDef_factories_get &); void operator= (const TAO_ServerRequestInfo_IR_HomeDef_factories_get &); private: POA_IR::HomeDef *_tao_impl; void result (IR::FactoryDefSeq * result); // update the result IR_FactoryDefSeq * _result; }; class TAO_ServerRequestInfo_IR_HomeDef_finders_get : public TAO_ServerRequestInfo { public: friend class POA_IR::HomeDef; TAO_ServerRequestInfo_IR_HomeDef_finders_get ( TAO_ServerRequest &_tao_server_request, POA_IR::HomeDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_HomeDef_finders_get (const TAO_ServerRequestInfo_IR_HomeDef_finders_get &); void operator= (const TAO_ServerRequestInfo_IR_HomeDef_finders_get &); private: POA_IR::HomeDef *_tao_impl; void result (IR::FinderDefSeq * result); // update the result IR_FinderDefSeq * _result; }; class TAO_ServerRequestInfo_IR_HomeDef_is_basic_get : public TAO_ServerRequestInfo { public: friend class POA_IR::HomeDef; TAO_ServerRequestInfo_IR_HomeDef_is_basic_get ( TAO_ServerRequest &_tao_server_request, POA_IR::HomeDef *tao_impl , CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_HomeDef_is_basic_get (const TAO_ServerRequestInfo_IR_HomeDef_is_basic_get &); void operator= (const TAO_ServerRequestInfo_IR_HomeDef_is_basic_get &); private: POA_IR::HomeDef *_tao_impl; void result (CORBA::Boolean result); // update the result CORBA::Boolean _result; }; class TAO_ServerRequestInfo_IR_HomeDef_create_primary_key : public TAO_ServerRequestInfo { public: friend class POA_IR::HomeDef; TAO_ServerRequestInfo_IR_HomeDef_create_primary_key ( TAO_ServerRequest &_tao_server_request, POA_IR::HomeDef *tao_impl , const char * id, const char * name, const char * version, IR_ValueDef_ptr primary_key, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_HomeDef_create_primary_key (const TAO_ServerRequestInfo_IR_HomeDef_create_primary_key &); void operator= (const TAO_ServerRequestInfo_IR_HomeDef_create_primary_key &); private: POA_IR::HomeDef *_tao_impl; const char * id_; const char * name_; const char * version_; IR_ValueDef_ptr primary_key_; void result (IR::PrimaryKeyDef_ptr result); // update the result IR_PrimaryKeyDef_ptr _result; }; class TAO_ServerRequestInfo_IR_HomeDef_create_factory : public TAO_ServerRequestInfo { public: friend class POA_IR::HomeDef; TAO_ServerRequestInfo_IR_HomeDef_create_factory ( TAO_ServerRequest &_tao_server_request, POA_IR::HomeDef *tao_impl , const char * id, const char * name, const char * version, const IR_ParDescriptionSeq & params, const IR_ExceptionDefSeq & exceptions, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_HomeDef_create_factory (const TAO_ServerRequestInfo_IR_HomeDef_create_factory &); void operator= (const TAO_ServerRequestInfo_IR_HomeDef_create_factory &); private: POA_IR::HomeDef *_tao_impl; const char * id_; const char * name_; const char * version_; const IR_ParDescriptionSeq & params_; const IR_ExceptionDefSeq & exceptions_; void result (IR::FactoryDef_ptr result); // update the result IR_FactoryDef_ptr _result; }; class TAO_ServerRequestInfo_IR_HomeDef_create_finder : public TAO_ServerRequestInfo { public: friend class POA_IR::HomeDef; TAO_ServerRequestInfo_IR_HomeDef_create_finder ( TAO_ServerRequest &_tao_server_request, POA_IR::HomeDef *tao_impl , const char * id, const char * name, const char * version, const IR_ParDescriptionSeq & params, const IR_ExceptionDefSeq & exceptions, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); virtual Dynamic::ParameterList * arguments ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual Dynamic::ExceptionList * exceptions ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Any * result ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC ((CORBA::SystemException)); virtual char * target_most_derived_interface ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); virtual CORBA::Boolean target_is_a ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); private: TAO_ServerRequestInfo_IR_HomeDef_create_finder (const TAO_ServerRequestInfo_IR_HomeDef_create_finder &); void operator= (const TAO_ServerRequestInfo_IR_HomeDef_create_finder &); private: POA_IR::HomeDef *_tao_impl; const char * id_; const char * name_; const char * version_; const IR_ParDescriptionSeq & params_; const IR_ExceptionDefSeq & exceptions_; void result (IR::FinderDef_ptr result); // update the result IR_FinderDef_ptr _result; }; #endif /* TAO_HAS_INTERCEPTORS */ }; /////////////////////////////////////////////////////////////////////// // Strategized Proxy Broker Declaration // class _TAO_HomeDef_Strategized_Proxy_Broker : public virtual _TAO_HomeDef_Proxy_Broker { public: _TAO_HomeDef_Strategized_Proxy_Broker (void); virtual ~_TAO_HomeDef_Strategized_Proxy_Broker (void); virtual _TAO_HomeDef_Proxy_Impl &select_proxy ( IR_HomeDef *object, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () ); private: // Helper methods that takes care to create the proxy // as soon as their use is necessary. void create_proxy ( int strategy, CORBA::Environment &ACE_TRY_ENV ); private: // Caches the proxy implementations. The proxy implementation // are totally stateless, and those can be shared by all the // instances of a given IDL interface type. _TAO_HomeDef_Proxy_Impl *proxy_cache_[TAO_Collocation_Strategies::CS_LAST]; TAO_SYNCH_MUTEX mutex_; // This funxtion is used to get an handle to the unique instance // of the Strategized Proxy Broker that is available for a given // interface. public: static _TAO_HomeDef_Strategized_Proxy_Broker *the_TAO_HomeDef_Strategized_Proxy_Broker (void); }; // // End Strategized Proxy Broker Declaration /////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// // ThruPOA Impl. Declaration // class _TAO_HomeDef_ThruPOA_Proxy_Impl : public virtual _TAO_HomeDef_Proxy_Impl, public virtual TAO_ThruPOA_Object_Proxy_Impl, public virtual ::POA_IR::_TAO_InterfaceDef_ThruPOA_Proxy_Impl { public: _TAO_HomeDef_ThruPOA_Proxy_Impl (void); virtual ~_TAO_HomeDef_ThruPOA_Proxy_Impl (void) { } virtual IR_HomeDef_ptr base_home ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_ComponentDef_ptr managed_component ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_PrimaryKeyDef_ptr primary_key ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_FactoryDefSeq * factories ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_FinderDefSeq * finders ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual CORBA::Boolean is_basic ( CORBA_Object *_collocated_tao_target_, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_PrimaryKeyDef_ptr create_primary_key ( CORBA_Object *_collocated_tao_target_, const char * id, const char * name, const char * version, IR_ValueDef_ptr primary_key, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_FactoryDef_ptr create_factory ( CORBA_Object *_collocated_tao_target_, const char * id, const char * name, const char * version, const IR_ParDescriptionSeq & params, const IR_ExceptionDefSeq & exceptions, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); virtual IR_FinderDef_ptr create_finder ( CORBA_Object *_collocated_tao_target_, const char * id, const char * name, const char * version, const IR_ParDescriptionSeq & params, const IR_ExceptionDefSeq & exceptions, CORBA::Environment &ACE_TRY_ENV ) ACE_THROW_SPEC (( CORBA::SystemException )); }; // // ThruPOA Proxy Impl. Declaration /////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_USING_KEYWORD) // TIE class: Refer to CORBA v2.2, Section 20.34.4 template class HomeDef_tie : public HomeDef { public: HomeDef_tie (T &t); // the T& ctor HomeDef_tie (T &t, PortableServer::POA_ptr poa); // ctor taking a POA HomeDef_tie (T *tp, CORBA::Boolean release=1); // ctor taking pointer and an ownership flag HomeDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1); // ctor with T*, ownership flag and a POA ~HomeDef_tie (void); // dtor // TIE specific functions T *_tied_object (void); // return the underlying object void _tied_object (T &obj); // set the underlying object void _tied_object (T *obj, CORBA::Boolean release=1); // set the underlying object and the ownership flag CORBA::Boolean _is_owner (void); // do we own it void _is_owner (CORBA::Boolean b); // set the ownership // overridden ServantBase operations PortableServer::POA_ptr _default_POA ( CORBA::Environment &env = TAO_default_environment () ); IR_HomeDef_ptr base_home ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ComponentDef_ptr managed_component ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_PrimaryKeyDef_ptr primary_key ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_FactoryDefSeq * factories ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_FinderDefSeq * finders ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::Boolean is_basic ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_PrimaryKeyDef_ptr create_primary_key ( const char * id, const char * name, const char * version, IR_ValueDef_ptr primary_key, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_FactoryDef_ptr create_factory ( const char * id, const char * name, const char * version, const IR_ParDescriptionSeq & params, const IR_ExceptionDefSeq & exceptions, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_FinderDef_ptr create_finder ( const char * id, const char * name, const char * version, const IR_ParDescriptionSeq & params, const IR_ExceptionDefSeq & exceptions, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_InterfaceDefSeq * base_interfaces ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void base_interfaces ( const IR_InterfaceDefSeq & base_interfaces, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::Boolean is_abstract ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void is_abstract ( CORBA::Boolean is_abstract, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::Boolean is_local ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void is_local ( CORBA::Boolean is_local, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::Boolean is_a ( const char * interface_id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_AttributeDef_ptr create_attribute ( const char * id, const char * name, const char * version, IR_IDLType_ptr type, IR_AttributeMode mode, const IR_ExceptionDefSeq & get_exceptions, const IR_ExceptionDefSeq & put_exceptions, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_OperationDef_ptr create_operation ( const char * id, const char * name, const char * version, IR_IDLType_ptr result, IR_OperationMode mode, const IR_ParDescriptionSeq & params, const IR_ExceptionDefSeq & exceptions, const IR_ContextIdSeq & contexts, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained_ptr lookup ( const char * search_name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ContainedSeq * contents ( IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ContainedSeq * lookup_name ( const char * search_name, CORBA::Long levels_to_search, IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container::DescriptionSeq * describe_contents ( IR_DefinitionKind limit_type, CORBA::Boolean exclude_inherited, CORBA::Long max_returned_objs, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ModuleDef_ptr create_module ( const char * id, const char * name, const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ConstantDef_ptr create_constant ( const char * id, const char * name, const char * version, IR_IDLType_ptr type, const CORBA::Any & value, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_StructDef_ptr create_struct ( const char * id, const char * name, const char * version, const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_UnionDef_ptr create_union ( const char * id, const char * name, const char * version, IR_IDLType_ptr discriminator_type, const IR_UnionMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_EnumDef_ptr create_enum ( const char * id, const char * name, const char * version, const IR_EnumMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_AliasDef_ptr create_alias ( const char * id, const char * name, const char * version, IR_IDLType_ptr original_type, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_InterfaceDef_ptr create_interface ( const char * id, const char * name, const char * version, const IR_InterfaceDefSeq & base_interfaces, CORBA::Boolean is_abstract, CORBA::Boolean is_local, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ValueDef_ptr create_value ( const char * id, const char * name, const char * version, CORBA::Boolean is_custom, CORBA::Boolean is_abstract, IR_ValueDef_ptr base_value, CORBA::Boolean is_truncatable, const IR_ValueDefSeq & abstract_base_values, const IR_InterfaceDefSeq & supported_interfaces, const IR_InitializerSeq & initializers, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ValueBoxDef_ptr create_value_box ( const char * id, const char * name, const char * version, IR_IDLType_ptr original_type_def, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_ExceptionDef_ptr create_exception ( const char * id, const char * name, const char * version, const IR_StructMemberSeq & members, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_NativeDef_ptr create_native ( const char * id, const char * name, const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * id ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void id ( const char * id, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void name ( const char * name, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * version ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void version ( const char * version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Container_ptr defined_in ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); char * absolute_name ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Repository_ptr containing_repository ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_Contained::Description * describe ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void move ( IR_Container_ptr new_container, const char * new_name, const char * new_version, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); CORBA::TypeCode_ptr type ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); IR_DefinitionKind def_kind ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); void destroy ( CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ) ACE_THROW_SPEC (( CORBA::SystemException )); private: T *ptr_; PortableServer::POA_var poa_; CORBA::Boolean rel_; // copy and assignment are not allowed HomeDef_tie (const HomeDef_tie &); void operator= (const HomeDef_tie &); }; #endif /* ACE_HAS_USING_KEYWORD */ } TAO_NAMESPACE_CLOSE #include "InterfaceS_T.h" #if defined (__ACE_INLINE__) #include "InterfaceS.i" #endif /* defined INLINE */ #if defined(_MSC_VER) && (_MSC_VER >= 1200) #pragma warning(pop) #endif /* _MSC_VER */ #if defined (__BORLANDC__) #pragma option pop #endif /* __BORLANDC__ */ #include "ace/post.h" #endif /* ifndef TAO_IDL_INTERFACES_H */