diff options
Diffstat (limited to 'TAO')
-rw-r--r-- | TAO/orbsvcs/IFR_Service/Makefile.TypeCodeFactory | 2 | ||||
-rw-r--r-- | TAO/orbsvcs/IFR_Service/Repository_i.h | 1 | ||||
-rw-r--r-- | TAO/orbsvcs/IFR_Service/TCF_Loader.cpp | 71 | ||||
-rw-r--r-- | TAO/orbsvcs/IFR_Service/TCF_Loader.h | 35 | ||||
-rw-r--r-- | TAO/orbsvcs/IFR_Service/TypeCodeFactoryC.cpp | 81 | ||||
-rw-r--r-- | TAO/orbsvcs/IFR_Service/TypeCodeFactoryC.h | 318 | ||||
-rw-r--r-- | TAO/orbsvcs/IFR_Service/TypeCodeFactoryC.inl | 174 | ||||
-rw-r--r-- | TAO/orbsvcs/IFR_Service/TypeCodeFactory_DLL.bor | 2 | ||||
-rw-r--r-- | TAO/orbsvcs/IFR_Service/TypeCodeFactory_DLL.dsp | 14 | ||||
-rw-r--r-- | TAO/orbsvcs/IFR_Service/TypeCodeFactory_i.cpp | 32 | ||||
-rw-r--r-- | TAO/orbsvcs/IFR_Service/TypeCodeFactory_i.h | 31 | ||||
-rw-r--r-- | TAO/orbsvcs/IFR_Service/TypeCodeFactory_skel.cpp | 1702 | ||||
-rw-r--r-- | TAO/tao/Interface.pidl | 2 | ||||
-rw-r--r-- | TAO/tao/InterfaceC.cpp | 1794 | ||||
-rw-r--r-- | TAO/tao/InterfaceC.h | 532 | ||||
-rw-r--r-- | TAO/tao/InterfaceC.i | 236 | ||||
-rw-r--r-- | TAO/tao/PortableServer/POA_CORBA.h | 590 |
17 files changed, 701 insertions, 4916 deletions
diff --git a/TAO/orbsvcs/IFR_Service/Makefile.TypeCodeFactory b/TAO/orbsvcs/IFR_Service/Makefile.TypeCodeFactory index 26a3e1dfe53..794a4c097b8 100644 --- a/TAO/orbsvcs/IFR_Service/Makefile.TypeCodeFactory +++ b/TAO/orbsvcs/IFR_Service/Makefile.TypeCodeFactory @@ -19,7 +19,7 @@ LIB_UNCHECKED = $(LIBNAME).a SHLIB_UNCHECKED = $(LIBNAME).$(SOEXT) LSRC = \ - TypeCodeFactory_skel.cpp \ + TypeCodeFactoryC.cpp \ TypeCodeFactory_i.cpp \ TCF_Loader.cpp diff --git a/TAO/orbsvcs/IFR_Service/Repository_i.h b/TAO/orbsvcs/IFR_Service/Repository_i.h index e58193fc852..4aaefd74e69 100644 --- a/TAO/orbsvcs/IFR_Service/Repository_i.h +++ b/TAO/orbsvcs/IFR_Service/Repository_i.h @@ -34,6 +34,7 @@ #endif /* _MSC_VER */ #include "IFR_macro.h" +#include "TCF_Loader.h" class IFR_Servant_Factory; diff --git a/TAO/orbsvcs/IFR_Service/TCF_Loader.cpp b/TAO/orbsvcs/IFR_Service/TCF_Loader.cpp index 66324504b63..b24fd19c43a 100644 --- a/TAO/orbsvcs/IFR_Service/TCF_Loader.cpp +++ b/TAO/orbsvcs/IFR_Service/TCF_Loader.cpp @@ -1,7 +1,19 @@ /* -*- C++ -*- */ // $Id$ -#include "tao/ORB.h" +// ================================================================= +// +// = LIBRARY +// TAO/orbsvcs/TypeCodeFactory_DLL +// +// = FILENAME +// TCF_Loader.cpp +// +// = AUTHOR +// Jeff Parsons <parsons@cs.wustl.edu> +// +// ================================================================= + #include "TCF_Loader.h" #include "TypeCodeFactory_i.h" @@ -18,47 +30,26 @@ TCF_Loader::create_object (CORBA::ORB_ptr orb, CORBA::Environment &ACE_TRY_ENV) ACE_THROW_SPEC (()) { - ACE_TRY - { - CORBA::Object_var obj = - orb->resolve_initial_references ("RootPOA", - ACE_TRY_ENV); - ACE_TRY_CHECK; - - PortableServer::POA_var poa = - PortableServer::POA::_narrow (obj.in (), - ACE_TRY_ENV); - ACE_TRY_CHECK; - - PortableServer::POAManager_var mgr = - poa->the_POAManager (ACE_TRY_ENV); - ACE_TRY_CHECK; - - mgr->activate (ACE_TRY_ENV); - ACE_TRY_CHECK; - - TAO_TypeCodeFactory_i *servant = 0; - ACE_NEW_RETURN (servant, - TAO_TypeCodeFactory_i (), - CORBA::Object::_nil ()); - - PortableServer::ServantBase_var servant_var (servant); - obj = servant->_this (ACE_TRY_ENV); - ACE_TRY_CHECK; + CORBA::Object_ptr obj; + ACE_NEW_RETURN (obj, + TAO_TypeCodeFactory_i, + CORBA::Object::_nil ()); + return obj; +} - ACE_TRY_CHECK; +int +TCF_Loader::Initializer (void) +{ + ACE_Service_Config::static_svcs ()-> + insert (&ace_svc_desc_TCF_Loader); - return obj._retn (); - } - ACE_CATCHANY - { - ACE_PRINT_EXCEPTION (ACE_ANY_EXCEPTION, - "TCF_Loader::create_object"); - } - ACE_ENDTRY; - return CORBA::Object::_nil (); + return 0; } -// **************************************************************** - +ACE_STATIC_SVC_DEFINE (TCF_Loader, + ACE_TEXT ("TCF_Loader"), + ACE_SVC_OBJ_T, + &ACE_SVC_NAME (TCF_Loader), + ACE_Service_Type::DELETE_THIS | ACE_Service_Type::DELETE_OBJ, + 0) ACE_FACTORY_DEFINE (TCF, TCF_Loader) diff --git a/TAO/orbsvcs/IFR_Service/TCF_Loader.h b/TAO/orbsvcs/IFR_Service/TCF_Loader.h index 72ddd6d0bdd..3827f10af12 100644 --- a/TAO/orbsvcs/IFR_Service/TCF_Loader.h +++ b/TAO/orbsvcs/IFR_Service/TCF_Loader.h @@ -1,4 +1,5 @@ // -*- C++ -*- + // $Id$ // ============================================================================ @@ -16,9 +17,15 @@ #ifndef TAO_OBJECT_LOADER_TCF_LOADER_H #define TAO_OBJECT_LOADER_TCF_LOADER_H +#include "ace/pre.h" -#include "tao/Object_Loader.h" #include "TCF_Export.h" +#include "tao/Object_Loader.h" +#include "ace/Service_Config.h" + +#if !defined (ACE_LACKS_PRAGMA_ONCE) +# pragma once +#endif /* ACE_LACKS_PRAGMA_ONCE */ class TCF_Export TCF_Loader : public TAO_Object_Loader { @@ -31,7 +38,7 @@ class TCF_Export TCF_Loader : public TAO_Object_Loader // public: TCF_Loader (void); - // ctor + // Constructor. virtual CORBA::Object_ptr create_object (CORBA::ORB_ptr orb, int argc, @@ -40,9 +47,31 @@ public: ACE_THROW_SPEC (()); // Overload the base class method to create a new instance // of a TypeCodeFactory object. + + static int Initializer (void); + // Used to force the initialization of the ORB code. }; -// ACE_STATIC_SVC_DECLARE (TCF_Loader) +ACE_STATIC_SVC_DECLARE (TCF_Loader) ACE_FACTORY_DECLARE (TCF, TCF_Loader) +#if defined(ACE_HAS_BROKEN_STATIC_CONSTRUCTORS) + +typedef int (*TAO_Module_Initializer) (void); + +static TAO_Module_Initializer +TAO_Requires_TCF_Initializer = &TCF_Loader::Initializer; + +#else + +static int +TAO_Requires_TCF_Initializer = TCF_Loader::Initializer (); + +#endif /* ACE_HAS_BROKEN_STATIC_CONSTRUCTORS */ + +#define TAO_TYPECODEFACTORY_SAFE_INCLUDE +#include "TypeCodeFactoryC.h" +#undef TAO_TYPECODEFACTORY_SAFE_INCLUDE + +#include "ace/post.h" #endif /* TAO_OBJECT_LOADER_TCF_LOADER_H */ diff --git a/TAO/orbsvcs/IFR_Service/TypeCodeFactoryC.cpp b/TAO/orbsvcs/IFR_Service/TypeCodeFactoryC.cpp new file mode 100644 index 00000000000..7501b90f383 --- /dev/null +++ b/TAO/orbsvcs/IFR_Service/TypeCodeFactoryC.cpp @@ -0,0 +1,81 @@ +/* -*- C++ -*- $Id$ */ + +// ****** Code generated by the The ACE ORB (TAO) IDL Compiler ******* +// TAO and the TAO IDL Compiler have been developed by the Center for +// Distributed Object Computing at Washington University, St. Louis. +// +// Information about TAO is available at: +// http://www.cs.wustl.edu/~schmidt/TAO.html + +#include "TCF_Loader.h" + +#if !defined (__ACE_INLINE__) +#include "TypeCodeFactoryC.inl" +#endif /* !defined INLINE */ + +// Default constructor. +CORBA::TypeCodeFactory::TypeCodeFactory (void) +{} + +// Destructor. +CORBA::TypeCodeFactory::~TypeCodeFactory (void) +{} + +CORBA::TypeCodeFactory_ptr CORBA::TypeCodeFactory::_narrow ( + CORBA::Object_ptr obj, + CORBA::Environment &ACE_TRY_ENV + ) +{ + return CORBA::TypeCodeFactory::_unchecked_narrow (obj, ACE_TRY_ENV); +} + +CORBA::TypeCodeFactory_ptr CORBA::TypeCodeFactory::_unchecked_narrow ( + CORBA::Object_ptr obj, + CORBA::Environment & + ) +{ + if (CORBA::is_nil (obj)) + return CORBA::TypeCodeFactory::_nil (); + + return ACE_reinterpret_cast ( + CORBA::TypeCodeFactory_ptr, + obj->_tao_QueryInterface ( + ACE_reinterpret_cast ( + ptr_arith_t, + &CORBA::TypeCodeFactory::_narrow + ) + ) + ); +} + +CORBA::TypeCodeFactory_ptr +CORBA::TypeCodeFactory::_duplicate (CORBA::TypeCodeFactory_ptr obj) +{ + if (!CORBA::is_nil (obj)) + obj->_add_ref (); + return obj; +} + +void * +CORBA::TypeCodeFactory::_tao_QueryInterface (ptr_arith_t type) +{ + void *retv = 0; + if (type == ACE_reinterpret_cast + (ptr_arith_t, + &CORBA_TypeCodeFactory::_narrow)) + retv = ACE_reinterpret_cast (void*, this); + else if (type == ACE_reinterpret_cast (ptr_arith_t, &CORBA::Object::_narrow)) + retv = ACE_reinterpret_cast (void *, + ACE_static_cast (CORBA::Object_ptr, this)); + + if (retv) + this->_add_ref (); + return retv; +} + +const char * +CORBA::TypeCodeFactory::_interface_repository_id (void) const +{ + return "IDL:CORBA/TypeCodeFactory:1.0"; +} + diff --git a/TAO/orbsvcs/IFR_Service/TypeCodeFactoryC.h b/TAO/orbsvcs/IFR_Service/TypeCodeFactoryC.h new file mode 100644 index 00000000000..1d7a8e1e373 --- /dev/null +++ b/TAO/orbsvcs/IFR_Service/TypeCodeFactoryC.h @@ -0,0 +1,318 @@ +/* -*- C++ -*- $Id$ */ + +// ****** Code generated by the The ACE ORB (TAO) IDL Compiler ******* +// TAO and the TAO IDL Compiler have been developed by the Center for +// Distributed Object Computing at Washington University, St. Louis. +// +// Information about TAO is available at: +// http://www.cs.wustl.edu/~schmidt/TAO.html + +#ifndef TAO_TYPECODEFACTORYC_H +#define TAO_TYPECODEFACTORYC_H + +#ifndef TAO_TYPECODEFACTORY_SAFE_INCLUDE +#error "You should not include TypeCodeFactoryC.h directly, use TCF_Loader.h" +#endif /* !TAO_TYPECODEFACTORY_SAFE_INCLUDE */ + +#include "ace/pre.h" +#include "tao/corba.h" + +#if !defined (ACE_LACKS_PRAGMA_ONCE) +# pragma once +#endif /* ACE_LACKS_PRAGMA_ONCE */ + +#include "TCF_Export.h" + +#if defined (TAO_EXPORT_NESTED_CLASSES) +# if defined (TAO_EXPORT_NESTED_MACRO) +# undef TAO_EXPORT_NESTED_MACRO +# endif /* defined (TAO_EXPORT_NESTED_MACRO) */ +# define TAO_EXPORT_NESTED_MACRO TCF_Export +#endif /* TAO_EXPORT_NESTED_CLASSES */ + +#if defined(_MSC_VER) +#if (_MSC_VER >= 1200) +#pragma warning(push) +#endif /* _MSC_VER >= 1200 */ +#pragma warning(disable:4250) +#endif /* _MSC_VER */ + +class TCF_Export CORBA_TypeCodeFactory_var : public TAO_Base_var +{ +public: + CORBA_TypeCodeFactory_var (void); // default constructor + CORBA_TypeCodeFactory_var (CORBA_TypeCodeFactory_ptr); + CORBA_TypeCodeFactory_var (const CORBA_TypeCodeFactory_var &); // copy constructor + ~CORBA_TypeCodeFactory_var (void); // destructor + + CORBA_TypeCodeFactory_var &operator= (CORBA_TypeCodeFactory_ptr); + CORBA_TypeCodeFactory_var &operator= (const CORBA_TypeCodeFactory_var &); + CORBA_TypeCodeFactory_ptr operator-> (void) const; + + operator const CORBA_TypeCodeFactory_ptr &() const; + operator CORBA_TypeCodeFactory_ptr &(); + // in, inout, out, _retn + CORBA_TypeCodeFactory_ptr in (void) const; + CORBA_TypeCodeFactory_ptr &inout (void); + CORBA_TypeCodeFactory_ptr &out (void); + CORBA_TypeCodeFactory_ptr _retn (void); + CORBA_TypeCodeFactory_ptr ptr (void) const; + +private: + CORBA_TypeCodeFactory_ptr ptr_; + // Unimplemented - prevents widening assignment. + CORBA_TypeCodeFactory_var (const TAO_Base_var &rhs); + CORBA_TypeCodeFactory_var &operator= (const TAO_Base_var &rhs); +}; + +class TCF_Export CORBA_TypeCodeFactory_out +{ +public: + CORBA_TypeCodeFactory_out (CORBA_TypeCodeFactory_ptr &); + CORBA_TypeCodeFactory_out (CORBA_TypeCodeFactory_var &); + CORBA_TypeCodeFactory_out (const CORBA_TypeCodeFactory_out &); + CORBA_TypeCodeFactory_out &operator= (const CORBA_TypeCodeFactory_out &); + CORBA_TypeCodeFactory_out &operator= (const CORBA_TypeCodeFactory_var &); + CORBA_TypeCodeFactory_out &operator= (CORBA_TypeCodeFactory_ptr); + operator CORBA_TypeCodeFactory_ptr &(); + CORBA_TypeCodeFactory_ptr &ptr (void); + CORBA_TypeCodeFactory_ptr operator-> (void); + +private: + CORBA_TypeCodeFactory_ptr &ptr_; +}; + +class TCF_Export CORBA_TypeCodeFactory : public virtual ACE_CORBA_1 (Object) + { + public: + #if !defined(__GNUC__) || !defined (ACE_HAS_GNUG_PRE_2_8) + typedef CORBA_TypeCodeFactory_ptr _ptr_type; + typedef CORBA_TypeCodeFactory_var _var_type; + #endif /* ! __GNUC__ || g++ >= 2.8 */ + + // the static operations + static CORBA_TypeCodeFactory_ptr _duplicate (CORBA_TypeCodeFactory_ptr obj); + static CORBA_TypeCodeFactory_ptr _narrow ( + CORBA::Object_ptr obj, + CORBA::Environment &env = + TAO_default_environment () + ); + static CORBA_TypeCodeFactory_ptr _unchecked_narrow ( + CORBA::Object_ptr obj, + CORBA::Environment &env = + TAO_default_environment () + ); + static CORBA_TypeCodeFactory_ptr _nil (void) + { + return (CORBA_TypeCodeFactory_ptr)0; + } + + virtual CORBA::TypeCode_ptr create_struct_tc ( + const char * id, + const char * name, + const IR_StructMemberSeq & members, + CORBA::Environment &ACE_TRY_ENV = + TAO_default_environment () + ) + ACE_THROW_SPEC (( + CORBA::SystemException + )) = 0; + + virtual CORBA::TypeCode_ptr create_union_tc ( + const char * id, + const char * name, + CORBA::TypeCode_ptr discriminator_type, + const IR_UnionMemberSeq & members, + CORBA::Environment &ACE_TRY_ENV = + TAO_default_environment () + ) + ACE_THROW_SPEC (( + CORBA::SystemException + )) = 0; + + virtual CORBA::TypeCode_ptr create_enum_tc ( + const char * id, + const char * name, + const IR_EnumMemberSeq & members, + CORBA::Environment &ACE_TRY_ENV = + TAO_default_environment () + ) + ACE_THROW_SPEC (( + CORBA::SystemException + )) = 0; + + virtual CORBA::TypeCode_ptr create_alias_tc ( + const char * id, + const char * name, + CORBA::TypeCode_ptr original_type, + CORBA::Environment &ACE_TRY_ENV = + TAO_default_environment () + ) + ACE_THROW_SPEC (( + CORBA::SystemException + )) = 0; + + virtual CORBA::TypeCode_ptr create_exception_tc ( + const char * id, + const char * name, + const IR_StructMemberSeq & members, + CORBA::Environment &ACE_TRY_ENV = + TAO_default_environment () + ) + ACE_THROW_SPEC (( + CORBA::SystemException + )) = 0; + + virtual CORBA::TypeCode_ptr create_interface_tc ( + const char * id, + const char * name, + CORBA::Environment &ACE_TRY_ENV = + TAO_default_environment () + ) + ACE_THROW_SPEC (( + CORBA::SystemException + )) = 0; + + virtual CORBA::TypeCode_ptr create_string_tc ( + CORBA::ULong bound, + CORBA::Environment &ACE_TRY_ENV = + TAO_default_environment () + ) + ACE_THROW_SPEC (( + CORBA::SystemException + )) = 0; + + virtual CORBA::TypeCode_ptr create_wstring_tc ( + CORBA::ULong bound, + CORBA::Environment &ACE_TRY_ENV = + TAO_default_environment () + ) + ACE_THROW_SPEC (( + CORBA::SystemException + )) = 0; + + virtual CORBA::TypeCode_ptr create_fixed_tc ( + CORBA::UShort digits, + CORBA::UShort scale, + CORBA::Environment &ACE_TRY_ENV = + TAO_default_environment () + ) + ACE_THROW_SPEC (( + CORBA::SystemException + )) = 0; + + virtual CORBA::TypeCode_ptr create_sequence_tc ( + CORBA::ULong bound, + CORBA::TypeCode_ptr element_type, + CORBA::Environment &ACE_TRY_ENV = + TAO_default_environment () + ) + ACE_THROW_SPEC (( + CORBA::SystemException + )) = 0; + + virtual CORBA::TypeCode_ptr create_array_tc ( + CORBA::ULong length, + CORBA::TypeCode_ptr element_type, + CORBA::Environment &ACE_TRY_ENV = + TAO_default_environment () + ) + ACE_THROW_SPEC (( + CORBA::SystemException + )) = 0; + + virtual CORBA::TypeCode_ptr create_value_tc ( + const char * id, + const char * name, + CORBA::ValueModifier type_modifier, + CORBA::TypeCode_ptr concrete_base, + const IR_ValueMemberSeq & members, + CORBA::Environment &ACE_TRY_ENV = + TAO_default_environment () + ) + ACE_THROW_SPEC (( + CORBA::SystemException + )) = 0; + + virtual CORBA::TypeCode_ptr create_value_box_tc ( + const char * id, + const char * name, + CORBA::TypeCode_ptr boxed_type, + CORBA::Environment &ACE_TRY_ENV = + TAO_default_environment () + ) + ACE_THROW_SPEC (( + CORBA::SystemException + )) = 0; + + virtual CORBA::TypeCode_ptr create_native_tc ( + const char * id, + const char * name, + CORBA::Environment &ACE_TRY_ENV = + TAO_default_environment () + ) + ACE_THROW_SPEC (( + CORBA::SystemException + )) = 0; + + virtual CORBA::TypeCode_ptr create_recursive_tc ( + const char * id, + CORBA::Environment &ACE_TRY_ENV = + TAO_default_environment () + ) + ACE_THROW_SPEC (( + CORBA::SystemException + )) = 0; + + virtual CORBA::TypeCode_ptr create_abstract_interface_tc ( + const char * id, + const char * name, + CORBA::Environment &ACE_TRY_ENV = + TAO_default_environment () + ) + ACE_THROW_SPEC (( + CORBA::SystemException + )) = 0; + + virtual CORBA::TypeCode_ptr create_component_tc ( + const char * id, + const char * name, + CORBA::Environment &ACE_TRY_ENV = + TAO_default_environment () + ) + ACE_THROW_SPEC (( + CORBA::SystemException + )) = 0; + + virtual CORBA::TypeCode_ptr create_home_tc ( + const char * id, + const char * name, + CORBA::Environment &ACE_TRY_ENV = + TAO_default_environment () + ) + ACE_THROW_SPEC (( + CORBA::SystemException + )) = 0; + + virtual void *_tao_QueryInterface (ptr_arith_t type); + + virtual const char* _interface_repository_id (void) const; + + protected: + CORBA_TypeCodeFactory (void); + virtual ~CORBA_TypeCodeFactory (void); + private: + CORBA_TypeCodeFactory (const CORBA_TypeCodeFactory &); + void operator= (const CORBA_TypeCodeFactory &); +}; + +#if defined (__ACE_INLINE__) +#include "TypeCodeFactoryC.inl" +#endif /* defined INLINE */ + +#if defined(_MSC_VER) && (_MSC_VER >= 1200) +#pragma warning(pop) +#endif /* _MSC_VER */ + +#include "ace/post.h" +#endif /* TAO_TYPECODEFACTORYC_H */ diff --git a/TAO/orbsvcs/IFR_Service/TypeCodeFactoryC.inl b/TAO/orbsvcs/IFR_Service/TypeCodeFactoryC.inl new file mode 100644 index 00000000000..5d548002753 --- /dev/null +++ b/TAO/orbsvcs/IFR_Service/TypeCodeFactoryC.inl @@ -0,0 +1,174 @@ +#if !defined (_CORBA_TYPECODEFACTORY___VAR_CI_) +#define _CORBA_TYPECODEFACTORY___VAR_CI_ + +// ************************************************************* +// Inline operations for class CORBA_TypeCodeFactory_var +// ************************************************************* + +ACE_INLINE +CORBA_TypeCodeFactory_var::CORBA_TypeCodeFactory_var (void) // default constructor + : ptr_ (CORBA_TypeCodeFactory::_nil ()) +{} + +ACE_INLINE +CORBA_TypeCodeFactory_var::CORBA_TypeCodeFactory_var (CORBA_TypeCodeFactory_ptr p) + : ptr_ (p) +{} + +ACE_INLINE ::CORBA_TypeCodeFactory_ptr +CORBA_TypeCodeFactory_var::ptr (void) const +{ + return this->ptr_; +} + +ACE_INLINE +CORBA_TypeCodeFactory_var::CORBA_TypeCodeFactory_var (const ::CORBA_TypeCodeFactory_var &p) // copy constructor + : TAO_Base_var (), + ptr_ (CORBA_TypeCodeFactory::_duplicate (p.ptr ())) +{} + +ACE_INLINE +CORBA_TypeCodeFactory_var::~CORBA_TypeCodeFactory_var (void) // destructor +{ + CORBA::release (this->ptr_); +} + +ACE_INLINE CORBA_TypeCodeFactory_var & +CORBA_TypeCodeFactory_var::operator= (CORBA_TypeCodeFactory_ptr p) +{ + CORBA::release (this->ptr_); + this->ptr_ = p; + return *this; +} + +ACE_INLINE CORBA_TypeCodeFactory_var & +CORBA_TypeCodeFactory_var::operator= (const ::CORBA_TypeCodeFactory_var &p) +{ + if (this != &p) + { + CORBA::release (this->ptr_); + this->ptr_ = ::CORBA_TypeCodeFactory::_duplicate (p.ptr ()); + } + return *this; +} + +ACE_INLINE +CORBA_TypeCodeFactory_var::operator const ::CORBA_TypeCodeFactory_ptr &() const // cast +{ + return this->ptr_; +} + +ACE_INLINE +CORBA_TypeCodeFactory_var::operator ::CORBA_TypeCodeFactory_ptr &() // cast +{ + return this->ptr_; +} + +ACE_INLINE ::CORBA_TypeCodeFactory_ptr +CORBA_TypeCodeFactory_var::operator-> (void) const +{ + return this->ptr_; +} + +ACE_INLINE ::CORBA_TypeCodeFactory_ptr +CORBA_TypeCodeFactory_var::in (void) const +{ + return this->ptr_; +} + +ACE_INLINE ::CORBA_TypeCodeFactory_ptr & +CORBA_TypeCodeFactory_var::inout (void) +{ + return this->ptr_; +} + +ACE_INLINE ::CORBA_TypeCodeFactory_ptr & +CORBA_TypeCodeFactory_var::out (void) +{ + CORBA::release (this->ptr_); + this->ptr_ = ::CORBA_TypeCodeFactory::_nil (); + return this->ptr_; +} + +ACE_INLINE ::CORBA_TypeCodeFactory_ptr +CORBA_TypeCodeFactory_var::_retn (void) +{ + // yield ownership of managed obj reference + ::CORBA_TypeCodeFactory_ptr val = this->ptr_; + this->ptr_ = ::CORBA_TypeCodeFactory::_nil (); + return val; +} + + +#endif /* end #if !defined */ + + +#if !defined (_CORBA_TYPECODEFACTORY___OUT_CI_) +#define _CORBA_TYPECODEFACTORY___OUT_CI_ + +// ************************************************************* +// Inline operations for class CORBA_TypeCodeFactory_out +// ************************************************************* + +ACE_INLINE +CORBA_TypeCodeFactory_out::CORBA_TypeCodeFactory_out (CORBA_TypeCodeFactory_ptr &p) + : ptr_ (p) +{ + this->ptr_ = ::CORBA_TypeCodeFactory::_nil (); +} + +ACE_INLINE +CORBA_TypeCodeFactory_out::CORBA_TypeCodeFactory_out (CORBA_TypeCodeFactory_var &p) // constructor from _var + : ptr_ (p.out ()) +{ + CORBA::release (this->ptr_); + this->ptr_ = ::CORBA_TypeCodeFactory::_nil (); +} + +ACE_INLINE +CORBA_TypeCodeFactory_out::CORBA_TypeCodeFactory_out (const ::CORBA_TypeCodeFactory_out &p) // copy constructor + : ptr_ (ACE_const_cast (CORBA_TypeCodeFactory_out &, p).ptr_) +{} + +ACE_INLINE ::CORBA_TypeCodeFactory_out & +CORBA_TypeCodeFactory_out::operator= (const ::CORBA_TypeCodeFactory_out &p) +{ + this->ptr_ = ACE_const_cast (CORBA_TypeCodeFactory_out&, p).ptr_; + return *this; +} + +ACE_INLINE CORBA_TypeCodeFactory_out & +CORBA_TypeCodeFactory_out::operator= (const ::CORBA_TypeCodeFactory_var &p) +{ + this->ptr_ = ::CORBA_TypeCodeFactory::_duplicate (p.ptr ()); + return *this; +} + +ACE_INLINE CORBA_TypeCodeFactory_out & +CORBA_TypeCodeFactory_out::operator= (CORBA_TypeCodeFactory_ptr p) +{ + this->ptr_ = p; + return *this; +} + +ACE_INLINE +CORBA_TypeCodeFactory_out::operator ::CORBA_TypeCodeFactory_ptr &() // cast +{ + return this->ptr_; +} + +ACE_INLINE ::CORBA_TypeCodeFactory_ptr & +CORBA_TypeCodeFactory_out::ptr (void) // ptr +{ + return this->ptr_; +} + +ACE_INLINE ::CORBA_TypeCodeFactory_ptr +CORBA_TypeCodeFactory_out::operator-> (void) +{ + return this->ptr_; +} + + +#endif /* end #if !defined */ + diff --git a/TAO/orbsvcs/IFR_Service/TypeCodeFactory_DLL.bor b/TAO/orbsvcs/IFR_Service/TypeCodeFactory_DLL.bor index a64f9389164..5166a8b3d1e 100644 --- a/TAO/orbsvcs/IFR_Service/TypeCodeFactory_DLL.bor +++ b/TAO/orbsvcs/IFR_Service/TypeCodeFactory_DLL.bor @@ -5,7 +5,7 @@ NAME = TypeCodeFactory_DLL OBJFILES = \ - $(OBJDIR)\TypeCodeFactory_skel.obj \ + $(OBJDIR)\TypeCodeFactoryC.obj \ $(OBJDIR)\TypeCodeFactory_i.obj \ $(OBJDIR)\TCF_Loader.obj diff --git a/TAO/orbsvcs/IFR_Service/TypeCodeFactory_DLL.dsp b/TAO/orbsvcs/IFR_Service/TypeCodeFactory_DLL.dsp index dba5c73dfcd..b131e6e42c4 100644 --- a/TAO/orbsvcs/IFR_Service/TypeCodeFactory_DLL.dsp +++ b/TAO/orbsvcs/IFR_Service/TypeCodeFactory_DLL.dsp @@ -100,7 +100,7 @@ SOURCE=.\TypeCodeFactory_i.cpp # End Source File
# Begin Source File
-SOURCE=.\TypeCodeFactory_skel.cpp
+SOURCE=.\TypeCodeFactoryC.cpp
# End Source File
# End Group
# Begin Group "Header Files"
@@ -118,6 +118,18 @@ SOURCE=.\TCF_Loader.h SOURCE=.\TypeCodeFactory_i.h
# End Source File
+# Begin Source File
+
+SOURCE=.\TypeCodeFactoryC.h
+# End Source File
+# End Group
+# Begin Group "Inline Files"
+
+# PROP Default_Filter ".inl"
+# Begin Source File
+
+SOURCE=.\TypeCodeFactoryC.inl
+# End Source File
# End Group
# End Target
# End Project
diff --git a/TAO/orbsvcs/IFR_Service/TypeCodeFactory_i.cpp b/TAO/orbsvcs/IFR_Service/TypeCodeFactory_i.cpp index 61339658ead..95dcb3ba52f 100644 --- a/TAO/orbsvcs/IFR_Service/TypeCodeFactory_i.cpp +++ b/TAO/orbsvcs/IFR_Service/TypeCodeFactory_i.cpp @@ -14,6 +14,38 @@ TAO_TypeCodeFactory_i::~TAO_TypeCodeFactory_i (void) { } +TAO_TypeCodeFactory_i * +TAO_TypeCodeFactory_i::_narrow (CORBA::Object_ptr obj, + CORBA::Environment &) +{ + if (CORBA::is_nil (obj)) + return 0; + + return ACE_reinterpret_cast ( + TAO_TypeCodeFactory_i *, + obj->_tao_QueryInterface ( + ACE_reinterpret_cast ( + ptr_arith_t, + &TAO_TypeCodeFactory_i::_narrow + ) + ) + ); +} + +void * +TAO_TypeCodeFactory_i::_tao_QueryInterface (ptr_arith_t type) +{ + ptr_arith_t mytype = + ACE_reinterpret_cast (ptr_arith_t, + &TAO_TypeCodeFactory_i::_narrow); + if (type == mytype) + { + this->_add_ref (); + return this; + } + return this->CORBA_TypeCodeFactory::_tao_QueryInterface (type); +} + CORBA::TypeCode_ptr TAO_TypeCodeFactory_i::create_struct_tc ( const char *id, diff --git a/TAO/orbsvcs/IFR_Service/TypeCodeFactory_i.h b/TAO/orbsvcs/IFR_Service/TypeCodeFactory_i.h index c1acfd8e0d1..a16d3171e09 100644 --- a/TAO/orbsvcs/IFR_Service/TypeCodeFactory_i.h +++ b/TAO/orbsvcs/IFR_Service/TypeCodeFactory_i.h @@ -15,21 +15,17 @@ #ifndef TAO_TYPECODEFACTORY_I_H #define TAO_TYPECODEFACTORY_I_H +#include "ace/pre.h" -#include "tao/PortableServer/POA_CORBA.h" -#include "TCF_Export.h" +#include "TCF_Loader.h" -// This is to remove "inherits via dominance" warnings from MSVC. -#if defined(_MSC_VER) -#if (_MSC_VER >= 1200) -#pragma warning(push) -#endif /* _MSC_VER >= 1200 */ -# pragma warning (disable : 4250) -#endif /* _MSC_VER */ +#if !defined (ACE_LACKS_PRAGMA_ONCE) +# pragma once +#endif /* ACE_LACKS_PRAGMA_ONCE */ class TCF_Export TAO_TypeCodeFactory_i - : public virtual POA_CORBA::TypeCodeFactory, - public virtual PortableServer::RefCountServantBase + : public virtual CORBA_TypeCodeFactory, + public virtual TAO_Local_RefCounted_Object { // = TITLE // TAO_TypeCodeFactory_i @@ -44,6 +40,14 @@ public: ~TAO_TypeCodeFactory_i (void); // dtor + // = LocalObject methods + static TAO_TypeCodeFactory_i *_narrow ( + CORBA::Object_ptr obj, + CORBA::Environment &ACE_TRY_ENV = + TAO_default_environment () + ); + virtual void *_tao_QueryInterface (ptr_arith_t type); + virtual CORBA::TypeCode_ptr create_struct_tc ( const char *id, const char *name, @@ -207,8 +211,5 @@ private: TAO_TypeCodeFactory_i &operator= (const TAO_TypeCodeFactory_i &src); }; -#if defined(_MSC_VER) && (_MSC_VER >= 1200) -#pragma warning(pop) -#endif /* _MSC_VER */ - +#include "ace/post.h" #endif /* TAO_TYPECODEFACTORY_I_H */ diff --git a/TAO/orbsvcs/IFR_Service/TypeCodeFactory_skel.cpp b/TAO/orbsvcs/IFR_Service/TypeCodeFactory_skel.cpp deleted file mode 100644 index 843c965fe69..00000000000 --- a/TAO/orbsvcs/IFR_Service/TypeCodeFactory_skel.cpp +++ /dev/null @@ -1,1702 +0,0 @@ -/* -*- C++ -*- */ -// $Id$ - -// ****** Code generated by the The ACE ORB (TAO) IDL Compiler ******* -// TAO and the TAO IDL Compiler have been developed by the Center for -// Distributed Object Computing at Washington University, St. Louis. -// -// Information about TAO is available at: -// http://www.cs.wustl.edu/~schmidt/TAO.html - -// Since the TypeCode factory needs to be available whether or not -// the Interface Repository is available, the skeleton code -// specific to the TypeCode factory (generated by Interface.idl) -// has been separated, removed from the TAO library. and included -// here. - -#include "tao/PortableServer/POA_CORBA.h" -#include "tao/PortableServer/Operation_Table.h" -#include "tao/PortableServer/Object_Adapter.h" -#include "tao/Stub.h" -#include "tao/ORB_Core.h" -#include "tao/TAO_Server_Request.h" - -ACE_RCSID(IFR_Service, TypeCodeFactory_skel, "$Id$") - -class TAO_CORBA_TypeCodeFactory_Perfect_Hash_OpTable : public TAO_Perfect_Hash_OpTable -{ -private: - unsigned int hash (const char *str, unsigned int len); -public: - const TAO_operation_db_entry * lookup (const char *str, unsigned int len); -}; -/* starting time is 15:29:12 */ -/* C++ code produced by gperf version 2.8 (ACE version) */ -/* Command-line: gperf -m -M -J -c -C -D -E -T -f 0 -F 0 -a -o -t -p -K opname_ -L C++ -Z TAO_CORBA_TypeCodeFactory_Perfect_Hash_OpTable -N lookup */ -unsigned int -TAO_CORBA_TypeCodeFactory_Perfect_Hash_OpTable::hash (const char *str, unsigned int len) -{ - static const unsigned char asso_values[] = - { -#if defined (ACE_MVS) - 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, 29, 29, 29, 29, 29, 0, - 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, 29, 29, 29, 29, 29, 0, - 29, 0, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 0, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, 29, 29, -#else - 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, 29, 0, 29, 0, 29, 0, - 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, 29, 29, 0, 29, 29, 29, - 29, 29, 29, 29, 29, 29, 29, 29, -#endif /* ACE_MVS */ - }; - return len + asso_values[str[len - 1]] + asso_values[str[0]]; -} - -const class TAO_operation_db_entry * -TAO_CORBA_TypeCodeFactory_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len) -{ - enum - { - TOTAL_KEYWORDS = 20, - MIN_WORD_LENGTH = 5, - MAX_WORD_LENGTH = 28, - MIN_HASH_VALUE = 5, - MAX_HASH_VALUE = 28, - HASH_VALUE_RANGE = 24, - DUPLICATES = 12 - }; - - static const class TAO_operation_db_entry wordlist[] = - { - {"",0},{"",0},{"",0},{"",0},{"",0}, - {"_is_a", &POA_CORBA::TypeCodeFactory::_is_a_skel}, - {"_non_existent", &POA_CORBA::TypeCodeFactory::_non_existent_skel}, - {"create_enum_tc", &POA_CORBA::TypeCodeFactory::create_enum_tc_skel}, - {"create_home_tc", &POA_CORBA::TypeCodeFactory::create_home_tc_skel}, - {"create_union_tc", &POA_CORBA::TypeCodeFactory::create_union_tc_skel}, - {"create_value_tc", &POA_CORBA::TypeCodeFactory::create_value_tc_skel}, - {"create_array_tc", &POA_CORBA::TypeCodeFactory::create_array_tc_skel}, - {"create_fixed_tc", &POA_CORBA::TypeCodeFactory::create_fixed_tc_skel}, - {"create_alias_tc", &POA_CORBA::TypeCodeFactory::create_alias_tc_skel}, - {"create_struct_tc", &POA_CORBA::TypeCodeFactory::create_struct_tc_skel}, - {"create_native_tc", &POA_CORBA::TypeCodeFactory::create_native_tc_skel}, - {"create_string_tc", &POA_CORBA::TypeCodeFactory::create_string_tc_skel}, - {"create_wstring_tc", &POA_CORBA::TypeCodeFactory::create_wstring_tc_skel}, - {"create_sequence_tc", &POA_CORBA::TypeCodeFactory::create_sequence_tc_skel}, - {"create_exception_tc", &POA_CORBA::TypeCodeFactory::create_exception_tc_skel}, - {"create_component_tc", &POA_CORBA::TypeCodeFactory::create_component_tc_skel}, - {"create_recursive_tc", &POA_CORBA::TypeCodeFactory::create_recursive_tc_skel}, - {"create_value_box_tc", &POA_CORBA::TypeCodeFactory::create_value_box_tc_skel}, - {"create_interface_tc", &POA_CORBA::TypeCodeFactory::create_interface_tc_skel}, - {"create_abstract_interface_tc", &POA_CORBA::TypeCodeFactory::create_abstract_interface_tc_skel}, - }; - - static const signed char lookup[] = - { - -1, -1, -1, -7, -2, 5, -1, -9, -5, -14, -3, -19, -5, 6, - -39, -36, -35, 17, 18, -36, -1, -1, -1, -1, -1, -1, -1, -1, - 24, - }; - - if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH) - { - unsigned int key = hash (str, len); - - if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE) - { - int slot = lookup[key]; - - if (slot >= 0 && slot < MAX_HASH_VALUE) - { - const char *s = wordlist[slot].opname_; - - if (*str == *s && !strncmp (str + 1, s + 1, len - 1)) - return &wordlist[slot]; - } - else if (slot < 0 && slot >= -MAX_HASH_VALUE) - return 0; - else - { - unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE); - const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]]; - const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1]; - - while (--ptr >= base) - if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1)) - return ptr; - } - } - } - return 0; -} -/* ending time is 15:29:12 */ -static TAO_CORBA_TypeCodeFactory_Perfect_Hash_OpTable tao_CORBA_TypeCodeFactory_optable; - -CORBA::TypeCodeFactory_ptr _TAO_collocation_POA_CORBA_TypeCodeFactory_Stub_Factory ( - CORBA::Object_ptr obj - ) -{ - TAO_Stub *stub = obj->_stubobj (); - - switch (stub->servant_orb_var ()->orb_core ()->get_collocation_strategy ()) - { - case TAO_ORB_Core::THRU_POA: - { - CORBA::TypeCodeFactory_ptr retval = 0; - ACE_NEW_RETURN ( - retval, - POA_CORBA::_tao_thru_poa_collocated_TypeCodeFactory (stub), - 0 - ); - return retval; - } - case TAO_ORB_Core::DIRECT: - break; - default: - break; - } - return 0; -} - -int _TAO_collocation_POA_CORBA_TypeCodeFactory_Stub_Factory_Initializer (long dummy) -{ - ACE_UNUSED_ARG (dummy); - - _TAO_collocation_CORBA_TypeCodeFactory_Stub_Factory_function_pointer = - _TAO_collocation_POA_CORBA_TypeCodeFactory_Stub_Factory; - - return 0; -} - -static int _TAO_collocation_POA_CORBA_TypeCodeFactory_Stub_Factory_Initializer_Scarecrow = - _TAO_collocation_POA_CORBA_TypeCodeFactory_Stub_Factory_Initializer (ACE_reinterpret_cast (long, _TAO_collocation_POA_CORBA_TypeCodeFactory_Stub_Factory_Initializer)); - -// skeleton constructor -POA_CORBA::TypeCodeFactory::TypeCodeFactory (void) -{ - this->optable_ = &tao_CORBA_TypeCodeFactory_optable; -} - -// copy ctor -POA_CORBA::TypeCodeFactory::TypeCodeFactory (const TypeCodeFactory& rhs) - : TAO_ServantBase (rhs) -{} - -// skeleton destructor -POA_CORBA::TypeCodeFactory::~TypeCodeFactory (void) -{ -} - -void POA_CORBA::TypeCodeFactory::create_struct_tc_skel ( - TAO_ServerRequest &_tao_server_request, - void *_tao_object_reference, - void * /* context */, - CORBA::Environment &ACE_TRY_ENV -) -{ - TAO_InputCDR &_tao_in = _tao_server_request.incoming (); - POA_CORBA::TypeCodeFactory *_tao_impl = (POA_CORBA::TypeCodeFactory *)_tao_object_reference; - - CORBA::TypeCode_var _tao_retval; - CORBA::String_var id; - CORBA::String_var name; - IR::StructMemberSeq members; - if (!( - (_tao_in >> id.out ()) && - (_tao_in >> name.out ()) && - (_tao_in >> members) - )) - ACE_THROW (CORBA::MARSHAL () ); - - _tao_retval = _tao_impl->create_struct_tc ( - id.in (), - name.in (), - members, - ACE_TRY_ENV - ); - - ACE_CHECK; - - _tao_server_request.init_reply (ACE_TRY_ENV); - ACE_CHECK; - TAO_OutputCDR &_tao_out = _tao_server_request.outgoing (); - if (!( - (_tao_out << _tao_retval.in ()) - )) - ACE_THROW (CORBA::MARSHAL () ); -} - -void POA_CORBA::TypeCodeFactory::create_union_tc_skel ( - TAO_ServerRequest &_tao_server_request, - void *_tao_object_reference, - void * /* context */, - CORBA::Environment &ACE_TRY_ENV -) -{ - TAO_InputCDR &_tao_in = _tao_server_request.incoming (); - POA_CORBA::TypeCodeFactory *_tao_impl = (POA_CORBA::TypeCodeFactory *)_tao_object_reference; - - CORBA::TypeCode_var _tao_retval; - CORBA::String_var id; - CORBA::String_var name; - CORBA::TypeCode_var discriminator_type; - IR::UnionMemberSeq members; - if (!( - (_tao_in >> id.out ()) && - (_tao_in >> name.out ()) && - (_tao_in >> discriminator_type.out ()) && - (_tao_in >> members) - )) - ACE_THROW (CORBA::MARSHAL () ); - - _tao_retval = _tao_impl->create_union_tc ( - id.in (), - name.in (), - discriminator_type.in (), - members, - ACE_TRY_ENV - ); - - ACE_CHECK; - - _tao_server_request.init_reply (ACE_TRY_ENV); - ACE_CHECK; - TAO_OutputCDR &_tao_out = _tao_server_request.outgoing (); - if (!( - (_tao_out << _tao_retval.in ()) - )) - ACE_THROW (CORBA::MARSHAL () ); - -} - -void POA_CORBA::TypeCodeFactory::create_enum_tc_skel ( - TAO_ServerRequest &_tao_server_request, - void *_tao_object_reference, - void * /* context */, - CORBA::Environment &ACE_TRY_ENV -) -{ - TAO_InputCDR &_tao_in = _tao_server_request.incoming (); - POA_CORBA::TypeCodeFactory *_tao_impl = (POA_CORBA::TypeCodeFactory *)_tao_object_reference; - - CORBA::TypeCode_var _tao_retval; - CORBA::String_var id; - CORBA::String_var name; - IR::EnumMemberSeq members; - if (!( - (_tao_in >> id.out ()) && - (_tao_in >> name.out ()) && - (_tao_in >> members) - )) - ACE_THROW (CORBA::MARSHAL () ); - - _tao_retval = _tao_impl->create_enum_tc ( - id.in (), - name.in (), - members, - ACE_TRY_ENV - ); - - ACE_CHECK; - - _tao_server_request.init_reply (ACE_TRY_ENV); - ACE_CHECK; - TAO_OutputCDR &_tao_out = _tao_server_request.outgoing (); - if (!( - (_tao_out << _tao_retval.in ()) - )) - ACE_THROW (CORBA::MARSHAL () ); -} - -void POA_CORBA::TypeCodeFactory::create_alias_tc_skel ( - TAO_ServerRequest &_tao_server_request, - void *_tao_object_reference, - void * /* context */, - CORBA::Environment &ACE_TRY_ENV -) -{ - TAO_InputCDR &_tao_in = _tao_server_request.incoming (); - POA_CORBA::TypeCodeFactory *_tao_impl = (POA_CORBA::TypeCodeFactory *)_tao_object_reference; - - CORBA::TypeCode_var _tao_retval; - CORBA::String_var id; - CORBA::String_var name; - CORBA::TypeCode_var original_type; - if (!( - (_tao_in >> id.out ()) && - (_tao_in >> name.out ()) && - (_tao_in >> original_type.out ()) - )) - ACE_THROW (CORBA::MARSHAL () ); - - _tao_retval = _tao_impl->create_alias_tc ( - id.in (), - name.in (), - original_type.in (), - ACE_TRY_ENV - ); - - ACE_CHECK; - - _tao_server_request.init_reply (ACE_TRY_ENV); - ACE_CHECK; - TAO_OutputCDR &_tao_out = _tao_server_request.outgoing (); - if (!( - (_tao_out << _tao_retval.in ()) - )) - ACE_THROW (CORBA::MARSHAL () ); -} - -void POA_CORBA::TypeCodeFactory::create_exception_tc_skel ( - TAO_ServerRequest &_tao_server_request, - void *_tao_object_reference, - void * /* context */, - CORBA::Environment &ACE_TRY_ENV -) -{ - TAO_InputCDR &_tao_in = _tao_server_request.incoming (); - POA_CORBA::TypeCodeFactory *_tao_impl = (POA_CORBA::TypeCodeFactory *)_tao_object_reference; - - CORBA::TypeCode_var _tao_retval; - CORBA::String_var id; - CORBA::String_var name; - IR::StructMemberSeq members; - if (!( - (_tao_in >> id.out ()) && - (_tao_in >> name.out ()) && - (_tao_in >> members) - )) - ACE_THROW (CORBA::MARSHAL () ); - - _tao_retval = _tao_impl->create_exception_tc ( - id.in (), - name.in (), - members, - ACE_TRY_ENV - ); - - ACE_CHECK; - - _tao_server_request.init_reply (ACE_TRY_ENV); - ACE_CHECK; - TAO_OutputCDR &_tao_out = _tao_server_request.outgoing (); - if (!( - (_tao_out << _tao_retval.in ()) - )) - ACE_THROW (CORBA::MARSHAL () ); - -} - -void POA_CORBA::TypeCodeFactory::create_interface_tc_skel ( - TAO_ServerRequest &_tao_server_request, - void *_tao_object_reference, - void * /* context */, - CORBA::Environment &ACE_TRY_ENV -) -{ - TAO_InputCDR &_tao_in = _tao_server_request.incoming (); - POA_CORBA::TypeCodeFactory *_tao_impl = (POA_CORBA::TypeCodeFactory *)_tao_object_reference; - - CORBA::TypeCode_var _tao_retval; - CORBA::String_var id; - CORBA::String_var name; - if (!( - (_tao_in >> id.out ()) && - (_tao_in >> name.out ()) - )) - ACE_THROW (CORBA::MARSHAL () ); - - _tao_retval = _tao_impl->create_interface_tc ( - id.in (), - name.in (), - ACE_TRY_ENV - ); - - ACE_CHECK; - - _tao_server_request.init_reply (ACE_TRY_ENV); - ACE_CHECK; - TAO_OutputCDR &_tao_out = _tao_server_request.outgoing (); - if (!( - (_tao_out << _tao_retval.in ()) - )) - ACE_THROW (CORBA::MARSHAL () ); -} - -void POA_CORBA::TypeCodeFactory::create_string_tc_skel ( - TAO_ServerRequest &_tao_server_request, - void *_tao_object_reference, - void * /* context */, - CORBA::Environment &ACE_TRY_ENV -) -{ - TAO_InputCDR &_tao_in = _tao_server_request.incoming (); - POA_CORBA::TypeCodeFactory *_tao_impl = (POA_CORBA::TypeCodeFactory *)_tao_object_reference; - - CORBA::TypeCode_var _tao_retval; - CORBA::ULong bound; - if (!( - (_tao_in >> bound) - )) - ACE_THROW (CORBA::MARSHAL () ); - - _tao_retval = _tao_impl->create_string_tc ( - bound, - ACE_TRY_ENV - ); - - ACE_CHECK; - - _tao_server_request.init_reply (ACE_TRY_ENV); - ACE_CHECK; - TAO_OutputCDR &_tao_out = _tao_server_request.outgoing (); - if (!( - (_tao_out << _tao_retval.in ()) - )) - ACE_THROW (CORBA::MARSHAL () ); -} - -void POA_CORBA::TypeCodeFactory::create_wstring_tc_skel ( - TAO_ServerRequest &_tao_server_request, - void *_tao_object_reference, - void * /* context */, - CORBA::Environment &ACE_TRY_ENV -) -{ - TAO_InputCDR &_tao_in = _tao_server_request.incoming (); - POA_CORBA::TypeCodeFactory *_tao_impl = (POA_CORBA::TypeCodeFactory *)_tao_object_reference; - - CORBA::TypeCode_var _tao_retval; - CORBA::ULong bound; - if (!( - (_tao_in >> bound) - )) - ACE_THROW (CORBA::MARSHAL () ); - - _tao_retval = _tao_impl->create_wstring_tc ( - bound, - ACE_TRY_ENV - ); - - ACE_CHECK; - - _tao_server_request.init_reply (ACE_TRY_ENV); - ACE_CHECK; - TAO_OutputCDR &_tao_out = _tao_server_request.outgoing (); - if (!( - (_tao_out << _tao_retval.in ()) - )) - ACE_THROW (CORBA::MARSHAL () ); -} - -void POA_CORBA::TypeCodeFactory::create_fixed_tc_skel ( - TAO_ServerRequest &_tao_server_request, - void *_tao_object_reference, - void * /* context */, - CORBA::Environment &ACE_TRY_ENV -) -{ - TAO_InputCDR &_tao_in = _tao_server_request.incoming (); - POA_CORBA::TypeCodeFactory *_tao_impl = (POA_CORBA::TypeCodeFactory *)_tao_object_reference; - - CORBA::TypeCode_var _tao_retval; - CORBA::UShort digits; - CORBA::UShort scale; - if (!( - (_tao_in >> digits) && - (_tao_in >> scale) - )) - ACE_THROW (CORBA::MARSHAL () ); - - _tao_retval = _tao_impl->create_fixed_tc ( - digits, - scale, - ACE_TRY_ENV - ); - - ACE_CHECK; - - _tao_server_request.init_reply (ACE_TRY_ENV); - ACE_CHECK; - TAO_OutputCDR &_tao_out = _tao_server_request.outgoing (); - if (!( - (_tao_out << _tao_retval.in ()) - )) - ACE_THROW (CORBA::MARSHAL () ); -} - -void POA_CORBA::TypeCodeFactory::create_sequence_tc_skel ( - TAO_ServerRequest &_tao_server_request, - void *_tao_object_reference, - void * /* context */, - CORBA::Environment &ACE_TRY_ENV -) -{ - TAO_InputCDR &_tao_in = _tao_server_request.incoming (); - POA_CORBA::TypeCodeFactory *_tao_impl = (POA_CORBA::TypeCodeFactory *)_tao_object_reference; - - CORBA::TypeCode_var _tao_retval; - CORBA::ULong bound; - CORBA::TypeCode_var element_type; - if (!( - (_tao_in >> bound) && - (_tao_in >> element_type.out ()) - )) - ACE_THROW (CORBA::MARSHAL () ); - - _tao_retval = _tao_impl->create_sequence_tc ( - bound, - element_type.in (), - ACE_TRY_ENV - ); - - ACE_CHECK; - - _tao_server_request.init_reply (ACE_TRY_ENV); - ACE_CHECK; - TAO_OutputCDR &_tao_out = _tao_server_request.outgoing (); - if (!( - (_tao_out << _tao_retval.in ()) - )) - ACE_THROW (CORBA::MARSHAL () ); -} - -void POA_CORBA::TypeCodeFactory::create_array_tc_skel ( - TAO_ServerRequest &_tao_server_request, - void *_tao_object_reference, - void * /* context */, - CORBA::Environment &ACE_TRY_ENV -) -{ - TAO_InputCDR &_tao_in = _tao_server_request.incoming (); - POA_CORBA::TypeCodeFactory *_tao_impl = (POA_CORBA::TypeCodeFactory *)_tao_object_reference; - - CORBA::TypeCode_var _tao_retval; - CORBA::ULong length; - CORBA::TypeCode_var element_type; - if (!( - (_tao_in >> length) && - (_tao_in >> element_type.out ()) - )) - ACE_THROW (CORBA::MARSHAL () ); - - _tao_retval = _tao_impl->create_array_tc ( - length, - element_type.in (), - ACE_TRY_ENV - ); - - ACE_CHECK; - - _tao_server_request.init_reply (ACE_TRY_ENV); - ACE_CHECK; - TAO_OutputCDR &_tao_out = _tao_server_request.outgoing (); - if (!( - (_tao_out << _tao_retval.in ()) - )) - ACE_THROW (CORBA::MARSHAL () ); -} - -void POA_CORBA::TypeCodeFactory::create_value_tc_skel ( - TAO_ServerRequest &_tao_server_request, - void *_tao_object_reference, - void * /* context */, - CORBA::Environment &ACE_TRY_ENV -) -{ - TAO_InputCDR &_tao_in = _tao_server_request.incoming (); - POA_CORBA::TypeCodeFactory *_tao_impl = (POA_CORBA::TypeCodeFactory *)_tao_object_reference; - - CORBA::TypeCode_var _tao_retval; - CORBA::String_var id; - CORBA::String_var name; - CORBA::ValueModifier type_modifier; - CORBA::TypeCode_var concrete_base; - IR::ValueMemberSeq members; - if (!( - (_tao_in >> id.out ()) && - (_tao_in >> name.out ()) && - (_tao_in >> type_modifier) && - (_tao_in >> concrete_base.out ()) && - (_tao_in >> members) - )) - ACE_THROW (CORBA::MARSHAL () ); - - _tao_retval = _tao_impl->create_value_tc ( - id.in (), - name.in (), - type_modifier, - concrete_base.in (), - members, - ACE_TRY_ENV - ); - - ACE_CHECK; - - _tao_server_request.init_reply (ACE_TRY_ENV); - ACE_CHECK; - TAO_OutputCDR &_tao_out = _tao_server_request.outgoing (); - if (!( - (_tao_out << _tao_retval.in ()) - )) - ACE_THROW (CORBA::MARSHAL () ); -} - -void POA_CORBA::TypeCodeFactory::create_value_box_tc_skel ( - TAO_ServerRequest &_tao_server_request, - void *_tao_object_reference, - void * /* context */, - CORBA::Environment &ACE_TRY_ENV -) -{ - TAO_InputCDR &_tao_in = _tao_server_request.incoming (); - POA_CORBA::TypeCodeFactory *_tao_impl = (POA_CORBA::TypeCodeFactory *)_tao_object_reference; - - CORBA::TypeCode_var _tao_retval; - CORBA::String_var id; - CORBA::String_var name; - CORBA::TypeCode_var boxed_type; - if (!( - (_tao_in >> id.out ()) && - (_tao_in >> name.out ()) && - (_tao_in >> boxed_type.out ()) - )) - ACE_THROW (CORBA::MARSHAL () ); - - _tao_retval = _tao_impl->create_value_box_tc ( - id.in (), - name.in (), - boxed_type.in (), - ACE_TRY_ENV - ); - - ACE_CHECK; - - _tao_server_request.init_reply (ACE_TRY_ENV); - ACE_CHECK; - TAO_OutputCDR &_tao_out = _tao_server_request.outgoing (); - if (!( - (_tao_out << _tao_retval.in ()) - )) - ACE_THROW (CORBA::MARSHAL () ); -} - -void POA_CORBA::TypeCodeFactory::create_native_tc_skel ( - TAO_ServerRequest &_tao_server_request, - void *_tao_object_reference, - void * /* context */, - CORBA::Environment &ACE_TRY_ENV -) -{ - TAO_InputCDR &_tao_in = _tao_server_request.incoming (); - POA_CORBA::TypeCodeFactory *_tao_impl = (POA_CORBA::TypeCodeFactory *)_tao_object_reference; - - CORBA::TypeCode_var _tao_retval; - CORBA::String_var id; - CORBA::String_var name; - if (!( - (_tao_in >> id.out ()) && - (_tao_in >> name.out ()) - )) - ACE_THROW (CORBA::MARSHAL () ); - - _tao_retval = _tao_impl->create_native_tc ( - id.in (), - name.in (), - ACE_TRY_ENV - ); - - ACE_CHECK; - - _tao_server_request.init_reply (ACE_TRY_ENV); - ACE_CHECK; - TAO_OutputCDR &_tao_out = _tao_server_request.outgoing (); - if (!( - (_tao_out << _tao_retval.in ()) - )) - ACE_THROW (CORBA::MARSHAL () ); -} - -void POA_CORBA::TypeCodeFactory::create_recursive_tc_skel ( - TAO_ServerRequest &_tao_server_request, - void *_tao_object_reference, - void * /* context */, - CORBA::Environment &ACE_TRY_ENV -) -{ - TAO_InputCDR &_tao_in = _tao_server_request.incoming (); - POA_CORBA::TypeCodeFactory *_tao_impl = (POA_CORBA::TypeCodeFactory *)_tao_object_reference; - - CORBA::TypeCode_var _tao_retval; - CORBA::String_var id; - if (!( - (_tao_in >> id.out ()) - )) - ACE_THROW (CORBA::MARSHAL () ); - - _tao_retval = _tao_impl->create_recursive_tc ( - id.in (), - ACE_TRY_ENV - ); - - ACE_CHECK; - - _tao_server_request.init_reply (ACE_TRY_ENV); - ACE_CHECK; - TAO_OutputCDR &_tao_out = _tao_server_request.outgoing (); - if (!( - (_tao_out << _tao_retval.in ()) - )) - ACE_THROW (CORBA::MARSHAL () ); -} - -void POA_CORBA::TypeCodeFactory::create_abstract_interface_tc_skel ( - TAO_ServerRequest &_tao_server_request, - void *_tao_object_reference, - void * /* context */, - CORBA::Environment &ACE_TRY_ENV -) -{ - TAO_InputCDR &_tao_in = _tao_server_request.incoming (); - POA_CORBA::TypeCodeFactory *_tao_impl = (POA_CORBA::TypeCodeFactory *)_tao_object_reference; - - CORBA::TypeCode_var _tao_retval; - CORBA::String_var id; - CORBA::String_var name; - if (!( - (_tao_in >> id.out ()) && - (_tao_in >> name.out ()) - )) - ACE_THROW (CORBA::MARSHAL () ); - - _tao_retval = _tao_impl->create_abstract_interface_tc ( - id.in (), - name.in (), - ACE_TRY_ENV - ); - - ACE_CHECK; - - _tao_server_request.init_reply (ACE_TRY_ENV); - ACE_CHECK; - TAO_OutputCDR &_tao_out = _tao_server_request.outgoing (); - if (!( - (_tao_out << _tao_retval.in ()) - )) - ACE_THROW (CORBA::MARSHAL () ); -} - -void POA_CORBA::TypeCodeFactory::create_component_tc_skel ( - TAO_ServerRequest &_tao_server_request, - void *_tao_object_reference, - void * /* context */, - CORBA::Environment &ACE_TRY_ENV -) -{ - TAO_InputCDR &_tao_in = _tao_server_request.incoming (); - POA_CORBA::TypeCodeFactory *_tao_impl = (POA_CORBA::TypeCodeFactory *)_tao_object_reference; - - CORBA::TypeCode_var _tao_retval; - CORBA::String_var id; - CORBA::String_var name; - if (!( - (_tao_in >> id.out ()) && - (_tao_in >> name.out ()) - )) - ACE_THROW (CORBA::MARSHAL () ); - - _tao_retval = _tao_impl->create_component_tc ( - id.in (), - name.in (), - ACE_TRY_ENV - ); - - ACE_CHECK; - - _tao_server_request.init_reply (ACE_TRY_ENV); - ACE_CHECK; - TAO_OutputCDR &_tao_out = _tao_server_request.outgoing (); - if (!( - (_tao_out << _tao_retval.in ()) - )) - ACE_THROW (CORBA::MARSHAL () ); -} - -void POA_CORBA::TypeCodeFactory::create_home_tc_skel ( - TAO_ServerRequest &_tao_server_request, - void *_tao_object_reference, - void * /* context */, - CORBA::Environment &ACE_TRY_ENV -) -{ - TAO_InputCDR &_tao_in = _tao_server_request.incoming (); - POA_CORBA::TypeCodeFactory *_tao_impl = (POA_CORBA::TypeCodeFactory *)_tao_object_reference; - - CORBA::TypeCode_var _tao_retval; - CORBA::String_var id; - CORBA::String_var name; - if (!( - (_tao_in >> id.out ()) && - (_tao_in >> name.out ()) - )) - ACE_THROW (CORBA::MARSHAL () ); - - _tao_retval = _tao_impl->create_home_tc ( - id.in (), - name.in (), - ACE_TRY_ENV - ); - - ACE_CHECK; - - _tao_server_request.init_reply (ACE_TRY_ENV); - ACE_CHECK; - TAO_OutputCDR &_tao_out = _tao_server_request.outgoing (); - if (!( - (_tao_out << _tao_retval.in ()) - )) - ACE_THROW (CORBA::MARSHAL () ); -} - -void POA_CORBA::TypeCodeFactory::_is_a_skel ( - TAO_ServerRequest &_tao_server_request, - void * _tao_object_reference, - void * /* context */, - CORBA::Environment &ACE_TRY_ENV - ) -{ - TAO_InputCDR &_tao_in = _tao_server_request.incoming (); - POA_CORBA::TypeCodeFactory *_tao_impl = (POA_CORBA::TypeCodeFactory *) _tao_object_reference; - CORBA::Boolean _tao_retval = 0; - CORBA::String_var value; - if (!((_tao_in >> value.out ()))) - ACE_THROW (CORBA::MARSHAL ()); - - _tao_retval = _tao_impl->_is_a (value.in (), ACE_TRY_ENV); - ACE_CHECK; - - _tao_server_request.init_reply (ACE_TRY_ENV); - ACE_CHECK; - TAO_OutputCDR &_tao_out = _tao_server_request.outgoing (); - if (!((_tao_out << CORBA::Any::from_boolean (_tao_retval)))) - ACE_THROW (CORBA::MARSHAL ()); -} - -void POA_CORBA::TypeCodeFactory::_non_existent_skel ( - TAO_ServerRequest &_tao_server_request, - void * _tao_object_reference, - void * /* context */, - CORBA::Environment &ACE_TRY_ENV - ) -{ - POA_CORBA::TypeCodeFactory *_tao_impl = (POA_CORBA::TypeCodeFactory *) _tao_object_reference; - CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_TRY_ENV); - ACE_CHECK; - - _tao_server_request.init_reply (ACE_TRY_ENV); - ACE_CHECK; - TAO_OutputCDR &_tao_out = _tao_server_request.outgoing (); - if (!((_tao_out << CORBA::Any::from_boolean (_tao_retval)))) - ACE_THROW (CORBA::MARSHAL ()); -} - -CORBA::Boolean POA_CORBA::TypeCodeFactory::_is_a ( - const char* value, - CORBA::Environment &ACE_TRY_ENV - ) -{ - if ( - (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/TypeCodeFactory:1.0")) || - (!ACE_OS::strcmp ((char *)value, CORBA::_tc_Object->id (ACE_TRY_ENV)))) - return 1; - else - return 0; -} - -void* POA_CORBA::TypeCodeFactory::_downcast ( - const char* logical_type_id - ) -{ -if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/TypeCodeFactory:1.0") == 0) - return ACE_static_cast (POA_CORBA::TypeCodeFactory_ptr, this); - if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Object:1.0") == 0) - return ACE_static_cast(PortableServer::Servant, this); - return 0; -} - -void POA_CORBA::TypeCodeFactory::_dispatch (TAO_ServerRequest &req, void *context, CORBA::Environment &ACE_TRY_ENV) -{ - this->synchronous_upcall_dispatch(req, context, this, ACE_TRY_ENV); -} - -const char* POA_CORBA::TypeCodeFactory::_interface_repository_id (void) const -{ - return "IDL:omg.org/CORBA/TypeCodeFactory:1.0"; -} - -CORBA::TypeCodeFactory* -POA_CORBA::TypeCodeFactory::_this (CORBA_Environment &ACE_TRY_ENV) -{ - TAO_Stub *stub = this->_create_stub (ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ()) - switch (stub->servant_orb_var ()->orb_core ()->get_collocation_strategy ()) - { - case TAO_ORB_Core::THRU_POA: - { - ::CORBA::TypeCodeFactory_ptr retval = 0; - ACE_NEW_RETURN ( - retval, - POA_CORBA::_tao_thru_poa_collocated_TypeCodeFactory (stub), - 0 - ); - return retval; - } - case TAO_ORB_Core::DIRECT: - ACE_THROW_RETURN (CORBA::BAD_PARAM (), 0); - default: - ACE_THROW_RETURN (CORBA::BAD_PARAM (), 0); - } - else - { - // stub->_incr_refcnt (); - CORBA::Object_ptr tmp = CORBA::Object::_nil (); - ACE_NEW_RETURN (tmp, CORBA::Object (stub), 0); - CORBA::Object_var obj = tmp; - return ::CORBA::TypeCodeFactory::_unchecked_narrow (obj.in ()); - } -} - -POA_CORBA::_tao_thru_poa_collocated_TypeCodeFactory::_tao_thru_poa_collocated_TypeCodeFactory ( - TAO_Stub *stub -) - : CORBA_Object (stub, 1) -{ -} - -CORBA::Boolean POA_CORBA::_tao_thru_poa_collocated_TypeCodeFactory::_is_a( - const CORBA::Char *logical_type_id, - CORBA_Environment &ACE_TRY_ENV - ) - -{ - TAO_Object_Adapter::Servant_Upcall servant_upcall ( - this->_stubobj ()->servant_orb_var ()->orb_core () - ); - CORBA::Object_var forward_to; - servant_upcall.prepare_for_upcall ( - this->_object_key (), - "_is_a", - forward_to.out (), - ACE_TRY_ENV - ); - ACE_CHECK_RETURN (0); - return ACE_reinterpret_cast ( - POA_CORBA::TypeCodeFactory_ptr, - servant_upcall.servant ()->_downcast ( - "IDL:omg.org/CORBA/TypeCodeFactory:1.0" - ) - )->_is_a (logical_type_id, ACE_TRY_ENV); -} - - -CORBA::Boolean POA_CORBA::_tao_thru_poa_collocated_TypeCodeFactory::_non_existent( - CORBA_Environment &ACE_TRY_ENV - ) - -{ - TAO_Object_Adapter::Servant_Upcall servant_upcall ( - this->_stubobj ()->servant_orb_var ()->orb_core () - ); - CORBA::Object_var forward_to; - servant_upcall.prepare_for_upcall ( - this->_object_key (), - "_non_existent", - forward_to.out (), - ACE_TRY_ENV - ); - ACE_CHECK_RETURN (0); - return ACE_reinterpret_cast ( - POA_CORBA::TypeCodeFactory_ptr, - servant_upcall.servant ()->_downcast ( - "IDL:omg.org/CORBA/TypeCodeFactory:1.0" - ) - )->_non_existent (ACE_TRY_ENV); -} - - -CORBA::TypeCode_ptr POA_CORBA::_tao_thru_poa_collocated_TypeCodeFactory::create_struct_tc ( - const char * id, - const char * name, - const IR::StructMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - CORBA::TypeCode_var _tao_retval; - ACE_UNUSED_ARG (_tao_retval); - TAO_Object_Adapter::Servant_Upcall servant_upcall ( - this->_stubobj ()->servant_orb_var ()->orb_core () - ); - CORBA::Object_var forward_to; - servant_upcall.prepare_for_upcall ( - this->_object_key (), - "create_struct_tc", - forward_to.out (), - ACE_TRY_ENV - ); - ACE_CHECK_RETURN (0); - return ACE_reinterpret_cast ( - POA_CORBA::TypeCodeFactory_ptr, - servant_upcall.servant ()->_downcast ( - "IDL:omg.org/CORBA/TypeCodeFactory:1.0" - ) - )->create_struct_tc ( - id, - name, - members, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr POA_CORBA::_tao_thru_poa_collocated_TypeCodeFactory::create_union_tc ( - const char * id, - const char * name, - CORBA::TypeCode_ptr discriminator_type, - const IR::UnionMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - CORBA::TypeCode_var _tao_retval; - ACE_UNUSED_ARG (_tao_retval); - TAO_Object_Adapter::Servant_Upcall servant_upcall ( - this->_stubobj ()->servant_orb_var ()->orb_core () - ); - CORBA::Object_var forward_to; - servant_upcall.prepare_for_upcall ( - this->_object_key (), - "create_union_tc", - forward_to.out (), - ACE_TRY_ENV - ); - ACE_CHECK_RETURN (0); - return ACE_reinterpret_cast ( - POA_CORBA::TypeCodeFactory_ptr, - servant_upcall.servant ()->_downcast ( - "IDL:omg.org/CORBA/TypeCodeFactory:1.0" - ) - )->create_union_tc ( - id, - name, - discriminator_type, - members, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr POA_CORBA::_tao_thru_poa_collocated_TypeCodeFactory::create_enum_tc ( - const char * id, - const char * name, - const IR::EnumMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - CORBA::TypeCode_var _tao_retval; - ACE_UNUSED_ARG (_tao_retval); - TAO_Object_Adapter::Servant_Upcall servant_upcall ( - this->_stubobj ()->servant_orb_var ()->orb_core () - ); - CORBA::Object_var forward_to; - servant_upcall.prepare_for_upcall ( - this->_object_key (), - "create_enum_tc", - forward_to.out (), - ACE_TRY_ENV - ); - ACE_CHECK_RETURN (0); - return ACE_reinterpret_cast ( - POA_CORBA::TypeCodeFactory_ptr, - servant_upcall.servant ()->_downcast ( - "IDL:omg.org/CORBA/TypeCodeFactory:1.0" - ) - )->create_enum_tc ( - id, - name, - members, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr POA_CORBA::_tao_thru_poa_collocated_TypeCodeFactory::create_alias_tc ( - const char * id, - const char * name, - CORBA::TypeCode_ptr original_type, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - CORBA::TypeCode_var _tao_retval; - ACE_UNUSED_ARG (_tao_retval); - TAO_Object_Adapter::Servant_Upcall servant_upcall ( - this->_stubobj ()->servant_orb_var ()->orb_core () - ); - CORBA::Object_var forward_to; - servant_upcall.prepare_for_upcall ( - this->_object_key (), - "create_alias_tc", - forward_to.out (), - ACE_TRY_ENV - ); - ACE_CHECK_RETURN (0); - return ACE_reinterpret_cast ( - POA_CORBA::TypeCodeFactory_ptr, - servant_upcall.servant ()->_downcast ( - "IDL:omg.org/CORBA/TypeCodeFactory:1.0" - ) - )->create_alias_tc ( - id, - name, - original_type, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr POA_CORBA::_tao_thru_poa_collocated_TypeCodeFactory::create_exception_tc ( - const char * id, - const char * name, - const IR::StructMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - CORBA::TypeCode_var _tao_retval; - ACE_UNUSED_ARG (_tao_retval); - TAO_Object_Adapter::Servant_Upcall servant_upcall ( - this->_stubobj ()->servant_orb_var ()->orb_core () - ); - CORBA::Object_var forward_to; - servant_upcall.prepare_for_upcall ( - this->_object_key (), - "create_exception_tc", - forward_to.out (), - ACE_TRY_ENV - ); - ACE_CHECK_RETURN (0); - return ACE_reinterpret_cast ( - POA_CORBA::TypeCodeFactory_ptr, - servant_upcall.servant ()->_downcast ( - "IDL:omg.org/CORBA/TypeCodeFactory:1.0" - ) - )->create_exception_tc ( - id, - name, - members, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr POA_CORBA::_tao_thru_poa_collocated_TypeCodeFactory::create_interface_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - CORBA::TypeCode_var _tao_retval; - ACE_UNUSED_ARG (_tao_retval); - TAO_Object_Adapter::Servant_Upcall servant_upcall ( - this->_stubobj ()->servant_orb_var ()->orb_core () - ); - CORBA::Object_var forward_to; - servant_upcall.prepare_for_upcall ( - this->_object_key (), - "create_interface_tc", - forward_to.out (), - ACE_TRY_ENV - ); - ACE_CHECK_RETURN (0); - return ACE_reinterpret_cast ( - POA_CORBA::TypeCodeFactory_ptr, - servant_upcall.servant ()->_downcast ( - "IDL:omg.org/CORBA/TypeCodeFactory:1.0" - ) - )->create_interface_tc ( - id, - name, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr POA_CORBA::_tao_thru_poa_collocated_TypeCodeFactory::create_string_tc ( - CORBA::ULong bound, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - CORBA::TypeCode_var _tao_retval; - ACE_UNUSED_ARG (_tao_retval); - TAO_Object_Adapter::Servant_Upcall servant_upcall ( - this->_stubobj ()->servant_orb_var ()->orb_core () - ); - CORBA::Object_var forward_to; - servant_upcall.prepare_for_upcall ( - this->_object_key (), - "create_string_tc", - forward_to.out (), - ACE_TRY_ENV - ); - ACE_CHECK_RETURN (0); - return ACE_reinterpret_cast ( - POA_CORBA::TypeCodeFactory_ptr, - servant_upcall.servant ()->_downcast ( - "IDL:omg.org/CORBA/TypeCodeFactory:1.0" - ) - )->create_string_tc ( - bound, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr POA_CORBA::_tao_thru_poa_collocated_TypeCodeFactory::create_wstring_tc ( - CORBA::ULong bound, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - CORBA::TypeCode_var _tao_retval; - ACE_UNUSED_ARG (_tao_retval); - TAO_Object_Adapter::Servant_Upcall servant_upcall ( - this->_stubobj ()->servant_orb_var ()->orb_core () - ); - CORBA::Object_var forward_to; - servant_upcall.prepare_for_upcall ( - this->_object_key (), - "create_wstring_tc", - forward_to.out (), - ACE_TRY_ENV - ); - ACE_CHECK_RETURN (0); - return ACE_reinterpret_cast ( - POA_CORBA::TypeCodeFactory_ptr, - servant_upcall.servant ()->_downcast ( - "IDL:omg.org/CORBA/TypeCodeFactory:1.0" - ) - )->create_wstring_tc ( - bound, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr POA_CORBA::_tao_thru_poa_collocated_TypeCodeFactory::create_fixed_tc ( - CORBA::UShort digits, - CORBA::UShort scale, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - CORBA::TypeCode_var _tao_retval; - ACE_UNUSED_ARG (_tao_retval); - TAO_Object_Adapter::Servant_Upcall servant_upcall ( - this->_stubobj ()->servant_orb_var ()->orb_core () - ); - CORBA::Object_var forward_to; - servant_upcall.prepare_for_upcall ( - this->_object_key (), - "create_fixed_tc", - forward_to.out (), - ACE_TRY_ENV - ); - ACE_CHECK_RETURN (0); - return ACE_reinterpret_cast ( - POA_CORBA::TypeCodeFactory_ptr, - servant_upcall.servant ()->_downcast ( - "IDL:omg.org/CORBA/TypeCodeFactory:1.0" - ) - )->create_fixed_tc ( - digits, - scale, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr POA_CORBA::_tao_thru_poa_collocated_TypeCodeFactory::create_sequence_tc ( - CORBA::ULong bound, - CORBA::TypeCode_ptr element_type, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - CORBA::TypeCode_var _tao_retval; - ACE_UNUSED_ARG (_tao_retval); - TAO_Object_Adapter::Servant_Upcall servant_upcall ( - this->_stubobj ()->servant_orb_var ()->orb_core () - ); - CORBA::Object_var forward_to; - servant_upcall.prepare_for_upcall ( - this->_object_key (), - "create_sequence_tc", - forward_to.out (), - ACE_TRY_ENV - ); - ACE_CHECK_RETURN (0); - return ACE_reinterpret_cast ( - POA_CORBA::TypeCodeFactory_ptr, - servant_upcall.servant ()->_downcast ( - "IDL:omg.org/CORBA/TypeCodeFactory:1.0" - ) - )->create_sequence_tc ( - bound, - element_type, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr POA_CORBA::_tao_thru_poa_collocated_TypeCodeFactory::create_array_tc ( - CORBA::ULong length, - CORBA::TypeCode_ptr element_type, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - CORBA::TypeCode_var _tao_retval; - ACE_UNUSED_ARG (_tao_retval); - TAO_Object_Adapter::Servant_Upcall servant_upcall ( - this->_stubobj ()->servant_orb_var ()->orb_core () - ); - CORBA::Object_var forward_to; - servant_upcall.prepare_for_upcall ( - this->_object_key (), - "create_array_tc", - forward_to.out (), - ACE_TRY_ENV - ); - ACE_CHECK_RETURN (0); - return ACE_reinterpret_cast ( - POA_CORBA::TypeCodeFactory_ptr, - servant_upcall.servant ()->_downcast ( - "IDL:omg.org/CORBA/TypeCodeFactory:1.0" - ) - )->create_array_tc ( - length, - element_type, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr POA_CORBA::_tao_thru_poa_collocated_TypeCodeFactory::create_value_tc ( - const char * id, - const char * name, - CORBA::ValueModifier type_modifier, - CORBA::TypeCode_ptr concrete_base, - const IR::ValueMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - CORBA::TypeCode_var _tao_retval; - ACE_UNUSED_ARG (_tao_retval); - TAO_Object_Adapter::Servant_Upcall servant_upcall ( - this->_stubobj ()->servant_orb_var ()->orb_core () - ); - CORBA::Object_var forward_to; - servant_upcall.prepare_for_upcall ( - this->_object_key (), - "create_value_tc", - forward_to.out (), - ACE_TRY_ENV - ); - ACE_CHECK_RETURN (0); - return ACE_reinterpret_cast ( - POA_CORBA::TypeCodeFactory_ptr, - servant_upcall.servant ()->_downcast ( - "IDL:omg.org/CORBA/TypeCodeFactory:1.0" - ) - )->create_value_tc ( - id, - name, - type_modifier, - concrete_base, - members, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr POA_CORBA::_tao_thru_poa_collocated_TypeCodeFactory::create_value_box_tc ( - const char * id, - const char * name, - CORBA::TypeCode_ptr boxed_type, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - CORBA::TypeCode_var _tao_retval; - ACE_UNUSED_ARG (_tao_retval); - TAO_Object_Adapter::Servant_Upcall servant_upcall ( - this->_stubobj ()->servant_orb_var ()->orb_core () - ); - CORBA::Object_var forward_to; - servant_upcall.prepare_for_upcall ( - this->_object_key (), - "create_value_box_tc", - forward_to.out (), - ACE_TRY_ENV - ); - ACE_CHECK_RETURN (0); - return ACE_reinterpret_cast ( - POA_CORBA::TypeCodeFactory_ptr, - servant_upcall.servant ()->_downcast ( - "IDL:omg.org/CORBA/TypeCodeFactory:1.0" - ) - )->create_value_box_tc ( - id, - name, - boxed_type, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr POA_CORBA::_tao_thru_poa_collocated_TypeCodeFactory::create_native_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - CORBA::TypeCode_var _tao_retval; - ACE_UNUSED_ARG (_tao_retval); - TAO_Object_Adapter::Servant_Upcall servant_upcall ( - this->_stubobj ()->servant_orb_var ()->orb_core () - ); - CORBA::Object_var forward_to; - servant_upcall.prepare_for_upcall ( - this->_object_key (), - "create_native_tc", - forward_to.out (), - ACE_TRY_ENV - ); - ACE_CHECK_RETURN (0); - return ACE_reinterpret_cast ( - POA_CORBA::TypeCodeFactory_ptr, - servant_upcall.servant ()->_downcast ( - "IDL:omg.org/CORBA/TypeCodeFactory:1.0" - ) - )->create_native_tc ( - id, - name, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr POA_CORBA::_tao_thru_poa_collocated_TypeCodeFactory::create_recursive_tc ( - const char * id, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - CORBA::TypeCode_var _tao_retval; - ACE_UNUSED_ARG (_tao_retval); - TAO_Object_Adapter::Servant_Upcall servant_upcall ( - this->_stubobj ()->servant_orb_var ()->orb_core () - ); - CORBA::Object_var forward_to; - servant_upcall.prepare_for_upcall ( - this->_object_key (), - "create_recursive_tc", - forward_to.out (), - ACE_TRY_ENV - ); - ACE_CHECK_RETURN (0); - return ACE_reinterpret_cast ( - POA_CORBA::TypeCodeFactory_ptr, - servant_upcall.servant ()->_downcast ( - "IDL:omg.org/CORBA/TypeCodeFactory:1.0" - ) - )->create_recursive_tc ( - id, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr POA_CORBA::_tao_thru_poa_collocated_TypeCodeFactory::create_abstract_interface_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - CORBA::TypeCode_var _tao_retval; - ACE_UNUSED_ARG (_tao_retval); - TAO_Object_Adapter::Servant_Upcall servant_upcall ( - this->_stubobj ()->servant_orb_var ()->orb_core () - ); - CORBA::Object_var forward_to; - servant_upcall.prepare_for_upcall ( - this->_object_key (), - "create_abstract_interface_tc", - forward_to.out (), - ACE_TRY_ENV - ); - ACE_CHECK_RETURN (0); - return ACE_reinterpret_cast ( - POA_CORBA::TypeCodeFactory_ptr, - servant_upcall.servant ()->_downcast ( - "IDL:omg.org/CORBA/TypeCodeFactory:1.0" - ) - )->create_abstract_interface_tc ( - id, - name, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr POA_CORBA::_tao_thru_poa_collocated_TypeCodeFactory::create_component_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - CORBA::TypeCode_var _tao_retval; - ACE_UNUSED_ARG (_tao_retval); - TAO_Object_Adapter::Servant_Upcall servant_upcall ( - this->_stubobj ()->servant_orb_var ()->orb_core () - ); - CORBA::Object_var forward_to; - servant_upcall.prepare_for_upcall ( - this->_object_key (), - "create_component_tc", - forward_to.out (), - ACE_TRY_ENV - ); - ACE_CHECK_RETURN (0); - return ACE_reinterpret_cast ( - POA_CORBA::TypeCodeFactory_ptr, - servant_upcall.servant ()->_downcast ( - "IDL:omg.org/CORBA/TypeCodeFactory:1.0" - ) - )->create_component_tc ( - id, - name, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr POA_CORBA::_tao_thru_poa_collocated_TypeCodeFactory::create_home_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - CORBA::TypeCode_var _tao_retval; - ACE_UNUSED_ARG (_tao_retval); - TAO_Object_Adapter::Servant_Upcall servant_upcall ( - this->_stubobj ()->servant_orb_var ()->orb_core () - ); - CORBA::Object_var forward_to; - servant_upcall.prepare_for_upcall ( - this->_object_key (), - "create_home_tc", - forward_to.out (), - ACE_TRY_ENV - ); - ACE_CHECK_RETURN (0); - return ACE_reinterpret_cast ( - POA_CORBA::TypeCodeFactory_ptr, - servant_upcall.servant ()->_downcast ( - "IDL:omg.org/CORBA/TypeCodeFactory:1.0" - ) - )->create_home_tc ( - id, - name, - ACE_TRY_ENV - ); - -} diff --git a/TAO/tao/Interface.pidl b/TAO/tao/Interface.pidl index b0b435813bf..11e21a086ff 100644 --- a/TAO/tao/Interface.pidl +++ b/TAO/tao/Interface.pidl @@ -962,7 +962,7 @@ module CORBA // the TypeCodeFactory interface. // A reference to this interface can be obtained from // resolve_initial_references with argument "TypeCodeFactory". - interface TypeCodeFactory + local interface TypeCodeFactory { // PIDL TypeCode create_struct_tc ( in RepositoryId id, diff --git a/TAO/tao/InterfaceC.cpp b/TAO/tao/InterfaceC.cpp index 13b692d5113..538d2d4b95d 100644 --- a/TAO/tao/InterfaceC.cpp +++ b/TAO/tao/InterfaceC.cpp @@ -27805,1738 +27805,6 @@ void IR_HomeDescription::_tao_any_destructor (void *x) delete tmp; } -void CORBA::TypeCodeFactory::_tao_any_destructor (void *x) -{ - CORBA::TypeCodeFactory *tmp = ACE_static_cast (CORBA::TypeCodeFactory*,x); - CORBA::release (tmp); -} - -CORBA::TypeCodeFactory_ptr CORBA::TypeCodeFactory::_narrow ( - CORBA::Object_ptr obj, - CORBA::Environment &ACE_TRY_ENV - ) -{ - if (CORBA::is_nil (obj)) - return CORBA::TypeCodeFactory::_nil (); - CORBA::Boolean is_a = obj->_is_a ("IDL:omg.org/CORBA/TypeCodeFactory:1.0", ACE_TRY_ENV); - ACE_CHECK_RETURN (CORBA::TypeCodeFactory::_nil ()); - if (is_a == 0) - return CORBA::TypeCodeFactory::_nil (); - return CORBA::TypeCodeFactory::_unchecked_narrow (obj, ACE_TRY_ENV); -} - -CORBA::TypeCodeFactory_ptr CORBA::TypeCodeFactory::_unchecked_narrow ( - CORBA::Object_ptr obj, - CORBA::Environment & - ) -{ - if (CORBA::is_nil (obj)) - return CORBA::TypeCodeFactory::_nil (); - TAO_Stub* stub = obj->_stubobj (); - if (stub) - stub->_incr_refcnt (); - CORBA::TypeCodeFactory_ptr default_proxy = CORBA::TypeCodeFactory::_nil (); - if (obj->_is_collocated () && _TAO_collocation_CORBA_TypeCodeFactory_Stub_Factory_function_pointer != 0) - { - default_proxy = _TAO_collocation_CORBA_TypeCodeFactory_Stub_Factory_function_pointer (obj); - } - if (CORBA::is_nil (default_proxy)) - ACE_NEW_RETURN (default_proxy, CORBA::TypeCodeFactory (stub), CORBA::TypeCodeFactory::_nil ()); - return TAO_CORBA_TypeCodeFactory_PROXY_FACTORY_ADAPTER::instance ()->create_proxy (default_proxy); -} - -CORBA::TypeCodeFactory_ptr -CORBA::TypeCodeFactory::_duplicate (CORBA::TypeCodeFactory_ptr obj) -{ - if (!CORBA::is_nil (obj)) - obj->_add_ref (); - return obj; -} - -CORBA::TypeCode_ptr CORBA::TypeCodeFactory::create_struct_tc ( - const char * id, - const char * name, - const IR_StructMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - - CORBA::TypeCode_ptr _tao_retval = CORBA::TypeCode::_nil (); - CORBA::TypeCode_var _tao_safe_retval (_tao_retval); - - - TAO_Stub *istub = this->_stubobj (); - if (istub == 0) - ACE_THROW_RETURN (CORBA::INTERNAL (), 0); - - - TAO_GIOP_Twoway_Invocation _tao_call ( - istub, - "create_struct_tc", - 16, - istub->orb_core () - ); - for (;;) - { - _tao_call.start (ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - CORBA::Short flag = TAO_TWOWAY_RESPONSE_FLAG; - // Tremporary hack until GIOP 1.2 is implemented. - - _tao_call.prepare_header (ACE_static_cast (CORBA::Octet, flag), ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - TAO_OutputCDR &_tao_out = _tao_call.out_stream (); - if (!( - (_tao_out << id) && - (_tao_out << name) && - (_tao_out << members) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (), 0); - - int _invoke_status = - _tao_call.invoke (0, 0, ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - if (_invoke_status == TAO_INVOKE_RESTART) - continue; - if (_invoke_status != TAO_INVOKE_OK) - { - ACE_THROW_RETURN (CORBA::UNKNOWN (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - - } - TAO_InputCDR &_tao_in = _tao_call.inp_stream (); - if (!( - (_tao_in >> _tao_safe_retval.inout ()) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - - break; - - } - return _tao_safe_retval._retn (); -} - -CORBA::TypeCode_ptr CORBA::TypeCodeFactory::create_union_tc ( - const char * id, - const char * name, - CORBA::TypeCode_ptr discriminator_type, - const IR_UnionMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - - CORBA::TypeCode_ptr _tao_retval = CORBA::TypeCode::_nil (); - CORBA::TypeCode_var _tao_safe_retval (_tao_retval); - - - TAO_Stub *istub = this->_stubobj (); - if (istub == 0) - ACE_THROW_RETURN (CORBA::INTERNAL (), 0); - - - TAO_GIOP_Twoway_Invocation _tao_call ( - istub, - "create_union_tc", - 15, - istub->orb_core () - ); - - - for (;;) - { - _tao_call.start (ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - CORBA::Short flag = TAO_TWOWAY_RESPONSE_FLAG; - // Tremporary hack until GIOP 1.2 is implemented. - - _tao_call.prepare_header (ACE_static_cast (CORBA::Octet, flag), ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - TAO_OutputCDR &_tao_out = _tao_call.out_stream (); - if (!( - (_tao_out << id) && - (_tao_out << name) && - (_tao_out << discriminator_type) && - (_tao_out << members) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (), 0); - - int _invoke_status = - _tao_call.invoke (0, 0, ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - if (_invoke_status == TAO_INVOKE_RESTART) - continue; - if (_invoke_status != TAO_INVOKE_OK) - { - ACE_THROW_RETURN (CORBA::UNKNOWN (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - - } - TAO_InputCDR &_tao_in = _tao_call.inp_stream (); - if (!( - (_tao_in >> _tao_safe_retval.inout ()) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - - break; - - } - return _tao_safe_retval._retn (); -} - -CORBA::TypeCode_ptr CORBA::TypeCodeFactory::create_enum_tc ( - const char * id, - const char * name, - const IR_EnumMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - - CORBA::TypeCode_ptr _tao_retval = CORBA::TypeCode::_nil (); - CORBA::TypeCode_var _tao_safe_retval (_tao_retval); - - - TAO_Stub *istub = this->_stubobj (); - if (istub == 0) - ACE_THROW_RETURN (CORBA::INTERNAL (), 0); - - - TAO_GIOP_Twoway_Invocation _tao_call ( - istub, - "create_enum_tc", - 14, - istub->orb_core () - ); - - - for (;;) - { - _tao_call.start (ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - CORBA::Short flag = TAO_TWOWAY_RESPONSE_FLAG; - // Tremporary hack until GIOP 1.2 is implemented. - - _tao_call.prepare_header (ACE_static_cast (CORBA::Octet, flag), ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - TAO_OutputCDR &_tao_out = _tao_call.out_stream (); - if (!( - (_tao_out << id) && - (_tao_out << name) && - (_tao_out << members) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (), 0); - - int _invoke_status = - _tao_call.invoke (0, 0, ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - if (_invoke_status == TAO_INVOKE_RESTART) - continue; - if (_invoke_status != TAO_INVOKE_OK) - { - ACE_THROW_RETURN (CORBA::UNKNOWN (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - - } - TAO_InputCDR &_tao_in = _tao_call.inp_stream (); - if (!( - (_tao_in >> _tao_safe_retval.inout ()) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - break; - - } - return _tao_safe_retval._retn (); -} - -CORBA::TypeCode_ptr CORBA::TypeCodeFactory::create_alias_tc ( - const char * id, - const char * name, - CORBA::TypeCode_ptr original_type, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - - CORBA::TypeCode_ptr _tao_retval = CORBA::TypeCode::_nil (); - CORBA::TypeCode_var _tao_safe_retval (_tao_retval); - - - TAO_Stub *istub = this->_stubobj (); - if (istub == 0) - ACE_THROW_RETURN (CORBA::INTERNAL (), 0); - - - TAO_GIOP_Twoway_Invocation _tao_call ( - istub, - "create_alias_tc", - 15, - istub->orb_core () - ); - - - for (;;) - { - _tao_call.start (ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - CORBA::Short flag = TAO_TWOWAY_RESPONSE_FLAG; - // Tremporary hack until GIOP 1.2 is implemented. - - _tao_call.prepare_header (ACE_static_cast (CORBA::Octet, flag), ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - TAO_OutputCDR &_tao_out = _tao_call.out_stream (); - if (!( - (_tao_out << id) && - (_tao_out << name) && - (_tao_out << original_type) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (), 0); - - int _invoke_status = - _tao_call.invoke (0, 0, ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - if (_invoke_status == TAO_INVOKE_RESTART) - continue; - if (_invoke_status != TAO_INVOKE_OK) - { - ACE_THROW_RETURN (CORBA::UNKNOWN (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - - } - TAO_InputCDR &_tao_in = _tao_call.inp_stream (); - if (!( - (_tao_in >> _tao_safe_retval.inout ()) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - - break; - - } - return _tao_safe_retval._retn (); -} - -CORBA::TypeCode_ptr CORBA::TypeCodeFactory::create_exception_tc ( - const char * id, - const char * name, - const IR_StructMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - - CORBA::TypeCode_ptr _tao_retval = CORBA::TypeCode::_nil (); - CORBA::TypeCode_var _tao_safe_retval (_tao_retval); - - - TAO_Stub *istub = this->_stubobj (); - if (istub == 0) - ACE_THROW_RETURN (CORBA::INTERNAL (), 0); - - - TAO_GIOP_Twoway_Invocation _tao_call ( - istub, - "create_exception_tc", - 19, - istub->orb_core () - ); - - - for (;;) - { - _tao_call.start (ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - CORBA::Short flag = TAO_TWOWAY_RESPONSE_FLAG; - // Tremporary hack until GIOP 1.2 is implemented. - - _tao_call.prepare_header (ACE_static_cast (CORBA::Octet, flag), ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - TAO_OutputCDR &_tao_out = _tao_call.out_stream (); - if (!( - (_tao_out << id) && - (_tao_out << name) && - (_tao_out << members) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (), 0); - - int _invoke_status = - _tao_call.invoke (0, 0, ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - if (_invoke_status == TAO_INVOKE_RESTART) - continue; - if (_invoke_status != TAO_INVOKE_OK) - { - ACE_THROW_RETURN (CORBA::UNKNOWN (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - - } - TAO_InputCDR &_tao_in = _tao_call.inp_stream (); - if (!( - (_tao_in >> _tao_safe_retval.inout ()) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - break; - - } - return _tao_safe_retval._retn (); -} - -CORBA::TypeCode_ptr CORBA::TypeCodeFactory::create_interface_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - - CORBA::TypeCode_ptr _tao_retval = CORBA::TypeCode::_nil (); - CORBA::TypeCode_var _tao_safe_retval (_tao_retval); - - - TAO_Stub *istub = this->_stubobj (); - if (istub == 0) - ACE_THROW_RETURN (CORBA::INTERNAL (), 0); - - - TAO_GIOP_Twoway_Invocation _tao_call ( - istub, - "create_interface_tc", - 19, - istub->orb_core () - ); - - - for (;;) - { - _tao_call.start (ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - CORBA::Short flag = TAO_TWOWAY_RESPONSE_FLAG; - // Tremporary hack until GIOP 1.2 is implemented. - - _tao_call.prepare_header (ACE_static_cast (CORBA::Octet, flag), ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - TAO_OutputCDR &_tao_out = _tao_call.out_stream (); - if (!( - (_tao_out << id) && - (_tao_out << name) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (), 0); - - int _invoke_status = - _tao_call.invoke (0, 0, ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - if (_invoke_status == TAO_INVOKE_RESTART) - continue; - if (_invoke_status != TAO_INVOKE_OK) - { - ACE_THROW_RETURN (CORBA::UNKNOWN (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - - } - TAO_InputCDR &_tao_in = _tao_call.inp_stream (); - if (!( - (_tao_in >> _tao_safe_retval.inout ()) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - - break; - - } - return _tao_safe_retval._retn (); -} - -CORBA::TypeCode_ptr CORBA::TypeCodeFactory::create_string_tc ( - CORBA::ULong bound, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - - CORBA::TypeCode_ptr _tao_retval = CORBA::TypeCode::_nil (); - CORBA::TypeCode_var _tao_safe_retval (_tao_retval); - - - TAO_Stub *istub = this->_stubobj (); - if (istub == 0) - ACE_THROW_RETURN (CORBA::INTERNAL (), 0); - - - TAO_GIOP_Twoway_Invocation _tao_call ( - istub, - "create_string_tc", - 16, - istub->orb_core () - ); - - - for (;;) - { - _tao_call.start (ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - CORBA::Short flag = TAO_TWOWAY_RESPONSE_FLAG; - // Tremporary hack until GIOP 1.2 is implemented. - - _tao_call.prepare_header (ACE_static_cast (CORBA::Octet, flag), ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - TAO_OutputCDR &_tao_out = _tao_call.out_stream (); - if (!( - (_tao_out << bound) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (), 0); - - int _invoke_status = - _tao_call.invoke (0, 0, ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - if (_invoke_status == TAO_INVOKE_RESTART) - continue; - if (_invoke_status != TAO_INVOKE_OK) - { - ACE_THROW_RETURN (CORBA::UNKNOWN (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - - } - TAO_InputCDR &_tao_in = _tao_call.inp_stream (); - if (!( - (_tao_in >> _tao_safe_retval.inout ()) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - - break; - - } - return _tao_safe_retval._retn (); -} - -CORBA::TypeCode_ptr CORBA::TypeCodeFactory::create_wstring_tc ( - CORBA::ULong bound, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - - CORBA::TypeCode_ptr _tao_retval = CORBA::TypeCode::_nil (); - CORBA::TypeCode_var _tao_safe_retval (_tao_retval); - - - TAO_Stub *istub = this->_stubobj (); - if (istub == 0) - ACE_THROW_RETURN (CORBA::INTERNAL (), 0); - - - TAO_GIOP_Twoway_Invocation _tao_call ( - istub, - "create_wstring_tc", - 17, - istub->orb_core () - ); - - - for (;;) - { - _tao_call.start (ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - CORBA::Short flag = TAO_TWOWAY_RESPONSE_FLAG; - // Tremporary hack until GIOP 1.2 is implemented. - - _tao_call.prepare_header (ACE_static_cast (CORBA::Octet, flag), ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - TAO_OutputCDR &_tao_out = _tao_call.out_stream (); - if (!( - (_tao_out << bound) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (), 0); - - int _invoke_status = - _tao_call.invoke (0, 0, ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - if (_invoke_status == TAO_INVOKE_RESTART) - continue; - if (_invoke_status != TAO_INVOKE_OK) - { - ACE_THROW_RETURN (CORBA::UNKNOWN (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - - } - TAO_InputCDR &_tao_in = _tao_call.inp_stream (); - if (!( - (_tao_in >> _tao_safe_retval.inout ()) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - - break; - - } - return _tao_safe_retval._retn (); -} - -CORBA::TypeCode_ptr CORBA::TypeCodeFactory::create_fixed_tc ( - CORBA::UShort digits, - CORBA::UShort scale, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - - CORBA::TypeCode_ptr _tao_retval = CORBA::TypeCode::_nil (); - CORBA::TypeCode_var _tao_safe_retval (_tao_retval); - - - TAO_Stub *istub = this->_stubobj (); - if (istub == 0) - ACE_THROW_RETURN (CORBA::INTERNAL (), 0); - - - TAO_GIOP_Twoway_Invocation _tao_call ( - istub, - "create_fixed_tc", - 15, - istub->orb_core () - ); - - - for (;;) - { - _tao_call.start (ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - CORBA::Short flag = TAO_TWOWAY_RESPONSE_FLAG; - // Tremporary hack until GIOP 1.2 is implemented. - - _tao_call.prepare_header (ACE_static_cast (CORBA::Octet, flag), ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - TAO_OutputCDR &_tao_out = _tao_call.out_stream (); - if (!( - (_tao_out << digits) && - (_tao_out << scale) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (), 0); - - int _invoke_status = - _tao_call.invoke (0, 0, ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - if (_invoke_status == TAO_INVOKE_RESTART) - continue; - if (_invoke_status != TAO_INVOKE_OK) - { - ACE_THROW_RETURN (CORBA::UNKNOWN (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - - } - TAO_InputCDR &_tao_in = _tao_call.inp_stream (); - if (!( - (_tao_in >> _tao_safe_retval.inout ()) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - - break; - - } - return _tao_safe_retval._retn (); -} - -CORBA::TypeCode_ptr CORBA::TypeCodeFactory::create_sequence_tc ( - CORBA::ULong bound, - CORBA::TypeCode_ptr element_type, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - - CORBA::TypeCode_ptr _tao_retval = CORBA::TypeCode::_nil (); - CORBA::TypeCode_var _tao_safe_retval (_tao_retval); - - - TAO_Stub *istub = this->_stubobj (); - if (istub == 0) - ACE_THROW_RETURN (CORBA::INTERNAL (), 0); - - - TAO_GIOP_Twoway_Invocation _tao_call ( - istub, - "create_sequence_tc", - 18, - istub->orb_core () - ); - - - for (;;) - { - _tao_call.start (ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - CORBA::Short flag = TAO_TWOWAY_RESPONSE_FLAG; - // Tremporary hack until GIOP 1.2 is implemented. - - _tao_call.prepare_header (ACE_static_cast (CORBA::Octet, flag), ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - TAO_OutputCDR &_tao_out = _tao_call.out_stream (); - if (!( - (_tao_out << bound) && - (_tao_out << element_type) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (), 0); - - int _invoke_status = - _tao_call.invoke (0, 0, ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - if (_invoke_status == TAO_INVOKE_RESTART) - continue; - if (_invoke_status != TAO_INVOKE_OK) - { - ACE_THROW_RETURN (CORBA::UNKNOWN (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - - } - TAO_InputCDR &_tao_in = _tao_call.inp_stream (); - if (!( - (_tao_in >> _tao_safe_retval.inout ()) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - - break; - - } - - return _tao_safe_retval._retn (); -} - -CORBA::TypeCode_ptr CORBA::TypeCodeFactory::create_array_tc ( - CORBA::ULong length, - CORBA::TypeCode_ptr element_type, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - - CORBA::TypeCode_ptr _tao_retval = CORBA::TypeCode::_nil (); - CORBA::TypeCode_var _tao_safe_retval (_tao_retval); - - - TAO_Stub *istub = this->_stubobj (); - if (istub == 0) - ACE_THROW_RETURN (CORBA::INTERNAL (), 0); - - - TAO_GIOP_Twoway_Invocation _tao_call ( - istub, - "create_array_tc", - 15, - istub->orb_core () - ); - - - for (;;) - { - _tao_call.start (ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - CORBA::Short flag = TAO_TWOWAY_RESPONSE_FLAG; - // Tremporary hack until GIOP 1.2 is implemented. - - _tao_call.prepare_header (ACE_static_cast (CORBA::Octet, flag), ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - TAO_OutputCDR &_tao_out = _tao_call.out_stream (); - if (!( - (_tao_out << length) && - (_tao_out << element_type) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (), 0); - - int _invoke_status = - _tao_call.invoke (0, 0, ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - if (_invoke_status == TAO_INVOKE_RESTART) - continue; - if (_invoke_status != TAO_INVOKE_OK) - { - ACE_THROW_RETURN (CORBA::UNKNOWN (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - - } - TAO_InputCDR &_tao_in = _tao_call.inp_stream (); - if (!( - (_tao_in >> _tao_safe_retval.inout ()) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - - break; - - } - return _tao_safe_retval._retn (); -} - -CORBA::TypeCode_ptr CORBA::TypeCodeFactory::create_value_tc ( - const char * id, - const char * name, - CORBA::ValueModifier type_modifier, - CORBA::TypeCode_ptr concrete_base, - const IR_ValueMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - - CORBA::TypeCode_ptr _tao_retval = CORBA::TypeCode::_nil (); - CORBA::TypeCode_var _tao_safe_retval (_tao_retval); - - - TAO_Stub *istub = this->_stubobj (); - if (istub == 0) - ACE_THROW_RETURN (CORBA::INTERNAL (), 0); - - - TAO_GIOP_Twoway_Invocation _tao_call ( - istub, - "create_value_tc", - 15, - istub->orb_core () - ); - - - for (;;) - { - _tao_call.start (ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - CORBA::Short flag = TAO_TWOWAY_RESPONSE_FLAG; - // Tremporary hack until GIOP 1.2 is implemented. - - _tao_call.prepare_header (ACE_static_cast (CORBA::Octet, flag), ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - TAO_OutputCDR &_tao_out = _tao_call.out_stream (); - if (!( - (_tao_out << id) && - (_tao_out << name) && - (_tao_out << type_modifier) && - (_tao_out << concrete_base) && - (_tao_out << members) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (), 0); - - int _invoke_status = - _tao_call.invoke (0, 0, ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - if (_invoke_status == TAO_INVOKE_RESTART) - continue; - if (_invoke_status != TAO_INVOKE_OK) - { - ACE_THROW_RETURN (CORBA::UNKNOWN (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - - } - TAO_InputCDR &_tao_in = _tao_call.inp_stream (); - if (!( - (_tao_in >> _tao_safe_retval.inout ()) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - - break; - - } - return _tao_safe_retval._retn (); -} - -CORBA::TypeCode_ptr CORBA::TypeCodeFactory::create_value_box_tc ( - const char * id, - const char * name, - CORBA::TypeCode_ptr boxed_type, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - - CORBA::TypeCode_ptr _tao_retval = CORBA::TypeCode::_nil (); - CORBA::TypeCode_var _tao_safe_retval (_tao_retval); - - - TAO_Stub *istub = this->_stubobj (); - if (istub == 0) - ACE_THROW_RETURN (CORBA::INTERNAL (), 0); - - - TAO_GIOP_Twoway_Invocation _tao_call ( - istub, - "create_value_box_tc", - 19, - istub->orb_core () - ); - - for (;;) - { - _tao_call.start (ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - CORBA::Short flag = TAO_TWOWAY_RESPONSE_FLAG; - // Tremporary hack until GIOP 1.2 is implemented. - - _tao_call.prepare_header (ACE_static_cast (CORBA::Octet, flag), ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - TAO_OutputCDR &_tao_out = _tao_call.out_stream (); - if (!( - (_tao_out << id) && - (_tao_out << name) && - (_tao_out << boxed_type) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (), 0); - - int _invoke_status = - _tao_call.invoke (0, 0, ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - if (_invoke_status == TAO_INVOKE_RESTART) - continue; - if (_invoke_status != TAO_INVOKE_OK) - { - ACE_THROW_RETURN (CORBA::UNKNOWN (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - - } - TAO_InputCDR &_tao_in = _tao_call.inp_stream (); - if (!( - (_tao_in >> _tao_safe_retval.inout ()) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - break; - - } - return _tao_safe_retval._retn (); -} - -CORBA::TypeCode_ptr CORBA::TypeCodeFactory::create_native_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - - CORBA::TypeCode_ptr _tao_retval = CORBA::TypeCode::_nil (); - CORBA::TypeCode_var _tao_safe_retval (_tao_retval); - - - TAO_Stub *istub = this->_stubobj (); - if (istub == 0) - ACE_THROW_RETURN (CORBA::INTERNAL (), 0); - - - TAO_GIOP_Twoway_Invocation _tao_call ( - istub, - "create_native_tc", - 16, - istub->orb_core () - ); - - - for (;;) - { - _tao_call.start (ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - CORBA::Short flag = TAO_TWOWAY_RESPONSE_FLAG; - // Tremporary hack until GIOP 1.2 is implemented. - - _tao_call.prepare_header (ACE_static_cast (CORBA::Octet, flag), ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - TAO_OutputCDR &_tao_out = _tao_call.out_stream (); - if (!( - (_tao_out << id) && - (_tao_out << name) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (), 0); - - int _invoke_status = - _tao_call.invoke (0, 0, ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - if (_invoke_status == TAO_INVOKE_RESTART) - continue; - if (_invoke_status != TAO_INVOKE_OK) - { - ACE_THROW_RETURN (CORBA::UNKNOWN (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - - } - TAO_InputCDR &_tao_in = _tao_call.inp_stream (); - if (!( - (_tao_in >> _tao_safe_retval.inout ()) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - - break; - - } - return _tao_safe_retval._retn (); -} - -CORBA::TypeCode_ptr CORBA::TypeCodeFactory::create_recursive_tc ( - const char * id, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - - CORBA::TypeCode_ptr _tao_retval = CORBA::TypeCode::_nil (); - CORBA::TypeCode_var _tao_safe_retval (_tao_retval); - - - TAO_Stub *istub = this->_stubobj (); - if (istub == 0) - ACE_THROW_RETURN (CORBA::INTERNAL (), 0); - - - TAO_GIOP_Twoway_Invocation _tao_call ( - istub, - "create_recursive_tc", - 19, - istub->orb_core () - ); - - - for (;;) - { - _tao_call.start (ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - CORBA::Short flag = TAO_TWOWAY_RESPONSE_FLAG; - // Tremporary hack until GIOP 1.2 is implemented. - - _tao_call.prepare_header (ACE_static_cast (CORBA::Octet, flag), ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - TAO_OutputCDR &_tao_out = _tao_call.out_stream (); - if (!( - (_tao_out << id) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (), 0); - - int _invoke_status = - _tao_call.invoke (0, 0, ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - if (_invoke_status == TAO_INVOKE_RESTART) - continue; - if (_invoke_status != TAO_INVOKE_OK) - { - ACE_THROW_RETURN (CORBA::UNKNOWN (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - - } - TAO_InputCDR &_tao_in = _tao_call.inp_stream (); - if (!( - (_tao_in >> _tao_safe_retval.inout ()) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - - break; - - } - return _tao_safe_retval._retn (); -} - -CORBA::TypeCode_ptr CORBA::TypeCodeFactory::create_abstract_interface_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - - CORBA::TypeCode_ptr _tao_retval = CORBA::TypeCode::_nil (); - CORBA::TypeCode_var _tao_safe_retval (_tao_retval); - - - TAO_Stub *istub = this->_stubobj (); - if (istub == 0) - ACE_THROW_RETURN (CORBA::INTERNAL (), 0); - - - TAO_GIOP_Twoway_Invocation _tao_call ( - istub, - "create_abstract_interface_tc", - 28, - istub->orb_core () - ); - - - for (;;) - { - _tao_call.start (ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - CORBA::Short flag = TAO_TWOWAY_RESPONSE_FLAG; - // Tremporary hack until GIOP 1.2 is implemented. - - _tao_call.prepare_header (ACE_static_cast (CORBA::Octet, flag), ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - TAO_OutputCDR &_tao_out = _tao_call.out_stream (); - if (!( - (_tao_out << id) && - (_tao_out << name) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (), 0); - - int _invoke_status = - _tao_call.invoke (0, 0, ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - if (_invoke_status == TAO_INVOKE_RESTART) - continue; - if (_invoke_status != TAO_INVOKE_OK) - { - ACE_THROW_RETURN (CORBA::UNKNOWN (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - - } - TAO_InputCDR &_tao_in = _tao_call.inp_stream (); - if (!( - (_tao_in >> _tao_safe_retval.inout ()) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - break; - - } - return _tao_safe_retval._retn (); -} - -CORBA::TypeCode_ptr CORBA::TypeCodeFactory::create_component_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - - CORBA::TypeCode_ptr _tao_retval = CORBA::TypeCode::_nil (); - CORBA::TypeCode_var _tao_safe_retval (_tao_retval); - - - TAO_Stub *istub = this->_stubobj (); - if (istub == 0) - ACE_THROW_RETURN (CORBA::INTERNAL (), 0); - - - TAO_GIOP_Twoway_Invocation _tao_call ( - istub, - "create_component_tc", - 19, - istub->orb_core () - ); - - - for (;;) - { - _tao_call.start (ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - CORBA::Short flag = TAO_TWOWAY_RESPONSE_FLAG; - // Tremporary hack until GIOP 1.2 is implemented. - - _tao_call.prepare_header (ACE_static_cast (CORBA::Octet, flag), ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - TAO_OutputCDR &_tao_out = _tao_call.out_stream (); - if (!( - (_tao_out << id) && - (_tao_out << name) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (), 0); - - int _invoke_status = - _tao_call.invoke (0, 0, ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - if (_invoke_status == TAO_INVOKE_RESTART) - continue; - if (_invoke_status != TAO_INVOKE_OK) - { - ACE_THROW_RETURN (CORBA::UNKNOWN (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - - } - TAO_InputCDR &_tao_in = _tao_call.inp_stream (); - if (!( - (_tao_in >> _tao_safe_retval.inout ()) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - - break; - - } - return _tao_safe_retval._retn (); -} - -CORBA::TypeCode_ptr CORBA::TypeCodeFactory::create_home_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - - CORBA::TypeCode_ptr _tao_retval = CORBA::TypeCode::_nil (); - CORBA::TypeCode_var _tao_safe_retval (_tao_retval); - - - TAO_Stub *istub = this->_stubobj (); - if (istub == 0) - ACE_THROW_RETURN (CORBA::INTERNAL (), 0); - - - TAO_GIOP_Twoway_Invocation _tao_call ( - istub, - "create_home_tc", - 14, - istub->orb_core () - ); - - - for (;;) - { - _tao_call.start (ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - CORBA::Short flag = TAO_TWOWAY_RESPONSE_FLAG; - // Tremporary hack until GIOP 1.2 is implemented. - - _tao_call.prepare_header (ACE_static_cast (CORBA::Octet, flag), ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - TAO_OutputCDR &_tao_out = _tao_call.out_stream (); - if (!( - (_tao_out << id) && - (_tao_out << name) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (), 0); - - int _invoke_status = - _tao_call.invoke (0, 0, ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - if (_invoke_status == TAO_INVOKE_RESTART) - continue; - if (_invoke_status != TAO_INVOKE_OK) - { - ACE_THROW_RETURN (CORBA::UNKNOWN (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - - } - TAO_InputCDR &_tao_in = _tao_call.inp_stream (); - if (!( - (_tao_in >> _tao_safe_retval.inout ()) - )) - ACE_THROW_RETURN (CORBA::MARSHAL (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0); - break; - - } - return _tao_safe_retval._retn (); -} - -CORBA::Boolean CORBA::TypeCodeFactory::_is_a (const CORBA::Char *value, CORBA::Environment &ACE_TRY_ENV) -{ - if ( - (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/TypeCodeFactory:1.0")) || - (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Object:1.0"))) - return 1; // success using local knowledge - else - return this->CORBA_Object::_is_a (value, ACE_TRY_ENV); -} - -const char* CORBA::TypeCodeFactory::_interface_repository_id (void) const -{ - return "IDL:omg.org/CORBA/TypeCodeFactory:1.0"; -} - -TAO_CORBA_TypeCodeFactory_Default_Proxy_Factory::TAO_CORBA_TypeCodeFactory_Default_Proxy_Factory (int register_proxy_factory) -{ - if (register_proxy_factory) - { - TAO_CORBA_TypeCodeFactory_PROXY_FACTORY_ADAPTER::instance ()->register_proxy_factory (this); - } -} - -TAO_CORBA_TypeCodeFactory_Default_Proxy_Factory::~TAO_CORBA_TypeCodeFactory_Default_Proxy_Factory (void) -{ -} - -CORBA::TypeCodeFactory_ptr -TAO_CORBA_TypeCodeFactory_Default_Proxy_Factory::create_proxy ( - CORBA::TypeCodeFactory_ptr proxy, - CORBA::Environment & - ) -{ - return proxy; -} - -TAO_CORBA_TypeCodeFactory_Proxy_Factory_Adapter::TAO_CORBA_TypeCodeFactory_Proxy_Factory_Adapter (void) - : proxy_factory_ (0), - delete_proxy_factory_ (0) -{ -} - -TAO_CORBA_TypeCodeFactory_Proxy_Factory_Adapter::~TAO_CORBA_TypeCodeFactory_Proxy_Factory_Adapter (void) -{ - // Making sure the factory which the adapter has is destroyed with it. - if (this->proxy_factory_ != 0) - delete this->proxy_factory_; -} - -int -TAO_CORBA_TypeCodeFactory_Proxy_Factory_Adapter::register_proxy_factory ( - TAO_CORBA_TypeCodeFactory_Default_Proxy_Factory *df, - CORBA::Environment &ACE_TRY_ENV - ) -{ - ACE_MT (ACE_GUARD_RETURN (ACE_Recursive_Thread_Mutex, ace_mon, - this->lock_, 0)); - // Remove any existing <proxy_factory_> and replace with the new one. - this->unregister_proxy_factory (ACE_TRY_ENV); - this->proxy_factory_ = df; - this->delete_proxy_factory_ = 0; -return 0; -} - -int -TAO_CORBA_TypeCodeFactory_Proxy_Factory_Adapter::unregister_proxy_factory ( - CORBA::Environment & - ) -{ - ACE_MT (ACE_GUARD_RETURN (ACE_Recursive_Thread_Mutex, ace_mon, - this->lock_, 0)); - if (this->delete_proxy_factory_ == 0 && this->proxy_factory_ != 0) - { - // Its necessary to set <delete_proxy_factory_> to 1 to make sure that it - // doesnt get into an infinite loop in <unregister_proxy_factory> as it is - // invoked in the destructor of the class too. - this->delete_proxy_factory_ = 1; - delete this->proxy_factory_; - this->proxy_factory_ = 0; - } -return 0; -} - -CORBA::TypeCodeFactory_ptr -TAO_CORBA_TypeCodeFactory_Proxy_Factory_Adapter::create_proxy ( - CORBA::TypeCodeFactory_ptr proxy, - CORBA::Environment & - ) -{ - ACE_MT (ACE_GUARD_RETURN (ACE_Recursive_Thread_Mutex, ace_mon, - this->lock_, 0)); - // Verify that an <proxy_factory_> is available else make one. - if (this->proxy_factory_ == 0) - ACE_NEW_RETURN (this->proxy_factory_, - TAO_CORBA_TypeCodeFactory_Default_Proxy_Factory (1), - 0); - - - return this->proxy_factory_->create_proxy (proxy); -} - -TAO_CORBA_TypeCodeFactory_Smart_Proxy_Base::TAO_CORBA_TypeCodeFactory_Smart_Proxy_Base (CORBA::TypeCodeFactory_ptr proxy) -: base_proxy_ (proxy) -{ -} - -TAO_CORBA_TypeCodeFactory_Smart_Proxy_Base::~TAO_CORBA_TypeCodeFactory_Smart_Proxy_Base (void) -{ -} - -TAO_Stub * -TAO_CORBA_TypeCodeFactory_Smart_Proxy_Base::_stubobj (void) const -{ - return this->base_proxy_->_stubobj (); -} - -CORBA::TypeCode_ptr TAO_CORBA_TypeCodeFactory_Smart_Proxy_Base::create_struct_tc ( - const char * id, - const char * name, - const IR_StructMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - return this->base_proxy_->create_struct_tc ( - id, - name, - members, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr TAO_CORBA_TypeCodeFactory_Smart_Proxy_Base::create_union_tc ( - const char * id, - const char * name, - CORBA::TypeCode_ptr discriminator_type, - const IR_UnionMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - return this->base_proxy_->create_union_tc ( - id, - name, - discriminator_type, - members, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr TAO_CORBA_TypeCodeFactory_Smart_Proxy_Base::create_enum_tc ( - const char * id, - const char * name, - const IR_EnumMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - return this->base_proxy_->create_enum_tc ( - id, - name, - members, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr TAO_CORBA_TypeCodeFactory_Smart_Proxy_Base::create_alias_tc ( - const char * id, - const char * name, - CORBA::TypeCode_ptr original_type, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - return this->base_proxy_->create_alias_tc ( - id, - name, - original_type, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr TAO_CORBA_TypeCodeFactory_Smart_Proxy_Base::create_exception_tc ( - const char * id, - const char * name, - const IR_StructMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - return this->base_proxy_->create_exception_tc ( - id, - name, - members, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr TAO_CORBA_TypeCodeFactory_Smart_Proxy_Base::create_interface_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - return this->base_proxy_->create_interface_tc ( - id, - name, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr TAO_CORBA_TypeCodeFactory_Smart_Proxy_Base::create_string_tc ( - CORBA::ULong bound, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - return this->base_proxy_->create_string_tc ( - bound, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr TAO_CORBA_TypeCodeFactory_Smart_Proxy_Base::create_wstring_tc ( - CORBA::ULong bound, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - return this->base_proxy_->create_wstring_tc ( - bound, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr TAO_CORBA_TypeCodeFactory_Smart_Proxy_Base::create_fixed_tc ( - CORBA::UShort digits, - CORBA::UShort scale, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - return this->base_proxy_->create_fixed_tc ( - digits, - scale, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr TAO_CORBA_TypeCodeFactory_Smart_Proxy_Base::create_sequence_tc ( - CORBA::ULong bound, - CORBA::TypeCode_ptr element_type, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - return this->base_proxy_->create_sequence_tc ( - bound, - element_type, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr TAO_CORBA_TypeCodeFactory_Smart_Proxy_Base::create_array_tc ( - CORBA::ULong length, - CORBA::TypeCode_ptr element_type, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - return this->base_proxy_->create_array_tc ( - length, - element_type, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr TAO_CORBA_TypeCodeFactory_Smart_Proxy_Base::create_value_tc ( - const char * id, - const char * name, - CORBA::ValueModifier type_modifier, - CORBA::TypeCode_ptr concrete_base, - const IR_ValueMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - return this->base_proxy_->create_value_tc ( - id, - name, - type_modifier, - concrete_base, - members, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr TAO_CORBA_TypeCodeFactory_Smart_Proxy_Base::create_value_box_tc ( - const char * id, - const char * name, - CORBA::TypeCode_ptr boxed_type, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - return this->base_proxy_->create_value_box_tc ( - id, - name, - boxed_type, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr TAO_CORBA_TypeCodeFactory_Smart_Proxy_Base::create_native_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - return this->base_proxy_->create_native_tc ( - id, - name, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr TAO_CORBA_TypeCodeFactory_Smart_Proxy_Base::create_recursive_tc ( - const char * id, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - return this->base_proxy_->create_recursive_tc ( - id, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr TAO_CORBA_TypeCodeFactory_Smart_Proxy_Base::create_abstract_interface_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - return this->base_proxy_->create_abstract_interface_tc ( - id, - name, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr TAO_CORBA_TypeCodeFactory_Smart_Proxy_Base::create_component_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - return this->base_proxy_->create_component_tc ( - id, - name, - ACE_TRY_ENV - ); - -} - -CORBA::TypeCode_ptr TAO_CORBA_TypeCodeFactory_Smart_Proxy_Base::create_home_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) -{ - return this->base_proxy_->create_home_tc ( - id, - name, - ACE_TRY_ENV - ); - -} - -#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) || \ - defined (ACE_HAS_GNU_REPO) -template class TAO_Singleton<TAO_CORBA_TypeCodeFactory_Proxy_Factory_Adapter, ACE_SYNCH_RECURSIVE_MUTEX >; -#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA) -#pragma instantiate TAO_Singleton<TAO_CORBA_TypeCodeFactory_Proxy_Factory_Adapter, ACE_SYNCH_RECURSIVE_MUTEX> -#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */ - -static const CORBA::Long _oc_CORBA_TypeCodeFactory[] = -{ - TAO_ENCAP_BYTE_ORDER, // byte order - 38, ACE_NTOHL (0x49444c3a), ACE_NTOHL (0x6f6d672e), ACE_NTOHL (0x6f72672f), ACE_NTOHL (0x434f5242), ACE_NTOHL (0x412f5479), ACE_NTOHL (0x7065436f), ACE_NTOHL (0x64654661), ACE_NTOHL (0x63746f72), ACE_NTOHL (0x793a312e), ACE_NTOHL (0x30000000), // repository ID = IDL:omg.org/CORBA/TypeCodeFactory:1.0 - 16, ACE_NTOHL (0x54797065), ACE_NTOHL (0x436f6465), ACE_NTOHL (0x46616374), ACE_NTOHL (0x6f727900), // name = TypeCodeFactory -}; -static CORBA::TypeCode _tc_TAO_tc_CORBA_TypeCodeFactory (CORBA::tk_objref, sizeof (_oc_CORBA_TypeCodeFactory), (char *) &_oc_CORBA_TypeCodeFactory, 0, sizeof (CORBA::TypeCodeFactory)); -TAO_NAMESPACE_TYPE (CORBA::TypeCode_ptr) -TAO_NAMESPACE_BEGIN (CORBA) -TAO_NAMESPACE_DEFINE (CORBA::TypeCode_ptr, _tc_TypeCodeFactory, &_tc_TAO_tc_CORBA_TypeCodeFactory) -TAO_NAMESPACE_END void operator<<= (CORBA::Any &_tao_any, IR::DefinitionKind _tao_elem) { TAO_OutputCDR stream; @@ -36187,68 +34455,6 @@ CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, CORBA::IRObject_ptr &_ta # pragma instantiate TAO_Object_Manager<CORBA::IRObject,CORBA::IRObject_var> #endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */ -CORBA::TypeCodeFactory_ptr (*_TAO_collocation_CORBA_TypeCodeFactory_Stub_Factory_function_pointer) ( - CORBA::Object_ptr obj - ) = 0; -void operator<<= (CORBA::Any &_tao_any, CORBA::TypeCodeFactory_ptr _tao_elem) -{ - TAO_OutputCDR stream; - if (stream << _tao_elem) - { - _tao_any._tao_replace ( - CORBA::_tc_TypeCodeFactory, - TAO_ENCAP_BYTE_ORDER, - stream.begin (), - 1, - CORBA::TypeCodeFactory::_duplicate (_tao_elem), - CORBA::TypeCodeFactory::_tao_any_destructor - ); - } -} - -CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, CORBA::TypeCodeFactory_ptr &_tao_elem) -{ - ACE_TRY_NEW_ENV - { - _tao_elem = CORBA::TypeCodeFactory::_nil (); - CORBA::TypeCode_var type = _tao_any.type (); - if (!type->equivalent (CORBA::_tc_TypeCodeFactory, ACE_TRY_ENV)) // not equal - { - return 0; - } - ACE_TRY_CHECK; - TAO_InputCDR stream ( - _tao_any._tao_get_cdr (), - _tao_any._tao_byte_order () - ); - if (stream >> _tao_elem) - { - ((CORBA::Any *)&_tao_any)->_tao_replace ( - CORBA::_tc_TypeCodeFactory, - 1, - _tao_elem, - CORBA::TypeCodeFactory::_tao_any_destructor - ); - return 1; - } - } - ACE_CATCHANY - { - _tao_elem = CORBA::TypeCodeFactory::_nil (); - return 0; - } - ACE_ENDTRY; - _tao_elem = CORBA::TypeCodeFactory::_nil (); - return 0; -} - -#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) || \ - defined (ACE_HAS_GNU_REPO) - template class TAO_Object_Manager<CORBA::TypeCodeFactory,CORBA::TypeCodeFactory_var>; -#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA) -# pragma instantiate TAO_Object_Manager<CORBA::TypeCodeFactory,CORBA::TypeCodeFactory_var> -#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */ - CORBA::Boolean operator<< ( TAO_OutputCDR &strm, const IR_InterfaceDefSeq &_tao_sequence diff --git a/TAO/tao/InterfaceC.h b/TAO/tao/InterfaceC.h index 64331414a91..2d9d3f51fe1 100644 --- a/TAO/tao/InterfaceC.h +++ b/TAO/tao/InterfaceC.h @@ -13148,530 +13148,6 @@ private: void operator= (const IR_HomeDescription_var &); }; - class TAO_Export CORBA_TypeCodeFactory_var : public TAO_Base_var - { - public: - CORBA_TypeCodeFactory_var (void); // default constructor - CORBA_TypeCodeFactory_var (CORBA_TypeCodeFactory_ptr); - CORBA_TypeCodeFactory_var (const CORBA_TypeCodeFactory_var &); // copy constructor - ~CORBA_TypeCodeFactory_var (void); // destructor - - CORBA_TypeCodeFactory_var &operator= (CORBA_TypeCodeFactory_ptr); - CORBA_TypeCodeFactory_var &operator= (const CORBA_TypeCodeFactory_var &); - CORBA_TypeCodeFactory_ptr operator-> (void) const; - - operator const CORBA_TypeCodeFactory_ptr &() const; - operator CORBA_TypeCodeFactory_ptr &(); - // in, inout, out, _retn - CORBA_TypeCodeFactory_ptr in (void) const; - CORBA_TypeCodeFactory_ptr &inout (void); - CORBA_TypeCodeFactory_ptr &out (void); - CORBA_TypeCodeFactory_ptr _retn (void); - CORBA_TypeCodeFactory_ptr ptr (void) const; - - private: - CORBA_TypeCodeFactory_ptr ptr_; - // Unimplemented - prevents widening assignment. - CORBA_TypeCodeFactory_var (const TAO_Base_var &rhs); - CORBA_TypeCodeFactory_var &operator= (const TAO_Base_var &rhs); - }; - - class TAO_Export CORBA_TypeCodeFactory_out - { - public: - CORBA_TypeCodeFactory_out (CORBA_TypeCodeFactory_ptr &); - CORBA_TypeCodeFactory_out (CORBA_TypeCodeFactory_var &); - CORBA_TypeCodeFactory_out (const CORBA_TypeCodeFactory_out &); - CORBA_TypeCodeFactory_out &operator= (const CORBA_TypeCodeFactory_out &); - CORBA_TypeCodeFactory_out &operator= (const CORBA_TypeCodeFactory_var &); - CORBA_TypeCodeFactory_out &operator= (CORBA_TypeCodeFactory_ptr); - operator CORBA_TypeCodeFactory_ptr &(); - CORBA_TypeCodeFactory_ptr &ptr (void); - CORBA_TypeCodeFactory_ptr operator-> (void); - - private: - CORBA_TypeCodeFactory_ptr &ptr_; - }; - -class TAO_Export CORBA_TypeCodeFactory : public virtual ACE_CORBA_1 (Object) - { - public: - #if !defined(__GNUC__) || !defined (ACE_HAS_GNUG_PRE_2_8) - typedef CORBA_TypeCodeFactory_ptr _ptr_type; - typedef CORBA_TypeCodeFactory_var _var_type; - #endif /* ! __GNUC__ || g++ >= 2.8 */ - - // the static operations - static CORBA_TypeCodeFactory_ptr _duplicate (CORBA_TypeCodeFactory_ptr obj); - static CORBA_TypeCodeFactory_ptr _narrow ( - CORBA::Object_ptr obj, - CORBA::Environment &env = - TAO_default_environment () - ); - static CORBA_TypeCodeFactory_ptr _unchecked_narrow ( - CORBA::Object_ptr obj, - CORBA::Environment &env = - TAO_default_environment () - ); - static CORBA_TypeCodeFactory_ptr _nil (void) - { - return (CORBA_TypeCodeFactory_ptr)0; - } - - static void _tao_any_destructor (void*); - - virtual CORBA::TypeCode_ptr create_struct_tc ( - const char * id, - const char * name, - const IR_StructMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_union_tc ( - const char * id, - const char * name, - CORBA::TypeCode_ptr discriminator_type, - const IR_UnionMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_enum_tc ( - const char * id, - const char * name, - const IR_EnumMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_alias_tc ( - const char * id, - const char * name, - CORBA::TypeCode_ptr original_type, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_exception_tc ( - const char * id, - const char * name, - const IR_StructMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_interface_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_string_tc ( - CORBA::ULong bound, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_wstring_tc ( - CORBA::ULong bound, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_fixed_tc ( - CORBA::UShort digits, - CORBA::UShort scale, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_sequence_tc ( - CORBA::ULong bound, - CORBA::TypeCode_ptr element_type, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_array_tc ( - CORBA::ULong length, - CORBA::TypeCode_ptr element_type, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_value_tc ( - const char * id, - const char * name, - CORBA::ValueModifier type_modifier, - CORBA::TypeCode_ptr concrete_base, - const IR_ValueMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_value_box_tc ( - const char * id, - const char * name, - CORBA::TypeCode_ptr boxed_type, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_native_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_recursive_tc ( - const char * id, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_abstract_interface_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_component_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_home_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::Boolean _is_a ( - const CORBA::Char *type_id, - CORBA::Environment &env = - TAO_default_environment () - ); - virtual const char* _interface_repository_id (void) const; - - protected: - CORBA_TypeCodeFactory (void); - CORBA_TypeCodeFactory (TAO_Stub *objref, - CORBA::Boolean _tao_collocated = 0 - ); - virtual ~CORBA_TypeCodeFactory (void); - private: - CORBA_TypeCodeFactory (const CORBA_TypeCodeFactory &); - void operator= (const CORBA_TypeCodeFactory &); -}; - -class TAO_CORBA_TypeCodeFactory_Default_Proxy_Factory -{ -public: - - TAO_CORBA_TypeCodeFactory_Default_Proxy_Factory (int register_proxy_factory = 1); - - virtual ~TAO_CORBA_TypeCodeFactory_Default_Proxy_Factory (void); - - virtual CORBA_TypeCodeFactory_ptr create_proxy ( - CORBA_TypeCodeFactory_ptr proxy, - CORBA::Environment &env = - TAO_default_environment () - ); -}; - -class TAO_CORBA_TypeCodeFactory_Proxy_Factory_Adapter -{ -public: - - friend class TAO_Singleton<TAO_CORBA_TypeCodeFactory_Proxy_Factory_Adapter, ACE_SYNCH_RECURSIVE_MUTEX>; - - int register_proxy_factory ( - TAO_CORBA_TypeCodeFactory_Default_Proxy_Factory *df, - CORBA::Environment &env = - TAO_default_environment () - ); - - int unregister_proxy_factory ( - CORBA::Environment &env = - TAO_default_environment () - ); - - CORBA_TypeCodeFactory_ptr create_proxy ( - CORBA_TypeCodeFactory_ptr proxy, - CORBA::Environment &env = - TAO_default_environment () - ); - -protected: - TAO_CORBA_TypeCodeFactory_Proxy_Factory_Adapter (void); - ~TAO_CORBA_TypeCodeFactory_Proxy_Factory_Adapter (void); - TAO_CORBA_TypeCodeFactory_Proxy_Factory_Adapter &operator= ( - const TAO_CORBA_TypeCodeFactory_Proxy_Factory_Adapter & - ); - TAO_CORBA_TypeCodeFactory_Default_Proxy_Factory *proxy_factory_; - int delete_proxy_factory_; - ACE_SYNCH_RECURSIVE_MUTEX lock_; - }; - - typedef TAO_Singleton<TAO_CORBA_TypeCodeFactory_Proxy_Factory_Adapter, ACE_SYNCH_RECURSIVE_MUTEX> TAO_CORBA_TypeCodeFactory_PROXY_FACTORY_ADAPTER; - class TAO_CORBA_TypeCodeFactory_Smart_Proxy_Base : public virtual CORBA_TypeCodeFactory - { - public: - TAO_CORBA_TypeCodeFactory_Smart_Proxy_Base (::CORBA::TypeCodeFactory_ptr proxy); - ~TAO_CORBA_TypeCodeFactory_Smart_Proxy_Base (void); - virtual TAO_Stub *_stubobj (void) const; - virtual CORBA::TypeCode_ptr create_struct_tc ( - const char * id, - const char * name, - const IR_StructMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_union_tc ( - const char * id, - const char * name, - CORBA::TypeCode_ptr discriminator_type, - const IR_UnionMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_enum_tc ( - const char * id, - const char * name, - const IR_EnumMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_alias_tc ( - const char * id, - const char * name, - CORBA::TypeCode_ptr original_type, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_exception_tc ( - const char * id, - const char * name, - const IR_StructMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_interface_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_string_tc ( - CORBA::ULong bound, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_wstring_tc ( - CORBA::ULong bound, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_fixed_tc ( - CORBA::UShort digits, - CORBA::UShort scale, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_sequence_tc ( - CORBA::ULong bound, - CORBA::TypeCode_ptr element_type, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_array_tc ( - CORBA::ULong length, - CORBA::TypeCode_ptr element_type, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_value_tc ( - const char * id, - const char * name, - CORBA::ValueModifier type_modifier, - CORBA::TypeCode_ptr concrete_base, - const IR_ValueMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_value_box_tc ( - const char * id, - const char * name, - CORBA::TypeCode_ptr boxed_type, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_native_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_recursive_tc ( - const char * id, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_abstract_interface_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_component_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_home_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - -private: - CORBA_TypeCodeFactory_var base_proxy_; -}; - TAO_Export void operator<<= (CORBA::Any &, IR::DefinitionKind); TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, IR::DefinitionKind &); extern TAO_Export IR_Contained_ptr (*_TAO_collocation_IR_Contained_Stub_Factory_function_pointer) ( @@ -14104,12 +13580,6 @@ TAO_Export void operator<<= (CORBA::Any &, const IR_HomeDescription &); // copyi TAO_Export void operator<<= (CORBA::Any &, IR_HomeDescription*); // noncopying version TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, IR_HomeDescription *&); // deprecated TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, const IR_HomeDescription *&); -extern TAO_Export CORBA::TypeCodeFactory_ptr (*_TAO_collocation_CORBA_TypeCodeFactory_Stub_Factory_function_pointer) ( - CORBA::Object_ptr obj - ); -// Any operators for interface CORBA::TypeCodeFactory -TAO_Export void operator<<= (CORBA::Any &, CORBA::TypeCodeFactory_ptr); -TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, CORBA::TypeCodeFactory *&); #ifndef __ACE_INLINE__ @@ -14644,8 +14114,6 @@ TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const IR_HomeDef_ptr ); TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, IR_HomeDef_ptr &); TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const IR_HomeDescription &); TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, IR_HomeDescription &); -TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const CORBA::TypeCodeFactory_ptr ); -TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, CORBA::TypeCodeFactory_ptr &); #endif /* __ACE_INLINE__ */ diff --git a/TAO/tao/InterfaceC.i b/TAO/tao/InterfaceC.i index 7a812e1e176..05dbec5d7a4 100644 --- a/TAO/tao/InterfaceC.i +++ b/TAO/tao/InterfaceC.i @@ -20077,194 +20077,6 @@ IR_HomeDescription_out::operator-> (void) return this->ptr_; } -ACE_INLINE -CORBA_TypeCodeFactory::CORBA_TypeCodeFactory (void) // default constructor -{} - -ACE_INLINE -CORBA_TypeCodeFactory::CORBA_TypeCodeFactory (TAO_Stub *objref, CORBA::Boolean _tao_collocated) // constructor - : CORBA_Object (objref, _tao_collocated) -{} - -ACE_INLINE -CORBA_TypeCodeFactory::~CORBA_TypeCodeFactory (void) // destructor -{} - - -#if !defined (_CORBA_TYPECODEFACTORY___VAR_CI_) -#define _CORBA_TYPECODEFACTORY___VAR_CI_ - -// ************************************************************* -// Inline operations for class CORBA_TypeCodeFactory_var -// ************************************************************* - -ACE_INLINE -CORBA_TypeCodeFactory_var::CORBA_TypeCodeFactory_var (void) // default constructor - : ptr_ (CORBA_TypeCodeFactory::_nil ()) -{} - -ACE_INLINE -CORBA_TypeCodeFactory_var::CORBA_TypeCodeFactory_var (CORBA_TypeCodeFactory_ptr p) - : ptr_ (p) -{} - -ACE_INLINE ::CORBA_TypeCodeFactory_ptr -CORBA_TypeCodeFactory_var::ptr (void) const -{ - return this->ptr_; -} - -ACE_INLINE -CORBA_TypeCodeFactory_var::CORBA_TypeCodeFactory_var (const ::CORBA_TypeCodeFactory_var &p) // copy constructor - : TAO_Base_var (), - ptr_ (CORBA_TypeCodeFactory::_duplicate (p.ptr ())) -{} - -ACE_INLINE -CORBA_TypeCodeFactory_var::~CORBA_TypeCodeFactory_var (void) // destructor -{ - CORBA::release (this->ptr_); -} - -ACE_INLINE CORBA_TypeCodeFactory_var & -CORBA_TypeCodeFactory_var::operator= (CORBA_TypeCodeFactory_ptr p) -{ - CORBA::release (this->ptr_); - this->ptr_ = p; - return *this; -} - -ACE_INLINE CORBA_TypeCodeFactory_var & -CORBA_TypeCodeFactory_var::operator= (const ::CORBA_TypeCodeFactory_var &p) -{ - if (this != &p) - { - CORBA::release (this->ptr_); - this->ptr_ = ::CORBA_TypeCodeFactory::_duplicate (p.ptr ()); - } - return *this; -} - -ACE_INLINE -CORBA_TypeCodeFactory_var::operator const ::CORBA_TypeCodeFactory_ptr &() const // cast -{ - return this->ptr_; -} - -ACE_INLINE -CORBA_TypeCodeFactory_var::operator ::CORBA_TypeCodeFactory_ptr &() // cast -{ - return this->ptr_; -} - -ACE_INLINE ::CORBA_TypeCodeFactory_ptr -CORBA_TypeCodeFactory_var::operator-> (void) const -{ - return this->ptr_; -} - -ACE_INLINE ::CORBA_TypeCodeFactory_ptr -CORBA_TypeCodeFactory_var::in (void) const -{ - return this->ptr_; -} - -ACE_INLINE ::CORBA_TypeCodeFactory_ptr & -CORBA_TypeCodeFactory_var::inout (void) -{ - return this->ptr_; -} - -ACE_INLINE ::CORBA_TypeCodeFactory_ptr & -CORBA_TypeCodeFactory_var::out (void) -{ - CORBA::release (this->ptr_); - this->ptr_ = ::CORBA_TypeCodeFactory::_nil (); - return this->ptr_; -} - -ACE_INLINE ::CORBA_TypeCodeFactory_ptr -CORBA_TypeCodeFactory_var::_retn (void) -{ - // yield ownership of managed obj reference - ::CORBA_TypeCodeFactory_ptr val = this->ptr_; - this->ptr_ = ::CORBA_TypeCodeFactory::_nil (); - return val; -} - - -#endif /* end #if !defined */ - - -#if !defined (_CORBA_TYPECODEFACTORY___OUT_CI_) -#define _CORBA_TYPECODEFACTORY___OUT_CI_ - -// ************************************************************* -// Inline operations for class CORBA_TypeCodeFactory_out -// ************************************************************* - -ACE_INLINE -CORBA_TypeCodeFactory_out::CORBA_TypeCodeFactory_out (CORBA_TypeCodeFactory_ptr &p) - : ptr_ (p) -{ - this->ptr_ = ::CORBA_TypeCodeFactory::_nil (); -} - -ACE_INLINE -CORBA_TypeCodeFactory_out::CORBA_TypeCodeFactory_out (CORBA_TypeCodeFactory_var &p) // constructor from _var - : ptr_ (p.out ()) -{ - CORBA::release (this->ptr_); - this->ptr_ = ::CORBA_TypeCodeFactory::_nil (); -} - -ACE_INLINE -CORBA_TypeCodeFactory_out::CORBA_TypeCodeFactory_out (const ::CORBA_TypeCodeFactory_out &p) // copy constructor - : ptr_ (ACE_const_cast (CORBA_TypeCodeFactory_out &, p).ptr_) -{} - -ACE_INLINE ::CORBA_TypeCodeFactory_out & -CORBA_TypeCodeFactory_out::operator= (const ::CORBA_TypeCodeFactory_out &p) -{ - this->ptr_ = ACE_const_cast (CORBA_TypeCodeFactory_out&, p).ptr_; - return *this; -} - -ACE_INLINE CORBA_TypeCodeFactory_out & -CORBA_TypeCodeFactory_out::operator= (const ::CORBA_TypeCodeFactory_var &p) -{ - this->ptr_ = ::CORBA_TypeCodeFactory::_duplicate (p.ptr ()); - return *this; -} - -ACE_INLINE CORBA_TypeCodeFactory_out & -CORBA_TypeCodeFactory_out::operator= (CORBA_TypeCodeFactory_ptr p) -{ - this->ptr_ = p; - return *this; -} - -ACE_INLINE -CORBA_TypeCodeFactory_out::operator ::CORBA_TypeCodeFactory_ptr &() // cast -{ - return this->ptr_; -} - -ACE_INLINE ::CORBA_TypeCodeFactory_ptr & -CORBA_TypeCodeFactory_out::ptr (void) // ptr -{ - return this->ptr_; -} - -ACE_INLINE ::CORBA_TypeCodeFactory_ptr -CORBA_TypeCodeFactory_out::operator-> (void) -{ - return this->ptr_; -} - - -#endif /* end #if !defined */ - ACE_INLINE CORBA::Boolean operator<< (TAO_OutputCDR &strm, const IR::DefinitionKind &_tao_enumval) { CORBA::ULong _tao_temp = _tao_enumval; @@ -23622,51 +23434,3 @@ ACE_INLINE CORBA::Boolean operator>> (TAO_InputCDR &strm, IR_HomeDescription &_t } -ACE_INLINE CORBA::Boolean -operator<< ( - TAO_OutputCDR &, - const CORBA_TypeCodeFactory_ptr - ); -ACE_INLINE CORBA::Boolean -operator>> ( - TAO_InputCDR &, - CORBA_TypeCodeFactory_ptr & - ); - -ACE_INLINE CORBA::Boolean -operator<< ( - TAO_OutputCDR &strm, - const CORBA_TypeCodeFactory_ptr _tao_objref - ) -{ - CORBA::Object_ptr _tao_corba_obj = _tao_objref; - return (strm << _tao_corba_obj); -} - -ACE_INLINE CORBA::Boolean -operator>> ( - TAO_InputCDR &strm, - CORBA_TypeCodeFactory_ptr &_tao_objref - ) -{ - ACE_TRY_NEW_ENV - { - CORBA::Object_var obj; - if ((strm >> obj.inout ()) == 0) - return 0; - // narrow to the right type - _tao_objref = - CORBA_TypeCodeFactory::_unchecked_narrow ( - obj.in (), - ACE_TRY_ENV - ); - ACE_TRY_CHECK; - return 1; - } - ACE_CATCHANY - { - // do nothing - } - ACE_ENDTRY; - return 0; -} diff --git a/TAO/tao/PortableServer/POA_CORBA.h b/TAO/tao/PortableServer/POA_CORBA.h index ee2ac3aa438..021fb96c891 100644 --- a/TAO/tao/PortableServer/POA_CORBA.h +++ b/TAO/tao/PortableServer/POA_CORBA.h @@ -331,596 +331,6 @@ public: )); }; - class TypeCodeFactory; - typedef TypeCodeFactory *TypeCodeFactory_ptr; - class TypeCodeFactory : public virtual PortableServer::ServantBase - { - protected: - TypeCodeFactory (void); - - public: - TypeCodeFactory (const TypeCodeFactory& rhs); - virtual ~TypeCodeFactory (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::TypeCodeFactory *_this ( - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ); - - virtual const char* _interface_repository_id (void) const; - - virtual CORBA::TypeCode_ptr create_struct_tc ( - const char * id, - const char * name, - const IR::StructMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) = 0; - - static void create_struct_tc_skel ( - TAO_ServerRequest &_tao_req, - void *_tao_obj, - void *_tao_context, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ); - - virtual CORBA::TypeCode_ptr create_union_tc ( - const char * id, - const char * name, - CORBA::TypeCode_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_tc_skel ( - TAO_ServerRequest &_tao_req, - void *_tao_obj, - void *_tao_context, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ); - - virtual CORBA::TypeCode_ptr create_enum_tc ( - const char * id, - const char * name, - const IR::EnumMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) = 0; - - static void create_enum_tc_skel ( - TAO_ServerRequest &_tao_req, - void *_tao_obj, - void *_tao_context, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ); - - virtual CORBA::TypeCode_ptr create_alias_tc ( - const char * id, - const char * name, - CORBA::TypeCode_ptr original_type, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) = 0; - - static void create_alias_tc_skel ( - TAO_ServerRequest &_tao_req, - void *_tao_obj, - void *_tao_context, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ); - - virtual CORBA::TypeCode_ptr create_exception_tc ( - const char * id, - const char * name, - const IR::StructMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) = 0; - - static void create_exception_tc_skel ( - TAO_ServerRequest &_tao_req, - void *_tao_obj, - void *_tao_context, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ); - - virtual CORBA::TypeCode_ptr create_interface_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) = 0; - - static void create_interface_tc_skel ( - TAO_ServerRequest &_tao_req, - void *_tao_obj, - void *_tao_context, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ); - - virtual CORBA::TypeCode_ptr create_string_tc ( - CORBA::ULong bound, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) = 0; - - static void create_string_tc_skel ( - TAO_ServerRequest &_tao_req, - void *_tao_obj, - void *_tao_context, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ); - - virtual CORBA::TypeCode_ptr create_wstring_tc ( - CORBA::ULong bound, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) = 0; - - static void create_wstring_tc_skel ( - TAO_ServerRequest &_tao_req, - void *_tao_obj, - void *_tao_context, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ); - - virtual CORBA::TypeCode_ptr create_fixed_tc ( - CORBA::UShort digits, - CORBA::UShort scale, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) = 0; - - static void create_fixed_tc_skel ( - TAO_ServerRequest &_tao_req, - void *_tao_obj, - void *_tao_context, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ); - - virtual CORBA::TypeCode_ptr create_sequence_tc ( - CORBA::ULong bound, - CORBA::TypeCode_ptr element_type, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) = 0; - - static void create_sequence_tc_skel ( - TAO_ServerRequest &_tao_req, - void *_tao_obj, - void *_tao_context, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ); - - virtual CORBA::TypeCode_ptr create_array_tc ( - CORBA::ULong length, - CORBA::TypeCode_ptr element_type, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) = 0; - - static void create_array_tc_skel ( - TAO_ServerRequest &_tao_req, - void *_tao_obj, - void *_tao_context, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ); - - virtual CORBA::TypeCode_ptr create_value_tc ( - const char * id, - const char * name, - CORBA::ValueModifier type_modifier, - CORBA::TypeCode_ptr concrete_base, - const IR::ValueMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) = 0; - - static void create_value_tc_skel ( - TAO_ServerRequest &_tao_req, - void *_tao_obj, - void *_tao_context, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ); - - virtual CORBA::TypeCode_ptr create_value_box_tc ( - const char * id, - const char * name, - CORBA::TypeCode_ptr boxed_type, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) = 0; - - static void create_value_box_tc_skel ( - TAO_ServerRequest &_tao_req, - void *_tao_obj, - void *_tao_context, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ); - - virtual CORBA::TypeCode_ptr create_native_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) = 0; - - static void create_native_tc_skel ( - TAO_ServerRequest &_tao_req, - void *_tao_obj, - void *_tao_context, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ); - - virtual CORBA::TypeCode_ptr create_recursive_tc ( - const char * id, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) = 0; - - static void create_recursive_tc_skel ( - TAO_ServerRequest &_tao_req, - void *_tao_obj, - void *_tao_context, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ); - - virtual CORBA::TypeCode_ptr create_abstract_interface_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) = 0; - - static void create_abstract_interface_tc_skel ( - TAO_ServerRequest &_tao_req, - void *_tao_obj, - void *_tao_context, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ); - - virtual CORBA::TypeCode_ptr create_component_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) = 0; - - static void create_component_tc_skel ( - TAO_ServerRequest &_tao_req, - void *_tao_obj, - void *_tao_context, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ); - - virtual CORBA::TypeCode_ptr create_home_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )) = 0; - - static void create_home_tc_skel ( - TAO_ServerRequest &_tao_req, - void *_tao_obj, - void *_tao_context, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ); - - - }; - - class _tao_thru_poa_collocated_TypeCodeFactory : public virtual CORBA::TypeCodeFactory - { - public: - _tao_thru_poa_collocated_TypeCodeFactory ( - TAO_Stub *stub - ); - virtual CORBA::Boolean _is_a( - const CORBA::Char *logical_type_id, - CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () - ); - - virtual CORBA::Boolean _non_existent( - CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () - ); - - virtual CORBA::TypeCode_ptr create_struct_tc ( - const char * id, - const char * name, - const IR::StructMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_union_tc ( - const char * id, - const char * name, - CORBA::TypeCode_ptr discriminator_type, - const IR::UnionMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_enum_tc ( - const char * id, - const char * name, - const IR::EnumMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_alias_tc ( - const char * id, - const char * name, - CORBA::TypeCode_ptr original_type, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_exception_tc ( - const char * id, - const char * name, - const IR::StructMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_interface_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_string_tc ( - CORBA::ULong bound, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_wstring_tc ( - CORBA::ULong bound, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_fixed_tc ( - CORBA::UShort digits, - CORBA::UShort scale, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_sequence_tc ( - CORBA::ULong bound, - CORBA::TypeCode_ptr element_type, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_array_tc ( - CORBA::ULong length, - CORBA::TypeCode_ptr element_type, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_value_tc ( - const char * id, - const char * name, - CORBA::ValueModifier type_modifier, - CORBA::TypeCode_ptr concrete_base, - const IR::ValueMemberSeq & members, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_value_box_tc ( - const char * id, - const char * name, - CORBA::TypeCode_ptr boxed_type, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_native_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_recursive_tc ( - const char * id, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_abstract_interface_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_component_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - virtual CORBA::TypeCode_ptr create_home_tc ( - const char * id, - const char * name, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException - )); - - }; - #endif /* TAO_HAS_INTERFACE_REPOSITORY == 1 */ }; |