summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornobody <nobody@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2000-01-12 00:48:25 +0000
committernobody <nobody@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2000-01-12 00:48:25 +0000
commit47c786a375983793a8ce4cfa035733d175c12f30 (patch)
treef802dc33a3732a7d897651a36d8c472e99f31ad9
parent440890527bd72f2644cf4d023c429f038560e0b1 (diff)
downloadATCD-47c786a375983793a8ce4cfa035733d175c12f30.tar.gz
This commit was manufactured by cvs2svn to create branch
'pluggable_messaging'.
-rw-r--r--TAO/tao/Connector_Registry.i14
-rw-r--r--TAO/tao/ImplRepoC.cpp3789
-rw-r--r--TAO/tao/ImplRepoC.h1688
-rw-r--r--TAO/tao/ImplRepoC.i2239
-rw-r--r--TAO/tao/ImplRepoS.cpp2586
-rw-r--r--TAO/tao/ImplRepoS.h914
-rw-r--r--TAO/tao/ImplRepoS.i9
-rw-r--r--TAO/tao/ImplRepoS_T.cpp20
-rw-r--r--TAO/tao/ImplRepoS_T.h39
-rw-r--r--TAO/tao/ImplRepoS_T.i462
10 files changed, 11760 insertions, 0 deletions
diff --git a/TAO/tao/Connector_Registry.i b/TAO/tao/Connector_Registry.i
new file mode 100644
index 00000000000..f2f5cfd2047
--- /dev/null
+++ b/TAO/tao/Connector_Registry.i
@@ -0,0 +1,14 @@
+// -*- C++ -*-
+// $Id$
+
+ACE_INLINE TAO_ConnectorSetIterator
+TAO_Connector_Registry::begin (void)
+{
+ return this->connectors_;
+}
+
+ACE_INLINE TAO_ConnectorSetIterator
+TAO_Connector_Registry::end (void)
+{
+ return this->connectors_ + this->size_;
+}
diff --git a/TAO/tao/ImplRepoC.cpp b/TAO/tao/ImplRepoC.cpp
new file mode 100644
index 00000000000..3d122d0ff96
--- /dev/null
+++ b/TAO/tao/ImplRepoC.cpp
@@ -0,0 +1,3789 @@
+/* -*- 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 "ImplRepoC.h"
+
+#if !defined (__ACE_INLINE__)
+#include "ImplRepoC.i"
+#endif /* !defined INLINE */
+
+ImplementationRepository::ServerObject_ptr ImplementationRepository::ServerObject::_narrow (
+ CORBA::Object_ptr obj,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+{
+ if (CORBA::is_nil (obj))
+ return ImplementationRepository::ServerObject::_nil ();
+ CORBA::Boolean is_a = obj->_is_a ("IDL:ImplementationRepository/ServerObject:1.0", ACE_TRY_ENV);
+ ACE_CHECK_RETURN (ImplementationRepository::ServerObject::_nil ());
+ if (is_a == 0)
+ return ImplementationRepository::ServerObject::_nil ();
+ return ImplementationRepository::ServerObject::_unchecked_narrow (obj, ACE_TRY_ENV);
+}
+
+ImplementationRepository::ServerObject_ptr ImplementationRepository::ServerObject::_unchecked_narrow (
+ CORBA::Object_ptr obj,
+ CORBA::Environment &
+ )
+{
+ if (CORBA::is_nil (obj))
+ return ImplementationRepository::ServerObject::_nil ();
+ TAO_Stub* stub = obj->_stubobj ();
+ stub->_incr_refcnt ();
+ ImplementationRepository::ServerObject_ptr default_proxy = ImplementationRepository::ServerObject::_nil ();
+ if (obj->_is_collocated () && _TAO_collocation_ImplementationRepository_ServerObject_Stub_Factory_function_pointer != 0)
+ {
+ default_proxy = _TAO_collocation_ImplementationRepository_ServerObject_Stub_Factory_function_pointer (obj);
+ }
+ if (CORBA::is_nil (default_proxy))
+ ACE_NEW_RETURN (default_proxy, ImplementationRepository::ServerObject (stub), ImplementationRepository::ServerObject::_nil ());
+ return TAO_ImplementationRepository_ServerObject_PROXY_FACTORY_ADAPTER::instance ()->create_proxy (default_proxy);
+}
+
+ImplementationRepository::ServerObject_ptr
+ImplementationRepository::ServerObject::_duplicate (ImplementationRepository::ServerObject_ptr obj)
+{
+ if (!CORBA::is_nil (obj))
+ obj->_incr_refcnt ();
+ return obj;
+}
+
+void ImplementationRepository::ServerObject::ping (
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+
+
+
+
+ TAO_Stub *istub = this->_stubobj ();
+ if (istub == 0)
+ ACE_THROW (CORBA::INTERNAL ());
+
+
+ TAO_GIOP_Twoway_Invocation _tao_call (
+ istub,
+ "ping",
+ istub->orb_core ()
+ );
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ TAO_ClientRequestInterceptor_Adapter
+ _tao_vfr (istub->orb_core ()->orb ()->_get_client_interceptor (ACE_TRY_ENV));
+ ACE_CHECK;
+ PortableInterceptor::Cookies _tao_cookies;
+ CORBA::NVList_var _tao_interceptor_args;
+ if (_tao_vfr.valid ())
+ {
+ istub->orb_core ()->orb ()->create_list (0, _tao_interceptor_args.inout (), ACE_TRY_ENV);
+ ACE_CHECK;
+ }
+
+ ACE_TRY
+ {
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ for (;;)
+ {
+ _tao_call.start (ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ TAO_INTERCEPTOR (
+ _tao_vfr.preinvoke (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "ping",
+ _tao_call.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ )
+ );
+ TAO_INTERCEPTOR_CHECK;
+ CORBA::Short flag = TAO::SYNC_WITH_TARGET;
+ _tao_call.prepare_header (ACE_static_cast (CORBA::Octet, flag), ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ int _invoke_status =
+ _tao_call.invoke (0, 0, ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ if (_invoke_status == TAO_INVOKE_RESTART)
+ continue;
+ if (_invoke_status != TAO_INVOKE_OK)
+ {
+ TAO_INTERCEPTOR_THROW (CORBA::UNKNOWN (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES));
+ }
+
+ TAO_INTERCEPTOR (
+ _tao_vfr.postinvoke (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "ping",
+ _tao_call.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ )
+ );
+ TAO_INTERCEPTOR_CHECK;
+ break;
+
+ }
+#if defined (TAO_HAS_INTERCEPTORS)
+
+ }
+ ACE_CATCHANY
+ {
+ _tao_vfr.exception_occurred (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "ping",
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ ACE_RETHROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+}
+
+void ImplementationRepository::ServerObject::shutdown (
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+
+
+
+
+ TAO_Stub *istub = this->_stubobj ();
+ if (istub == 0)
+ ACE_THROW (CORBA::INTERNAL ());
+
+
+ TAO_GIOP_Twoway_Invocation _tao_call (
+ istub,
+ "shutdown",
+ istub->orb_core ()
+ );
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ TAO_ClientRequestInterceptor_Adapter
+ _tao_vfr (istub->orb_core ()->orb ()->_get_client_interceptor (ACE_TRY_ENV));
+ ACE_CHECK;
+ PortableInterceptor::Cookies _tao_cookies;
+ CORBA::NVList_var _tao_interceptor_args;
+ if (_tao_vfr.valid ())
+ {
+ istub->orb_core ()->orb ()->create_list (0, _tao_interceptor_args.inout (), ACE_TRY_ENV);
+ ACE_CHECK;
+ }
+
+ ACE_TRY
+ {
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ for (;;)
+ {
+ _tao_call.start (ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ TAO_INTERCEPTOR (
+ _tao_vfr.preinvoke (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "shutdown",
+ _tao_call.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ )
+ );
+ TAO_INTERCEPTOR_CHECK;
+ CORBA::Short flag = TAO::SYNC_WITH_TARGET;
+ _tao_call.prepare_header (ACE_static_cast (CORBA::Octet, flag), ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ int _invoke_status =
+ _tao_call.invoke (0, 0, ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ if (_invoke_status == TAO_INVOKE_RESTART)
+ continue;
+ if (_invoke_status != TAO_INVOKE_OK)
+ {
+ TAO_INTERCEPTOR_THROW (CORBA::UNKNOWN (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES));
+ }
+
+ TAO_INTERCEPTOR (
+ _tao_vfr.postinvoke (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "shutdown",
+ _tao_call.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ )
+ );
+ TAO_INTERCEPTOR_CHECK;
+ break;
+
+ }
+#if defined (TAO_HAS_INTERCEPTORS)
+
+ }
+ ACE_CATCHANY
+ {
+ _tao_vfr.exception_occurred (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "shutdown",
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ ACE_RETHROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+}
+
+CORBA::Boolean ImplementationRepository::ServerObject::_is_a (const CORBA::Char *value, CORBA::Environment &ACE_TRY_ENV)
+{
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:ImplementationRepository/ServerObject: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* ImplementationRepository::ServerObject::_interface_repository_id (void) const
+{
+ return "IDL:ImplementationRepository/ServerObject:1.0";
+}
+
+ImplementationRepository::TAO_ImplementationRepository_ServerObject_Default_Proxy_Factory::TAO_ImplementationRepository_ServerObject_Default_Proxy_Factory (int register_proxy_factory)
+{
+ if (register_proxy_factory)
+ {
+ TAO_ImplementationRepository_ServerObject_PROXY_FACTORY_ADAPTER::instance ()->register_proxy_factory (this);
+ }
+}
+
+ImplementationRepository::TAO_ImplementationRepository_ServerObject_Default_Proxy_Factory::~TAO_ImplementationRepository_ServerObject_Default_Proxy_Factory (void)
+{
+}
+
+ImplementationRepository::ServerObject_ptr
+ImplementationRepository::TAO_ImplementationRepository_ServerObject_Default_Proxy_Factory::create_proxy (
+ ImplementationRepository::ServerObject_ptr proxy,
+ CORBA::Environment &
+ )
+{
+ return proxy;
+}
+
+ImplementationRepository::TAO_ImplementationRepository_ServerObject_Proxy_Factory_Adapter::TAO_ImplementationRepository_ServerObject_Proxy_Factory_Adapter (void)
+ : proxy_factory_ (0),
+ delete_proxy_factory_ (0)
+{
+}
+
+ImplementationRepository::TAO_ImplementationRepository_ServerObject_Proxy_Factory_Adapter::~TAO_ImplementationRepository_ServerObject_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
+ImplementationRepository::TAO_ImplementationRepository_ServerObject_Proxy_Factory_Adapter::register_proxy_factory (
+ TAO_ImplementationRepository_ServerObject_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
+ImplementationRepository::TAO_ImplementationRepository_ServerObject_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;
+}
+
+ImplementationRepository::ServerObject_ptr
+ImplementationRepository::TAO_ImplementationRepository_ServerObject_Proxy_Factory_Adapter::create_proxy (
+ ImplementationRepository::ServerObject_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_ImplementationRepository_ServerObject_Default_Proxy_Factory (1),
+ 0);
+
+
+ return this->proxy_factory_->create_proxy (proxy);
+}
+
+ImplementationRepository::TAO_ImplementationRepository_ServerObject_Smart_Proxy_Base::TAO_ImplementationRepository_ServerObject_Smart_Proxy_Base (ImplementationRepository::ServerObject_ptr proxy)
+: base_proxy_ (proxy)
+{
+}
+
+ImplementationRepository::TAO_ImplementationRepository_ServerObject_Smart_Proxy_Base::~TAO_ImplementationRepository_ServerObject_Smart_Proxy_Base (void)
+{
+}
+
+void ImplementationRepository::TAO_ImplementationRepository_ServerObject_Smart_Proxy_Base::ping (
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->base_proxy_->ping (
+ ACE_TRY_ENV
+ );
+
+}
+
+void ImplementationRepository::TAO_ImplementationRepository_ServerObject_Smart_Proxy_Base::shutdown (
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->base_proxy_->shutdown (
+ ACE_TRY_ENV
+ );
+
+}
+
+#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) || \
+ defined (ACE_HAS_GNU_REPO)
+template class ACE_Singleton<ImplementationRepository::TAO_ImplementationRepository_ServerObject_Proxy_Factory_Adapter, ACE_SYNCH_RECURSIVE_MUTEX >;
+#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA)
+#pragma instantiate ACE_Singleton<ImplementationRepository::TAO_ImplementationRepository_ServerObject_Proxy_Factory_Adapter, ACE_SYNCH_RECURSIVE_MUTEX>
+#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */
+
+static const CORBA::Long _oc_ImplementationRepository_ServerObject[] =
+{
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ 46, ACE_NTOHL (0x49444c3a), ACE_NTOHL (0x496d706c), ACE_NTOHL (0x656d656e), ACE_NTOHL (0x74617469), ACE_NTOHL (0x6f6e5265), ACE_NTOHL (0x706f7369), ACE_NTOHL (0x746f7279), ACE_NTOHL (0x2f536572), ACE_NTOHL (0x7665724f), ACE_NTOHL (0x626a6563), ACE_NTOHL (0x743a312e), ACE_NTOHL (0x30000000), // repository ID = IDL:ImplementationRepository/ServerObject:1.0
+ 13, ACE_NTOHL (0x53657276), ACE_NTOHL (0x65724f62), ACE_NTOHL (0x6a656374), ACE_NTOHL (0x0), // name = ServerObject
+};
+static CORBA::TypeCode _tc_TAO_tc_ImplementationRepository_ServerObject (CORBA::tk_objref, sizeof (_oc_ImplementationRepository_ServerObject), (char *) &_oc_ImplementationRepository_ServerObject, 0, sizeof (ImplementationRepository::ServerObject));
+TAO_NAMESPACE_TYPE (CORBA::TypeCode_ptr)
+TAO_NAMESPACE_BEGIN (ImplementationRepository)
+TAO_NAMESPACE_DEFINE (CORBA::TypeCode_ptr, _tc_ServerObject, &_tc_TAO_tc_ImplementationRepository_ServerObject)
+TAO_NAMESPACE_END
+static const CORBA::Long _oc_ImplementationRepository_EnvironmentVariable[] =
+{
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ 53, ACE_NTOHL (0x49444c3a), ACE_NTOHL (0x496d706c), ACE_NTOHL (0x656d656e), ACE_NTOHL (0x74617469), ACE_NTOHL (0x6f6e5265), ACE_NTOHL (0x706f7369), ACE_NTOHL (0x746f7279), ACE_NTOHL (0x2f456e76), ACE_NTOHL (0x69726f6e), ACE_NTOHL (0x6d656e74), ACE_NTOHL (0x56617269), ACE_NTOHL (0x61626c65), ACE_NTOHL (0x3a312e30), ACE_NTOHL (0x0), // repository ID = IDL:ImplementationRepository/EnvironmentVariable:1.0
+ 20, ACE_NTOHL (0x456e7669), ACE_NTOHL (0x726f6e6d), ACE_NTOHL (0x656e7456), ACE_NTOHL (0x61726961), ACE_NTOHL (0x626c6500), // name = EnvironmentVariable
+ 2, // member count
+ 5, ACE_NTOHL (0x6e616d65), ACE_NTOHL (0x0), // name = name
+ CORBA::tk_string,
+ 0U, // string length
+ 6, ACE_NTOHL (0x76616c75), ACE_NTOHL (0x65000000), // name = value
+ CORBA::tk_string,
+ 0U, // string length
+};
+static CORBA::TypeCode _tc_TAO_tc_ImplementationRepository_EnvironmentVariable (CORBA::tk_struct, sizeof (_oc_ImplementationRepository_EnvironmentVariable), (char *) &_oc_ImplementationRepository_EnvironmentVariable, 0, sizeof (ImplementationRepository::EnvironmentVariable));
+TAO_NAMESPACE_TYPE (CORBA::TypeCode_ptr)
+TAO_NAMESPACE_BEGIN (ImplementationRepository)
+TAO_NAMESPACE_DEFINE (CORBA::TypeCode_ptr, _tc_EnvironmentVariable, &_tc_TAO_tc_ImplementationRepository_EnvironmentVariable)
+TAO_NAMESPACE_END
+static const CORBA::Long _oc_ImplementationRepository_Address[] =
+{
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ 41, ACE_NTOHL (0x49444c3a), ACE_NTOHL (0x496d706c), ACE_NTOHL (0x656d656e), ACE_NTOHL (0x74617469), ACE_NTOHL (0x6f6e5265), ACE_NTOHL (0x706f7369), ACE_NTOHL (0x746f7279), ACE_NTOHL (0x2f416464), ACE_NTOHL (0x72657373), ACE_NTOHL (0x3a312e30), ACE_NTOHL (0x0), // repository ID = IDL:ImplementationRepository/Address:1.0
+ 8, ACE_NTOHL (0x41646472), ACE_NTOHL (0x65737300), // name = Address
+ CORBA::tk_string,
+ 0U, // string length
+};
+static CORBA::TypeCode _tc_TAO_tc_ImplementationRepository_Address (CORBA::tk_alias, sizeof (_oc_ImplementationRepository_Address), (char *) &_oc_ImplementationRepository_Address, 0, sizeof (ImplementationRepository::Address));
+TAO_NAMESPACE_TYPE (CORBA::TypeCode_ptr)
+TAO_NAMESPACE_BEGIN (ImplementationRepository)
+TAO_NAMESPACE_DEFINE (CORBA::TypeCode_ptr, _tc_Address, &_tc_TAO_tc_ImplementationRepository_Address)
+TAO_NAMESPACE_END
+
+#if !defined (TAO_USE_SEQUENCE_TEMPLATES)
+
+#if !defined (__TAO_UNBOUNDED_SEQUENCE_IMPLEMENTATIONREPOSITORY_ENVIRONMENTLIST_CS_)
+#define __TAO_UNBOUNDED_SEQUENCE_IMPLEMENTATIONREPOSITORY_ENVIRONMENTLIST_CS_
+
+ void
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList::_allocate_buffer (CORBA::ULong length)
+ {
+ ImplementationRepository::EnvironmentVariable* tmp = 0;
+ tmp = ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList::allocbuf (length);
+
+ if (this->buffer_ != 0)
+ {
+ ImplementationRepository::EnvironmentVariable *old = ACE_reinterpret_cast (ImplementationRepository::EnvironmentVariable *,this->buffer_);
+
+ for (CORBA::ULong i = 0; i < this->length_; ++i)
+ tmp[i] = old[i];
+
+ if (this->release_)
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList::freebuf (old);
+
+ }
+ this->buffer_ = tmp;
+ }
+
+ void
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList::_deallocate_buffer (void)
+ {
+ if (this->buffer_ == 0 || this->release_ == 0)
+ return;
+
+ ImplementationRepository::EnvironmentVariable *tmp = ACE_reinterpret_cast (ImplementationRepository::EnvironmentVariable *,this->buffer_);
+
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList::freebuf (tmp);
+ this->buffer_ = 0;
+ }
+
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList::~_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList (void) // Dtor.
+ {
+ this->_deallocate_buffer ();
+ }
+
+
+#endif /* end #if !defined */
+
+
+#endif /* !TAO_USE_SEQUENCE_TEMPLATES */
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_ENVIRONMENTLIST_CS_)
+#define _IMPLEMENTATIONREPOSITORY_ENVIRONMENTLIST_CS_
+
+// *************************************************************
+// ImplementationRepository::EnvironmentList
+// *************************************************************
+
+ImplementationRepository::EnvironmentList::EnvironmentList (void)
+{}
+ImplementationRepository::EnvironmentList::EnvironmentList (CORBA::ULong max) // uses max size
+ :
+#if !defined (TAO_USE_SEQUENCE_TEMPLATES)
+ _TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList
+#else /* TAO_USE_SEQUENCE_TEMPLATES */
+ TAO_Unbounded_Sequence<ImplementationRepository::EnvironmentVariable>
+#endif /* !TAO_USE_SEQUENCE_TEMPLATES */
+ (max)
+{}
+ImplementationRepository::EnvironmentList::EnvironmentList (CORBA::ULong max, CORBA::ULong length, ImplementationRepository::EnvironmentVariable *buffer, CORBA::Boolean release)
+ :
+#if !defined (TAO_USE_SEQUENCE_TEMPLATES)
+ _TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList
+#else /* TAO_USE_SEQUENCE_TEMPLATES */
+ TAO_Unbounded_Sequence<ImplementationRepository::EnvironmentVariable>
+#endif /* !TAO_USE_SEQUENCE_TEMPLATES */
+ (max, length, buffer, release)
+{}
+ImplementationRepository::EnvironmentList::EnvironmentList (const EnvironmentList &seq) // copy ctor
+ :
+#if !defined (TAO_USE_SEQUENCE_TEMPLATES)
+ _TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList
+#else /* TAO_USE_SEQUENCE_TEMPLATES */
+ TAO_Unbounded_Sequence<ImplementationRepository::EnvironmentVariable>
+#endif /* !TAO_USE_SEQUENCE_TEMPLATES */
+ (seq)
+{}
+ImplementationRepository::EnvironmentList::~EnvironmentList (void) // dtor
+{}
+
+
+#endif /* end #if !defined */
+
+static const CORBA::Long _oc_ImplementationRepository_EnvironmentList[] =
+{
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ 49, ACE_NTOHL (0x49444c3a), ACE_NTOHL (0x496d706c), ACE_NTOHL (0x656d656e), ACE_NTOHL (0x74617469), ACE_NTOHL (0x6f6e5265), ACE_NTOHL (0x706f7369), ACE_NTOHL (0x746f7279), ACE_NTOHL (0x2f456e76), ACE_NTOHL (0x69726f6e), ACE_NTOHL (0x6d656e74), ACE_NTOHL (0x4c697374), ACE_NTOHL (0x3a312e30), ACE_NTOHL (0x0), // repository ID = IDL:ImplementationRepository/EnvironmentList:1.0
+ 16, ACE_NTOHL (0x456e7669), ACE_NTOHL (0x726f6e6d), ACE_NTOHL (0x656e744c), ACE_NTOHL (0x69737400), // name = EnvironmentList
+ CORBA::tk_sequence, // typecode kind
+ 148, // encapsulation length
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ CORBA::tk_struct, // typecode kind
+ 132, // encapsulation length
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ 53, ACE_NTOHL (0x49444c3a), ACE_NTOHL (0x496d706c), ACE_NTOHL (0x656d656e), ACE_NTOHL (0x74617469), ACE_NTOHL (0x6f6e5265), ACE_NTOHL (0x706f7369), ACE_NTOHL (0x746f7279), ACE_NTOHL (0x2f456e76), ACE_NTOHL (0x69726f6e), ACE_NTOHL (0x6d656e74), ACE_NTOHL (0x56617269), ACE_NTOHL (0x61626c65), ACE_NTOHL (0x3a312e30), ACE_NTOHL (0x0), // repository ID = IDL:ImplementationRepository/EnvironmentVariable:1.0
+ 20, ACE_NTOHL (0x456e7669), ACE_NTOHL (0x726f6e6d), ACE_NTOHL (0x656e7456), ACE_NTOHL (0x61726961), ACE_NTOHL (0x626c6500), // name = EnvironmentVariable
+ 2, // member count
+ 5, ACE_NTOHL (0x6e616d65), ACE_NTOHL (0x0), // name = name
+ CORBA::tk_string,
+ 0U, // string length
+ 6, ACE_NTOHL (0x76616c75), ACE_NTOHL (0x65000000), // name = value
+ CORBA::tk_string,
+ 0U, // string length
+
+ 0U,
+
+};
+static CORBA::TypeCode _tc_TAO_tc_ImplementationRepository_EnvironmentList (CORBA::tk_alias, sizeof (_oc_ImplementationRepository_EnvironmentList), (char *) &_oc_ImplementationRepository_EnvironmentList, 0, sizeof (ImplementationRepository::EnvironmentList));
+TAO_NAMESPACE_TYPE (CORBA::TypeCode_ptr)
+TAO_NAMESPACE_BEGIN (ImplementationRepository)
+TAO_NAMESPACE_DEFINE (CORBA::TypeCode_ptr, _tc_EnvironmentList, &_tc_TAO_tc_ImplementationRepository_EnvironmentList)
+TAO_NAMESPACE_END
+static const CORBA::Long _oc_ImplementationRepository_ActivationMode[] =
+{
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ 48, ACE_NTOHL (0x49444c3a), ACE_NTOHL (0x496d706c), ACE_NTOHL (0x656d656e), ACE_NTOHL (0x74617469), ACE_NTOHL (0x6f6e5265), ACE_NTOHL (0x706f7369), ACE_NTOHL (0x746f7279), ACE_NTOHL (0x2f416374), ACE_NTOHL (0x69766174), ACE_NTOHL (0x696f6e4d), ACE_NTOHL (0x6f64653a), ACE_NTOHL (0x312e3000), // repository ID = IDL:ImplementationRepository/ActivationMode:1.0
+ 15, ACE_NTOHL (0x41637469), ACE_NTOHL (0x76617469), ACE_NTOHL (0x6f6e4d6f), ACE_NTOHL (0x64650000), // name = ActivationMode
+ 4, // member count
+ 7, ACE_NTOHL (0x4e4f524d), ACE_NTOHL (0x414c0000), // name = NORMAL
+ 7, ACE_NTOHL (0x4d414e55), ACE_NTOHL (0x414c0000), // name = MANUAL
+ 11, ACE_NTOHL (0x5045525f), ACE_NTOHL (0x434c4945), ACE_NTOHL (0x4e540000), // name = PER_CLIENT
+ 11, ACE_NTOHL (0x4155544f), ACE_NTOHL (0x5f535441), ACE_NTOHL (0x52540000), // name = AUTO_START
+};
+static CORBA::TypeCode _tc_TAO_tc_ImplementationRepository_ActivationMode (CORBA::tk_enum, sizeof (_oc_ImplementationRepository_ActivationMode), (char *) &_oc_ImplementationRepository_ActivationMode, 0, sizeof (ImplementationRepository::ActivationMode));
+TAO_NAMESPACE_TYPE (CORBA::TypeCode_ptr)
+TAO_NAMESPACE_BEGIN (ImplementationRepository)
+TAO_NAMESPACE_DEFINE (CORBA::TypeCode_ptr, _tc_ActivationMode, &_tc_TAO_tc_ImplementationRepository_ActivationMode)
+TAO_NAMESPACE_END
+static const CORBA::Long _oc_ImplementationRepository_StartupOptions[] =
+{
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ 48, ACE_NTOHL (0x49444c3a), ACE_NTOHL (0x496d706c), ACE_NTOHL (0x656d656e), ACE_NTOHL (0x74617469), ACE_NTOHL (0x6f6e5265), ACE_NTOHL (0x706f7369), ACE_NTOHL (0x746f7279), ACE_NTOHL (0x2f537461), ACE_NTOHL (0x72747570), ACE_NTOHL (0x4f707469), ACE_NTOHL (0x6f6e733a), ACE_NTOHL (0x312e3000), // repository ID = IDL:ImplementationRepository/StartupOptions:1.0
+ 15, ACE_NTOHL (0x53746172), ACE_NTOHL (0x7475704f), ACE_NTOHL (0x7074696f), ACE_NTOHL (0x6e730000), // name = StartupOptions
+ 4, // member count
+ 13, ACE_NTOHL (0x636f6d6d), ACE_NTOHL (0x616e645f), ACE_NTOHL (0x6c696e65), ACE_NTOHL (0x0), // name = command_line
+ CORBA::tk_string,
+ 0U, // string length
+ 12, ACE_NTOHL (0x656e7669), ACE_NTOHL (0x726f6e6d), ACE_NTOHL (0x656e7400), // name = environment
+ CORBA::tk_alias, // typecode kind for typedefs
+ 236, // encapsulation length
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ 49, ACE_NTOHL (0x49444c3a), ACE_NTOHL (0x496d706c), ACE_NTOHL (0x656d656e), ACE_NTOHL (0x74617469), ACE_NTOHL (0x6f6e5265), ACE_NTOHL (0x706f7369), ACE_NTOHL (0x746f7279), ACE_NTOHL (0x2f456e76), ACE_NTOHL (0x69726f6e), ACE_NTOHL (0x6d656e74), ACE_NTOHL (0x4c697374), ACE_NTOHL (0x3a312e30), ACE_NTOHL (0x0), // repository ID = IDL:ImplementationRepository/EnvironmentList:1.0
+ 16, ACE_NTOHL (0x456e7669), ACE_NTOHL (0x726f6e6d), ACE_NTOHL (0x656e744c), ACE_NTOHL (0x69737400), // name = EnvironmentList
+ CORBA::tk_sequence, // typecode kind
+ 148, // encapsulation length
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ CORBA::tk_struct, // typecode kind
+ 132, // encapsulation length
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ 53, ACE_NTOHL (0x49444c3a), ACE_NTOHL (0x496d706c), ACE_NTOHL (0x656d656e), ACE_NTOHL (0x74617469), ACE_NTOHL (0x6f6e5265), ACE_NTOHL (0x706f7369), ACE_NTOHL (0x746f7279), ACE_NTOHL (0x2f456e76), ACE_NTOHL (0x69726f6e), ACE_NTOHL (0x6d656e74), ACE_NTOHL (0x56617269), ACE_NTOHL (0x61626c65), ACE_NTOHL (0x3a312e30), ACE_NTOHL (0x0), // repository ID = IDL:ImplementationRepository/EnvironmentVariable:1.0
+ 20, ACE_NTOHL (0x456e7669), ACE_NTOHL (0x726f6e6d), ACE_NTOHL (0x656e7456), ACE_NTOHL (0x61726961), ACE_NTOHL (0x626c6500), // name = EnvironmentVariable
+ 2, // member count
+ 5, ACE_NTOHL (0x6e616d65), ACE_NTOHL (0x0), // name = name
+ CORBA::tk_string,
+ 0U, // string length
+ 6, ACE_NTOHL (0x76616c75), ACE_NTOHL (0x65000000), // name = value
+ CORBA::tk_string,
+ 0U, // string length
+
+ 0U,
+
+
+ 18, ACE_NTOHL (0x776f726b), ACE_NTOHL (0x696e675f), ACE_NTOHL (0x64697265), ACE_NTOHL (0x63746f72), ACE_NTOHL (0x79000000), // name = working_directory
+ CORBA::tk_string,
+ 0U, // string length
+ 11, ACE_NTOHL (0x61637469), ACE_NTOHL (0x76617469), ACE_NTOHL (0x6f6e0000), // name = activation
+ CORBA::tk_enum, // typecode kind
+ 136, // encapsulation length
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ 48, ACE_NTOHL (0x49444c3a), ACE_NTOHL (0x496d706c), ACE_NTOHL (0x656d656e), ACE_NTOHL (0x74617469), ACE_NTOHL (0x6f6e5265), ACE_NTOHL (0x706f7369), ACE_NTOHL (0x746f7279), ACE_NTOHL (0x2f416374), ACE_NTOHL (0x69766174), ACE_NTOHL (0x696f6e4d), ACE_NTOHL (0x6f64653a), ACE_NTOHL (0x312e3000), // repository ID = IDL:ImplementationRepository/ActivationMode:1.0
+ 15, ACE_NTOHL (0x41637469), ACE_NTOHL (0x76617469), ACE_NTOHL (0x6f6e4d6f), ACE_NTOHL (0x64650000), // name = ActivationMode
+ 4, // member count
+ 7, ACE_NTOHL (0x4e4f524d), ACE_NTOHL (0x414c0000), // name = NORMAL
+ 7, ACE_NTOHL (0x4d414e55), ACE_NTOHL (0x414c0000), // name = MANUAL
+ 11, ACE_NTOHL (0x5045525f), ACE_NTOHL (0x434c4945), ACE_NTOHL (0x4e540000), // name = PER_CLIENT
+ 11, ACE_NTOHL (0x4155544f), ACE_NTOHL (0x5f535441), ACE_NTOHL (0x52540000), // name = AUTO_START
+
+};
+static CORBA::TypeCode _tc_TAO_tc_ImplementationRepository_StartupOptions (CORBA::tk_struct, sizeof (_oc_ImplementationRepository_StartupOptions), (char *) &_oc_ImplementationRepository_StartupOptions, 0, sizeof (ImplementationRepository::StartupOptions));
+TAO_NAMESPACE_TYPE (CORBA::TypeCode_ptr)
+TAO_NAMESPACE_BEGIN (ImplementationRepository)
+TAO_NAMESPACE_DEFINE (CORBA::TypeCode_ptr, _tc_StartupOptions, &_tc_TAO_tc_ImplementationRepository_StartupOptions)
+TAO_NAMESPACE_END
+static const CORBA::Long _oc_ImplementationRepository_ServerInformation[] =
+{
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ 51, ACE_NTOHL (0x49444c3a), ACE_NTOHL (0x496d706c), ACE_NTOHL (0x656d656e), ACE_NTOHL (0x74617469), ACE_NTOHL (0x6f6e5265), ACE_NTOHL (0x706f7369), ACE_NTOHL (0x746f7279), ACE_NTOHL (0x2f536572), ACE_NTOHL (0x76657249), ACE_NTOHL (0x6e666f72), ACE_NTOHL (0x6d617469), ACE_NTOHL (0x6f6e3a31), ACE_NTOHL (0x2e300000), // repository ID = IDL:ImplementationRepository/ServerInformation:1.0
+ 18, ACE_NTOHL (0x53657276), ACE_NTOHL (0x6572496e), ACE_NTOHL (0x666f726d), ACE_NTOHL (0x6174696f), ACE_NTOHL (0x6e000000), // name = ServerInformation
+ 4, // member count
+ 15, ACE_NTOHL (0x6c6f6769), ACE_NTOHL (0x63616c5f), ACE_NTOHL (0x73657276), ACE_NTOHL (0x65720000), // name = logical_server
+ CORBA::tk_string,
+ 0U, // string length
+ 7, ACE_NTOHL (0x73657276), ACE_NTOHL (0x65720000), // name = server
+ CORBA::tk_string,
+ 0U, // string length
+ 8, ACE_NTOHL (0x73746172), ACE_NTOHL (0x74757000), // name = startup
+ CORBA::tk_struct, // typecode kind
+ 560, // encapsulation length
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ 48, ACE_NTOHL (0x49444c3a), ACE_NTOHL (0x496d706c), ACE_NTOHL (0x656d656e), ACE_NTOHL (0x74617469), ACE_NTOHL (0x6f6e5265), ACE_NTOHL (0x706f7369), ACE_NTOHL (0x746f7279), ACE_NTOHL (0x2f537461), ACE_NTOHL (0x72747570), ACE_NTOHL (0x4f707469), ACE_NTOHL (0x6f6e733a), ACE_NTOHL (0x312e3000), // repository ID = IDL:ImplementationRepository/StartupOptions:1.0
+ 15, ACE_NTOHL (0x53746172), ACE_NTOHL (0x7475704f), ACE_NTOHL (0x7074696f), ACE_NTOHL (0x6e730000), // name = StartupOptions
+ 4, // member count
+ 13, ACE_NTOHL (0x636f6d6d), ACE_NTOHL (0x616e645f), ACE_NTOHL (0x6c696e65), ACE_NTOHL (0x0), // name = command_line
+ CORBA::tk_string,
+ 0U, // string length
+ 12, ACE_NTOHL (0x656e7669), ACE_NTOHL (0x726f6e6d), ACE_NTOHL (0x656e7400), // name = environment
+ CORBA::tk_alias, // typecode kind for typedefs
+ 236, // encapsulation length
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ 49, ACE_NTOHL (0x49444c3a), ACE_NTOHL (0x496d706c), ACE_NTOHL (0x656d656e), ACE_NTOHL (0x74617469), ACE_NTOHL (0x6f6e5265), ACE_NTOHL (0x706f7369), ACE_NTOHL (0x746f7279), ACE_NTOHL (0x2f456e76), ACE_NTOHL (0x69726f6e), ACE_NTOHL (0x6d656e74), ACE_NTOHL (0x4c697374), ACE_NTOHL (0x3a312e30), ACE_NTOHL (0x0), // repository ID = IDL:ImplementationRepository/EnvironmentList:1.0
+ 16, ACE_NTOHL (0x456e7669), ACE_NTOHL (0x726f6e6d), ACE_NTOHL (0x656e744c), ACE_NTOHL (0x69737400), // name = EnvironmentList
+ CORBA::tk_sequence, // typecode kind
+ 148, // encapsulation length
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ CORBA::tk_struct, // typecode kind
+ 132, // encapsulation length
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ 53, ACE_NTOHL (0x49444c3a), ACE_NTOHL (0x496d706c), ACE_NTOHL (0x656d656e), ACE_NTOHL (0x74617469), ACE_NTOHL (0x6f6e5265), ACE_NTOHL (0x706f7369), ACE_NTOHL (0x746f7279), ACE_NTOHL (0x2f456e76), ACE_NTOHL (0x69726f6e), ACE_NTOHL (0x6d656e74), ACE_NTOHL (0x56617269), ACE_NTOHL (0x61626c65), ACE_NTOHL (0x3a312e30), ACE_NTOHL (0x0), // repository ID = IDL:ImplementationRepository/EnvironmentVariable:1.0
+ 20, ACE_NTOHL (0x456e7669), ACE_NTOHL (0x726f6e6d), ACE_NTOHL (0x656e7456), ACE_NTOHL (0x61726961), ACE_NTOHL (0x626c6500), // name = EnvironmentVariable
+ 2, // member count
+ 5, ACE_NTOHL (0x6e616d65), ACE_NTOHL (0x0), // name = name
+ CORBA::tk_string,
+ 0U, // string length
+ 6, ACE_NTOHL (0x76616c75), ACE_NTOHL (0x65000000), // name = value
+ CORBA::tk_string,
+ 0U, // string length
+
+ 0U,
+
+
+ 18, ACE_NTOHL (0x776f726b), ACE_NTOHL (0x696e675f), ACE_NTOHL (0x64697265), ACE_NTOHL (0x63746f72), ACE_NTOHL (0x79000000), // name = working_directory
+ CORBA::tk_string,
+ 0U, // string length
+ 11, ACE_NTOHL (0x61637469), ACE_NTOHL (0x76617469), ACE_NTOHL (0x6f6e0000), // name = activation
+ CORBA::tk_enum, // typecode kind
+ 136, // encapsulation length
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ 48, ACE_NTOHL (0x49444c3a), ACE_NTOHL (0x496d706c), ACE_NTOHL (0x656d656e), ACE_NTOHL (0x74617469), ACE_NTOHL (0x6f6e5265), ACE_NTOHL (0x706f7369), ACE_NTOHL (0x746f7279), ACE_NTOHL (0x2f416374), ACE_NTOHL (0x69766174), ACE_NTOHL (0x696f6e4d), ACE_NTOHL (0x6f64653a), ACE_NTOHL (0x312e3000), // repository ID = IDL:ImplementationRepository/ActivationMode:1.0
+ 15, ACE_NTOHL (0x41637469), ACE_NTOHL (0x76617469), ACE_NTOHL (0x6f6e4d6f), ACE_NTOHL (0x64650000), // name = ActivationMode
+ 4, // member count
+ 7, ACE_NTOHL (0x4e4f524d), ACE_NTOHL (0x414c0000), // name = NORMAL
+ 7, ACE_NTOHL (0x4d414e55), ACE_NTOHL (0x414c0000), // name = MANUAL
+ 11, ACE_NTOHL (0x5045525f), ACE_NTOHL (0x434c4945), ACE_NTOHL (0x4e540000), // name = PER_CLIENT
+ 11, ACE_NTOHL (0x4155544f), ACE_NTOHL (0x5f535441), ACE_NTOHL (0x52540000), // name = AUTO_START
+
+
+ 9, ACE_NTOHL (0x6c6f6361), ACE_NTOHL (0x74696f6e), ACE_NTOHL (0x0), // name = location
+ CORBA::tk_alias, // typecode kind for typedefs
+ 72, // encapsulation length
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ 41, ACE_NTOHL (0x49444c3a), ACE_NTOHL (0x496d706c), ACE_NTOHL (0x656d656e), ACE_NTOHL (0x74617469), ACE_NTOHL (0x6f6e5265), ACE_NTOHL (0x706f7369), ACE_NTOHL (0x746f7279), ACE_NTOHL (0x2f416464), ACE_NTOHL (0x72657373), ACE_NTOHL (0x3a312e30), ACE_NTOHL (0x0), // repository ID = IDL:ImplementationRepository/Address:1.0
+ 8, ACE_NTOHL (0x41646472), ACE_NTOHL (0x65737300), // name = Address
+ CORBA::tk_string,
+ 0U, // string length
+
+};
+static CORBA::TypeCode _tc_TAO_tc_ImplementationRepository_ServerInformation (CORBA::tk_struct, sizeof (_oc_ImplementationRepository_ServerInformation), (char *) &_oc_ImplementationRepository_ServerInformation, 0, sizeof (ImplementationRepository::ServerInformation));
+TAO_NAMESPACE_TYPE (CORBA::TypeCode_ptr)
+TAO_NAMESPACE_BEGIN (ImplementationRepository)
+TAO_NAMESPACE_DEFINE (CORBA::TypeCode_ptr, _tc_ServerInformation, &_tc_TAO_tc_ImplementationRepository_ServerInformation)
+TAO_NAMESPACE_END
+
+#if !defined (TAO_USE_SEQUENCE_TEMPLATES)
+
+#if !defined (__TAO_UNBOUNDED_SEQUENCE_IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONLIST_CS_)
+#define __TAO_UNBOUNDED_SEQUENCE_IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONLIST_CS_
+
+ void
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList::_allocate_buffer (CORBA::ULong length)
+ {
+ ImplementationRepository::ServerInformation* tmp = 0;
+ tmp = ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList::allocbuf (length);
+
+ if (this->buffer_ != 0)
+ {
+ ImplementationRepository::ServerInformation *old = ACE_reinterpret_cast (ImplementationRepository::ServerInformation *,this->buffer_);
+
+ for (CORBA::ULong i = 0; i < this->length_; ++i)
+ tmp[i] = old[i];
+
+ if (this->release_)
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList::freebuf (old);
+
+ }
+ this->buffer_ = tmp;
+ }
+
+ void
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList::_deallocate_buffer (void)
+ {
+ if (this->buffer_ == 0 || this->release_ == 0)
+ return;
+
+ ImplementationRepository::ServerInformation *tmp = ACE_reinterpret_cast (ImplementationRepository::ServerInformation *,this->buffer_);
+
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList::freebuf (tmp);
+ this->buffer_ = 0;
+ }
+
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList::~_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList (void) // Dtor.
+ {
+ this->_deallocate_buffer ();
+ }
+
+
+#endif /* end #if !defined */
+
+
+#endif /* !TAO_USE_SEQUENCE_TEMPLATES */
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONLIST_CS_)
+#define _IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONLIST_CS_
+
+// *************************************************************
+// ImplementationRepository::ServerInformationList
+// *************************************************************
+
+ImplementationRepository::ServerInformationList::ServerInformationList (void)
+{}
+ImplementationRepository::ServerInformationList::ServerInformationList (CORBA::ULong max) // uses max size
+ :
+#if !defined (TAO_USE_SEQUENCE_TEMPLATES)
+ _TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList
+#else /* TAO_USE_SEQUENCE_TEMPLATES */
+ TAO_Unbounded_Sequence<ImplementationRepository::ServerInformation>
+#endif /* !TAO_USE_SEQUENCE_TEMPLATES */
+ (max)
+{}
+ImplementationRepository::ServerInformationList::ServerInformationList (CORBA::ULong max, CORBA::ULong length, ImplementationRepository::ServerInformation *buffer, CORBA::Boolean release)
+ :
+#if !defined (TAO_USE_SEQUENCE_TEMPLATES)
+ _TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList
+#else /* TAO_USE_SEQUENCE_TEMPLATES */
+ TAO_Unbounded_Sequence<ImplementationRepository::ServerInformation>
+#endif /* !TAO_USE_SEQUENCE_TEMPLATES */
+ (max, length, buffer, release)
+{}
+ImplementationRepository::ServerInformationList::ServerInformationList (const ServerInformationList &seq) // copy ctor
+ :
+#if !defined (TAO_USE_SEQUENCE_TEMPLATES)
+ _TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList
+#else /* TAO_USE_SEQUENCE_TEMPLATES */
+ TAO_Unbounded_Sequence<ImplementationRepository::ServerInformation>
+#endif /* !TAO_USE_SEQUENCE_TEMPLATES */
+ (seq)
+{}
+ImplementationRepository::ServerInformationList::~ServerInformationList (void) // dtor
+{}
+
+
+#endif /* end #if !defined */
+
+static const CORBA::Long _oc_ImplementationRepository_ServerInformationList[] =
+{
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ 55, ACE_NTOHL (0x49444c3a), ACE_NTOHL (0x496d706c), ACE_NTOHL (0x656d656e), ACE_NTOHL (0x74617469), ACE_NTOHL (0x6f6e5265), ACE_NTOHL (0x706f7369), ACE_NTOHL (0x746f7279), ACE_NTOHL (0x2f536572), ACE_NTOHL (0x76657249), ACE_NTOHL (0x6e666f72), ACE_NTOHL (0x6d617469), ACE_NTOHL (0x6f6e4c69), ACE_NTOHL (0x73743a31), ACE_NTOHL (0x2e300000), // repository ID = IDL:ImplementationRepository/ServerInformationList:1.0
+ 22, ACE_NTOHL (0x53657276), ACE_NTOHL (0x6572496e), ACE_NTOHL (0x666f726d), ACE_NTOHL (0x6174696f), ACE_NTOHL (0x6e4c6973), ACE_NTOHL (0x74000000), // name = ServerInformationList
+ CORBA::tk_sequence, // typecode kind
+ 828, // encapsulation length
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ CORBA::tk_struct, // typecode kind
+ 812, // encapsulation length
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ 51, ACE_NTOHL (0x49444c3a), ACE_NTOHL (0x496d706c), ACE_NTOHL (0x656d656e), ACE_NTOHL (0x74617469), ACE_NTOHL (0x6f6e5265), ACE_NTOHL (0x706f7369), ACE_NTOHL (0x746f7279), ACE_NTOHL (0x2f536572), ACE_NTOHL (0x76657249), ACE_NTOHL (0x6e666f72), ACE_NTOHL (0x6d617469), ACE_NTOHL (0x6f6e3a31), ACE_NTOHL (0x2e300000), // repository ID = IDL:ImplementationRepository/ServerInformation:1.0
+ 18, ACE_NTOHL (0x53657276), ACE_NTOHL (0x6572496e), ACE_NTOHL (0x666f726d), ACE_NTOHL (0x6174696f), ACE_NTOHL (0x6e000000), // name = ServerInformation
+ 4, // member count
+ 15, ACE_NTOHL (0x6c6f6769), ACE_NTOHL (0x63616c5f), ACE_NTOHL (0x73657276), ACE_NTOHL (0x65720000), // name = logical_server
+ CORBA::tk_string,
+ 0U, // string length
+ 7, ACE_NTOHL (0x73657276), ACE_NTOHL (0x65720000), // name = server
+ CORBA::tk_string,
+ 0U, // string length
+ 8, ACE_NTOHL (0x73746172), ACE_NTOHL (0x74757000), // name = startup
+ CORBA::tk_struct, // typecode kind
+ 560, // encapsulation length
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ 48, ACE_NTOHL (0x49444c3a), ACE_NTOHL (0x496d706c), ACE_NTOHL (0x656d656e), ACE_NTOHL (0x74617469), ACE_NTOHL (0x6f6e5265), ACE_NTOHL (0x706f7369), ACE_NTOHL (0x746f7279), ACE_NTOHL (0x2f537461), ACE_NTOHL (0x72747570), ACE_NTOHL (0x4f707469), ACE_NTOHL (0x6f6e733a), ACE_NTOHL (0x312e3000), // repository ID = IDL:ImplementationRepository/StartupOptions:1.0
+ 15, ACE_NTOHL (0x53746172), ACE_NTOHL (0x7475704f), ACE_NTOHL (0x7074696f), ACE_NTOHL (0x6e730000), // name = StartupOptions
+ 4, // member count
+ 13, ACE_NTOHL (0x636f6d6d), ACE_NTOHL (0x616e645f), ACE_NTOHL (0x6c696e65), ACE_NTOHL (0x0), // name = command_line
+ CORBA::tk_string,
+ 0U, // string length
+ 12, ACE_NTOHL (0x656e7669), ACE_NTOHL (0x726f6e6d), ACE_NTOHL (0x656e7400), // name = environment
+ CORBA::tk_alias, // typecode kind for typedefs
+ 236, // encapsulation length
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ 49, ACE_NTOHL (0x49444c3a), ACE_NTOHL (0x496d706c), ACE_NTOHL (0x656d656e), ACE_NTOHL (0x74617469), ACE_NTOHL (0x6f6e5265), ACE_NTOHL (0x706f7369), ACE_NTOHL (0x746f7279), ACE_NTOHL (0x2f456e76), ACE_NTOHL (0x69726f6e), ACE_NTOHL (0x6d656e74), ACE_NTOHL (0x4c697374), ACE_NTOHL (0x3a312e30), ACE_NTOHL (0x0), // repository ID = IDL:ImplementationRepository/EnvironmentList:1.0
+ 16, ACE_NTOHL (0x456e7669), ACE_NTOHL (0x726f6e6d), ACE_NTOHL (0x656e744c), ACE_NTOHL (0x69737400), // name = EnvironmentList
+ CORBA::tk_sequence, // typecode kind
+ 148, // encapsulation length
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ CORBA::tk_struct, // typecode kind
+ 132, // encapsulation length
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ 53, ACE_NTOHL (0x49444c3a), ACE_NTOHL (0x496d706c), ACE_NTOHL (0x656d656e), ACE_NTOHL (0x74617469), ACE_NTOHL (0x6f6e5265), ACE_NTOHL (0x706f7369), ACE_NTOHL (0x746f7279), ACE_NTOHL (0x2f456e76), ACE_NTOHL (0x69726f6e), ACE_NTOHL (0x6d656e74), ACE_NTOHL (0x56617269), ACE_NTOHL (0x61626c65), ACE_NTOHL (0x3a312e30), ACE_NTOHL (0x0), // repository ID = IDL:ImplementationRepository/EnvironmentVariable:1.0
+ 20, ACE_NTOHL (0x456e7669), ACE_NTOHL (0x726f6e6d), ACE_NTOHL (0x656e7456), ACE_NTOHL (0x61726961), ACE_NTOHL (0x626c6500), // name = EnvironmentVariable
+ 2, // member count
+ 5, ACE_NTOHL (0x6e616d65), ACE_NTOHL (0x0), // name = name
+ CORBA::tk_string,
+ 0U, // string length
+ 6, ACE_NTOHL (0x76616c75), ACE_NTOHL (0x65000000), // name = value
+ CORBA::tk_string,
+ 0U, // string length
+
+ 0U,
+
+
+ 18, ACE_NTOHL (0x776f726b), ACE_NTOHL (0x696e675f), ACE_NTOHL (0x64697265), ACE_NTOHL (0x63746f72), ACE_NTOHL (0x79000000), // name = working_directory
+ CORBA::tk_string,
+ 0U, // string length
+ 11, ACE_NTOHL (0x61637469), ACE_NTOHL (0x76617469), ACE_NTOHL (0x6f6e0000), // name = activation
+ CORBA::tk_enum, // typecode kind
+ 136, // encapsulation length
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ 48, ACE_NTOHL (0x49444c3a), ACE_NTOHL (0x496d706c), ACE_NTOHL (0x656d656e), ACE_NTOHL (0x74617469), ACE_NTOHL (0x6f6e5265), ACE_NTOHL (0x706f7369), ACE_NTOHL (0x746f7279), ACE_NTOHL (0x2f416374), ACE_NTOHL (0x69766174), ACE_NTOHL (0x696f6e4d), ACE_NTOHL (0x6f64653a), ACE_NTOHL (0x312e3000), // repository ID = IDL:ImplementationRepository/ActivationMode:1.0
+ 15, ACE_NTOHL (0x41637469), ACE_NTOHL (0x76617469), ACE_NTOHL (0x6f6e4d6f), ACE_NTOHL (0x64650000), // name = ActivationMode
+ 4, // member count
+ 7, ACE_NTOHL (0x4e4f524d), ACE_NTOHL (0x414c0000), // name = NORMAL
+ 7, ACE_NTOHL (0x4d414e55), ACE_NTOHL (0x414c0000), // name = MANUAL
+ 11, ACE_NTOHL (0x5045525f), ACE_NTOHL (0x434c4945), ACE_NTOHL (0x4e540000), // name = PER_CLIENT
+ 11, ACE_NTOHL (0x4155544f), ACE_NTOHL (0x5f535441), ACE_NTOHL (0x52540000), // name = AUTO_START
+
+
+ 9, ACE_NTOHL (0x6c6f6361), ACE_NTOHL (0x74696f6e), ACE_NTOHL (0x0), // name = location
+ CORBA::tk_alias, // typecode kind for typedefs
+ 72, // encapsulation length
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ 41, ACE_NTOHL (0x49444c3a), ACE_NTOHL (0x496d706c), ACE_NTOHL (0x656d656e), ACE_NTOHL (0x74617469), ACE_NTOHL (0x6f6e5265), ACE_NTOHL (0x706f7369), ACE_NTOHL (0x746f7279), ACE_NTOHL (0x2f416464), ACE_NTOHL (0x72657373), ACE_NTOHL (0x3a312e30), ACE_NTOHL (0x0), // repository ID = IDL:ImplementationRepository/Address:1.0
+ 8, ACE_NTOHL (0x41646472), ACE_NTOHL (0x65737300), // name = Address
+ CORBA::tk_string,
+ 0U, // string length
+
+
+ 0U,
+
+};
+static CORBA::TypeCode _tc_TAO_tc_ImplementationRepository_ServerInformationList (CORBA::tk_alias, sizeof (_oc_ImplementationRepository_ServerInformationList), (char *) &_oc_ImplementationRepository_ServerInformationList, 0, sizeof (ImplementationRepository::ServerInformationList));
+TAO_NAMESPACE_TYPE (CORBA::TypeCode_ptr)
+TAO_NAMESPACE_BEGIN (ImplementationRepository)
+TAO_NAMESPACE_DEFINE (CORBA::TypeCode_ptr, _tc_ServerInformationList, &_tc_TAO_tc_ImplementationRepository_ServerInformationList)
+TAO_NAMESPACE_END
+ImplementationRepository::Administration_ptr ImplementationRepository::Administration::_narrow (
+ CORBA::Object_ptr obj,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+{
+ if (CORBA::is_nil (obj))
+ return ImplementationRepository::Administration::_nil ();
+ CORBA::Boolean is_a = obj->_is_a ("IDL:ImplementationRepository/Administration:1.0", ACE_TRY_ENV);
+ ACE_CHECK_RETURN (ImplementationRepository::Administration::_nil ());
+ if (is_a == 0)
+ return ImplementationRepository::Administration::_nil ();
+ return ImplementationRepository::Administration::_unchecked_narrow (obj, ACE_TRY_ENV);
+}
+
+ImplementationRepository::Administration_ptr ImplementationRepository::Administration::_unchecked_narrow (
+ CORBA::Object_ptr obj,
+ CORBA::Environment &
+ )
+{
+ if (CORBA::is_nil (obj))
+ return ImplementationRepository::Administration::_nil ();
+ TAO_Stub* stub = obj->_stubobj ();
+ stub->_incr_refcnt ();
+ ImplementationRepository::Administration_ptr default_proxy = ImplementationRepository::Administration::_nil ();
+ if (obj->_is_collocated () && _TAO_collocation_ImplementationRepository_Administration_Stub_Factory_function_pointer != 0)
+ {
+ default_proxy = _TAO_collocation_ImplementationRepository_Administration_Stub_Factory_function_pointer (obj);
+ }
+ if (CORBA::is_nil (default_proxy))
+ ACE_NEW_RETURN (default_proxy, ImplementationRepository::Administration (stub), ImplementationRepository::Administration::_nil ());
+ return TAO_ImplementationRepository_Administration_PROXY_FACTORY_ADAPTER::instance ()->create_proxy (default_proxy);
+}
+
+ImplementationRepository::Administration_ptr
+ImplementationRepository::Administration::_duplicate (ImplementationRepository::Administration_ptr obj)
+{
+ if (!CORBA::is_nil (obj))
+ obj->_incr_refcnt ();
+ return obj;
+}
+
+// default constructor
+ImplementationRepository::Administration::AlreadyRegistered::AlreadyRegistered (void)
+ : CORBA_UserException (ImplementationRepository::Administration::_tc_AlreadyRegistered)
+{
+}
+
+// destructor - all members are of self managing types
+ImplementationRepository::Administration::AlreadyRegistered::~AlreadyRegistered (void)
+{
+}
+
+// copy constructor
+ImplementationRepository::Administration::AlreadyRegistered::AlreadyRegistered (const ImplementationRepository::Administration::AlreadyRegistered &_tao_excp)
+ : CORBA_UserException (_tao_excp._type ())
+{
+ }
+
+// assignment operator
+ImplementationRepository::Administration::AlreadyRegistered&
+ImplementationRepository::Administration::AlreadyRegistered::operator= (const ImplementationRepository::Administration::AlreadyRegistered &_tao_excp)
+{
+
+ this->CORBA_UserException::operator= (_tao_excp);
+ return *this;
+}
+
+// narrow
+ImplementationRepository::Administration::AlreadyRegistered_ptr
+ImplementationRepository::Administration::AlreadyRegistered::_narrow (CORBA::Exception *exc)
+{
+ if (!ACE_OS::strcmp ("IDL:ImplementationRepository/Administration/AlreadyRegistered:1.0", exc->_id ())) // same type
+ return ACE_dynamic_cast (ImplementationRepository::Administration::AlreadyRegistered_ptr, exc);
+ else
+ return 0;
+}
+
+
+void ImplementationRepository::Administration::AlreadyRegistered::_raise ()
+{
+ TAO_RAISE(*this);
+}
+
+// TAO extension - the _alloc method
+CORBA::Exception *ImplementationRepository::Administration::AlreadyRegistered::_alloc (void)
+{
+ CORBA::Exception *retval = 0;
+ ACE_NEW_RETURN (retval, ImplementationRepository::Administration::AlreadyRegistered, 0);
+ return retval;
+}
+
+static const CORBA::Long _oc_ImplementationRepository_Administration_AlreadyRegistered[] =
+{
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ 66, ACE_NTOHL (0x49444c3a), ACE_NTOHL (0x496d706c), ACE_NTOHL (0x656d656e), ACE_NTOHL (0x74617469), ACE_NTOHL (0x6f6e5265), ACE_NTOHL (0x706f7369), ACE_NTOHL (0x746f7279), ACE_NTOHL (0x2f41646d), ACE_NTOHL (0x696e6973), ACE_NTOHL (0x74726174), ACE_NTOHL (0x696f6e2f), ACE_NTOHL (0x416c7265), ACE_NTOHL (0x61647952), ACE_NTOHL (0x65676973), ACE_NTOHL (0x74657265), ACE_NTOHL (0x643a312e), ACE_NTOHL (0x30000000), // repository ID = IDL:ImplementationRepository/Administration/AlreadyRegistered:1.0
+ 18, ACE_NTOHL (0x416c7265), ACE_NTOHL (0x61647952), ACE_NTOHL (0x65676973), ACE_NTOHL (0x74657265), ACE_NTOHL (0x64000000), // name = AlreadyRegistered
+ 0, // member count
+};
+static CORBA::TypeCode _tc_TAO_tc_ImplementationRepository_Administration_AlreadyRegistered (CORBA::tk_except, sizeof (_oc_ImplementationRepository_Administration_AlreadyRegistered), (char *) &_oc_ImplementationRepository_Administration_AlreadyRegistered, 0, sizeof (ImplementationRepository::Administration::AlreadyRegistered));
+CORBA::TypeCode_ptr ImplementationRepository::Administration::_tc_AlreadyRegistered = &_tc_TAO_tc_ImplementationRepository_Administration_AlreadyRegistered;
+
+// default constructor
+ImplementationRepository::Administration::CannotActivate::CannotActivate (void)
+ : CORBA_UserException (ImplementationRepository::Administration::_tc_CannotActivate)
+{
+}
+
+// destructor - all members are of self managing types
+ImplementationRepository::Administration::CannotActivate::~CannotActivate (void)
+{
+}
+
+// copy constructor
+ImplementationRepository::Administration::CannotActivate::CannotActivate (const ImplementationRepository::Administration::CannotActivate &_tao_excp)
+ : CORBA_UserException (_tao_excp._type ())
+{
+ this->reason = CORBA::string_dup (_tao_excp.reason.in ());
+}
+
+// assignment operator
+ImplementationRepository::Administration::CannotActivate&
+ImplementationRepository::Administration::CannotActivate::operator= (const ImplementationRepository::Administration::CannotActivate &_tao_excp)
+{
+
+ this->CORBA_UserException::operator= (_tao_excp);
+ this->reason = CORBA::string_dup (_tao_excp.reason.in ());
+ return *this;
+}
+
+// narrow
+ImplementationRepository::Administration::CannotActivate_ptr
+ImplementationRepository::Administration::CannotActivate::_narrow (CORBA::Exception *exc)
+{
+ if (!ACE_OS::strcmp ("IDL:ImplementationRepository/Administration/CannotActivate:1.0", exc->_id ())) // same type
+ return ACE_dynamic_cast (ImplementationRepository::Administration::CannotActivate_ptr, exc);
+ else
+ return 0;
+}
+
+
+void ImplementationRepository::Administration::CannotActivate::_raise ()
+{
+ TAO_RAISE(*this);
+}
+
+// TAO extension - the _alloc method
+CORBA::Exception *ImplementationRepository::Administration::CannotActivate::_alloc (void)
+{
+ CORBA::Exception *retval = 0;
+ ACE_NEW_RETURN (retval, ImplementationRepository::Administration::CannotActivate, 0);
+ return retval;
+}
+
+ImplementationRepository::Administration::CannotActivate::CannotActivate (
+ const char * _tao_reason
+)
+ : CORBA_UserException (CORBA::TypeCode::_duplicate (ImplementationRepository::Administration::_tc_CannotActivate))
+{
+ this->reason = CORBA::string_dup (_tao_reason);
+}
+
+static const CORBA::Long _oc_ImplementationRepository_Administration_CannotActivate[] =
+{
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ 63, ACE_NTOHL (0x49444c3a), ACE_NTOHL (0x496d706c), ACE_NTOHL (0x656d656e), ACE_NTOHL (0x74617469), ACE_NTOHL (0x6f6e5265), ACE_NTOHL (0x706f7369), ACE_NTOHL (0x746f7279), ACE_NTOHL (0x2f41646d), ACE_NTOHL (0x696e6973), ACE_NTOHL (0x74726174), ACE_NTOHL (0x696f6e2f), ACE_NTOHL (0x43616e6e), ACE_NTOHL (0x6f744163), ACE_NTOHL (0x74697661), ACE_NTOHL (0x74653a31), ACE_NTOHL (0x2e300000), // repository ID = IDL:ImplementationRepository/Administration/CannotActivate:1.0
+ 15, ACE_NTOHL (0x43616e6e), ACE_NTOHL (0x6f744163), ACE_NTOHL (0x74697661), ACE_NTOHL (0x74650000), // name = CannotActivate
+ 1, // member count
+ 7, ACE_NTOHL (0x72656173), ACE_NTOHL (0x6f6e0000), // name = reason
+ CORBA::tk_string,
+ 0U, // string length
+};
+static CORBA::TypeCode _tc_TAO_tc_ImplementationRepository_Administration_CannotActivate (CORBA::tk_except, sizeof (_oc_ImplementationRepository_Administration_CannotActivate), (char *) &_oc_ImplementationRepository_Administration_CannotActivate, 0, sizeof (ImplementationRepository::Administration::CannotActivate));
+CORBA::TypeCode_ptr ImplementationRepository::Administration::_tc_CannotActivate = &_tc_TAO_tc_ImplementationRepository_Administration_CannotActivate;
+
+// default constructor
+ImplementationRepository::Administration::NotFound::NotFound (void)
+ : CORBA_UserException (ImplementationRepository::Administration::_tc_NotFound)
+{
+}
+
+// destructor - all members are of self managing types
+ImplementationRepository::Administration::NotFound::~NotFound (void)
+{
+}
+
+// copy constructor
+ImplementationRepository::Administration::NotFound::NotFound (const ImplementationRepository::Administration::NotFound &_tao_excp)
+ : CORBA_UserException (_tao_excp._type ())
+{
+ }
+
+// assignment operator
+ImplementationRepository::Administration::NotFound&
+ImplementationRepository::Administration::NotFound::operator= (const ImplementationRepository::Administration::NotFound &_tao_excp)
+{
+
+ this->CORBA_UserException::operator= (_tao_excp);
+ return *this;
+}
+
+// narrow
+ImplementationRepository::Administration::NotFound_ptr
+ImplementationRepository::Administration::NotFound::_narrow (CORBA::Exception *exc)
+{
+ if (!ACE_OS::strcmp ("IDL:ImplementationRepository/Administration/NotFound:1.0", exc->_id ())) // same type
+ return ACE_dynamic_cast (ImplementationRepository::Administration::NotFound_ptr, exc);
+ else
+ return 0;
+}
+
+
+void ImplementationRepository::Administration::NotFound::_raise ()
+{
+ TAO_RAISE(*this);
+}
+
+// TAO extension - the _alloc method
+CORBA::Exception *ImplementationRepository::Administration::NotFound::_alloc (void)
+{
+ CORBA::Exception *retval = 0;
+ ACE_NEW_RETURN (retval, ImplementationRepository::Administration::NotFound, 0);
+ return retval;
+}
+
+static const CORBA::Long _oc_ImplementationRepository_Administration_NotFound[] =
+{
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ 57, ACE_NTOHL (0x49444c3a), ACE_NTOHL (0x496d706c), ACE_NTOHL (0x656d656e), ACE_NTOHL (0x74617469), ACE_NTOHL (0x6f6e5265), ACE_NTOHL (0x706f7369), ACE_NTOHL (0x746f7279), ACE_NTOHL (0x2f41646d), ACE_NTOHL (0x696e6973), ACE_NTOHL (0x74726174), ACE_NTOHL (0x696f6e2f), ACE_NTOHL (0x4e6f7446), ACE_NTOHL (0x6f756e64), ACE_NTOHL (0x3a312e30), ACE_NTOHL (0x0), // repository ID = IDL:ImplementationRepository/Administration/NotFound:1.0
+ 9, ACE_NTOHL (0x4e6f7446), ACE_NTOHL (0x6f756e64), ACE_NTOHL (0x0), // name = NotFound
+ 0, // member count
+};
+static CORBA::TypeCode _tc_TAO_tc_ImplementationRepository_Administration_NotFound (CORBA::tk_except, sizeof (_oc_ImplementationRepository_Administration_NotFound), (char *) &_oc_ImplementationRepository_Administration_NotFound, 0, sizeof (ImplementationRepository::Administration::NotFound));
+CORBA::TypeCode_ptr ImplementationRepository::Administration::_tc_NotFound = &_tc_TAO_tc_ImplementationRepository_Administration_NotFound;
+
+void ImplementationRepository::Administration::activate_server (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound,
+ ImplementationRepository::Administration::CannotActivate
+ ))
+{
+
+ static TAO_Exception_Data _tao_ImplementationRepository_Administration_activate_server_exceptiondata [] =
+ {
+ {ImplementationRepository::Administration::_tc_NotFound, ImplementationRepository::Administration::NotFound::_alloc},
+ {ImplementationRepository::Administration::_tc_CannotActivate, ImplementationRepository::Administration::CannotActivate::_alloc}
+ };
+
+
+
+
+ TAO_Stub *istub = this->_stubobj ();
+ if (istub == 0)
+ ACE_THROW (CORBA::INTERNAL ());
+
+
+ TAO_GIOP_Twoway_Invocation _tao_call (
+ istub,
+ "activate_server",
+ istub->orb_core ()
+ );
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ TAO_ClientRequestInterceptor_Adapter
+ _tao_vfr (istub->orb_core ()->orb ()->_get_client_interceptor (ACE_TRY_ENV));
+ ACE_CHECK;
+ PortableInterceptor::Cookies _tao_cookies;
+ CORBA::NVList_var _tao_interceptor_args;
+ if (_tao_vfr.valid ())
+ {
+ istub->orb_core ()->orb ()->create_list (0, _tao_interceptor_args.inout (), ACE_TRY_ENV);
+ ACE_CHECK;
+ }
+
+ ACE_TRY
+ {
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ for (;;)
+ {
+ _tao_call.start (ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ TAO_INTERCEPTOR (
+ _tao_vfr.preinvoke (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "activate_server",
+ _tao_call.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ )
+ );
+ TAO_INTERCEPTOR_CHECK;
+ CORBA::Short flag = TAO::SYNC_WITH_TARGET;
+ _tao_call.prepare_header (ACE_static_cast (CORBA::Octet, flag), ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ TAO_OutputCDR &_tao_out = _tao_call.out_stream ();
+ if (!(
+ (_tao_out << server)
+ ))
+ TAO_INTERCEPTOR_THROW (CORBA::MARSHAL ());
+ int _invoke_status =
+ _tao_call.invoke (_tao_ImplementationRepository_Administration_activate_server_exceptiondata, 2, ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ if (_invoke_status == TAO_INVOKE_RESTART)
+ continue;
+ if (_invoke_status != TAO_INVOKE_OK)
+ {
+ TAO_INTERCEPTOR_THROW (CORBA::UNKNOWN (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES));
+ }
+
+ TAO_INTERCEPTOR (
+ _tao_vfr.postinvoke (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "activate_server",
+ _tao_call.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ )
+ );
+ TAO_INTERCEPTOR_CHECK;
+ break;
+
+ }
+#if defined (TAO_HAS_INTERCEPTORS)
+
+ }
+ ACE_CATCHANY
+ {
+ _tao_vfr.exception_occurred (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "activate_server",
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ ACE_RETHROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+}
+
+void ImplementationRepository::Administration::register_server (
+ const char * server,
+ const ImplementationRepository::StartupOptions & options,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::AlreadyRegistered
+ ))
+{
+
+ static TAO_Exception_Data _tao_ImplementationRepository_Administration_register_server_exceptiondata [] =
+ {
+ {ImplementationRepository::Administration::_tc_AlreadyRegistered, ImplementationRepository::Administration::AlreadyRegistered::_alloc}
+ };
+
+
+
+
+ TAO_Stub *istub = this->_stubobj ();
+ if (istub == 0)
+ ACE_THROW (CORBA::INTERNAL ());
+
+
+ TAO_GIOP_Twoway_Invocation _tao_call (
+ istub,
+ "register_server",
+ istub->orb_core ()
+ );
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ TAO_ClientRequestInterceptor_Adapter
+ _tao_vfr (istub->orb_core ()->orb ()->_get_client_interceptor (ACE_TRY_ENV));
+ ACE_CHECK;
+ PortableInterceptor::Cookies _tao_cookies;
+ CORBA::NVList_var _tao_interceptor_args;
+ if (_tao_vfr.valid ())
+ {
+ istub->orb_core ()->orb ()->create_list (0, _tao_interceptor_args.inout (), ACE_TRY_ENV);
+ ACE_CHECK;
+ }
+
+ ACE_TRY
+ {
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ for (;;)
+ {
+ _tao_call.start (ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ TAO_INTERCEPTOR (
+ _tao_vfr.preinvoke (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "register_server",
+ _tao_call.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ )
+ );
+ TAO_INTERCEPTOR_CHECK;
+ CORBA::Short flag = TAO::SYNC_WITH_TARGET;
+ _tao_call.prepare_header (ACE_static_cast (CORBA::Octet, flag), ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ TAO_OutputCDR &_tao_out = _tao_call.out_stream ();
+ if (!(
+ (_tao_out << server) &&
+ (_tao_out << options)
+ ))
+ TAO_INTERCEPTOR_THROW (CORBA::MARSHAL ());
+ int _invoke_status =
+ _tao_call.invoke (_tao_ImplementationRepository_Administration_register_server_exceptiondata, 1, ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ if (_invoke_status == TAO_INVOKE_RESTART)
+ continue;
+ if (_invoke_status != TAO_INVOKE_OK)
+ {
+ TAO_INTERCEPTOR_THROW (CORBA::UNKNOWN (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES));
+ }
+
+ TAO_INTERCEPTOR (
+ _tao_vfr.postinvoke (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "register_server",
+ _tao_call.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ )
+ );
+ TAO_INTERCEPTOR_CHECK;
+ break;
+
+ }
+#if defined (TAO_HAS_INTERCEPTORS)
+
+ }
+ ACE_CATCHANY
+ {
+ _tao_vfr.exception_occurred (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "register_server",
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ ACE_RETHROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+}
+
+void ImplementationRepository::Administration::reregister_server (
+ const char * server,
+ const ImplementationRepository::StartupOptions & options,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+
+
+
+
+ TAO_Stub *istub = this->_stubobj ();
+ if (istub == 0)
+ ACE_THROW (CORBA::INTERNAL ());
+
+
+ TAO_GIOP_Twoway_Invocation _tao_call (
+ istub,
+ "reregister_server",
+ istub->orb_core ()
+ );
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ TAO_ClientRequestInterceptor_Adapter
+ _tao_vfr (istub->orb_core ()->orb ()->_get_client_interceptor (ACE_TRY_ENV));
+ ACE_CHECK;
+ PortableInterceptor::Cookies _tao_cookies;
+ CORBA::NVList_var _tao_interceptor_args;
+ if (_tao_vfr.valid ())
+ {
+ istub->orb_core ()->orb ()->create_list (0, _tao_interceptor_args.inout (), ACE_TRY_ENV);
+ ACE_CHECK;
+ }
+
+ ACE_TRY
+ {
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ for (;;)
+ {
+ _tao_call.start (ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ TAO_INTERCEPTOR (
+ _tao_vfr.preinvoke (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "reregister_server",
+ _tao_call.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ )
+ );
+ TAO_INTERCEPTOR_CHECK;
+ CORBA::Short flag = TAO::SYNC_WITH_TARGET;
+ _tao_call.prepare_header (ACE_static_cast (CORBA::Octet, flag), ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ TAO_OutputCDR &_tao_out = _tao_call.out_stream ();
+ if (!(
+ (_tao_out << server) &&
+ (_tao_out << options)
+ ))
+ TAO_INTERCEPTOR_THROW (CORBA::MARSHAL ());
+ int _invoke_status =
+ _tao_call.invoke (0, 0, ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ if (_invoke_status == TAO_INVOKE_RESTART)
+ continue;
+ if (_invoke_status != TAO_INVOKE_OK)
+ {
+ TAO_INTERCEPTOR_THROW (CORBA::UNKNOWN (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES));
+ }
+
+ TAO_INTERCEPTOR (
+ _tao_vfr.postinvoke (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "reregister_server",
+ _tao_call.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ )
+ );
+ TAO_INTERCEPTOR_CHECK;
+ break;
+
+ }
+#if defined (TAO_HAS_INTERCEPTORS)
+
+ }
+ ACE_CATCHANY
+ {
+ _tao_vfr.exception_occurred (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "reregister_server",
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ ACE_RETHROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+}
+
+void ImplementationRepository::Administration::remove_server (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ))
+{
+
+ static TAO_Exception_Data _tao_ImplementationRepository_Administration_remove_server_exceptiondata [] =
+ {
+ {ImplementationRepository::Administration::_tc_NotFound, ImplementationRepository::Administration::NotFound::_alloc}
+ };
+
+
+
+
+ TAO_Stub *istub = this->_stubobj ();
+ if (istub == 0)
+ ACE_THROW (CORBA::INTERNAL ());
+
+
+ TAO_GIOP_Twoway_Invocation _tao_call (
+ istub,
+ "remove_server",
+ istub->orb_core ()
+ );
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ TAO_ClientRequestInterceptor_Adapter
+ _tao_vfr (istub->orb_core ()->orb ()->_get_client_interceptor (ACE_TRY_ENV));
+ ACE_CHECK;
+ PortableInterceptor::Cookies _tao_cookies;
+ CORBA::NVList_var _tao_interceptor_args;
+ if (_tao_vfr.valid ())
+ {
+ istub->orb_core ()->orb ()->create_list (0, _tao_interceptor_args.inout (), ACE_TRY_ENV);
+ ACE_CHECK;
+ }
+
+ ACE_TRY
+ {
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ for (;;)
+ {
+ _tao_call.start (ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ TAO_INTERCEPTOR (
+ _tao_vfr.preinvoke (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "remove_server",
+ _tao_call.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ )
+ );
+ TAO_INTERCEPTOR_CHECK;
+ CORBA::Short flag = TAO::SYNC_WITH_TARGET;
+ _tao_call.prepare_header (ACE_static_cast (CORBA::Octet, flag), ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ TAO_OutputCDR &_tao_out = _tao_call.out_stream ();
+ if (!(
+ (_tao_out << server)
+ ))
+ TAO_INTERCEPTOR_THROW (CORBA::MARSHAL ());
+ int _invoke_status =
+ _tao_call.invoke (_tao_ImplementationRepository_Administration_remove_server_exceptiondata, 1, ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ if (_invoke_status == TAO_INVOKE_RESTART)
+ continue;
+ if (_invoke_status != TAO_INVOKE_OK)
+ {
+ TAO_INTERCEPTOR_THROW (CORBA::UNKNOWN (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES));
+ }
+
+ TAO_INTERCEPTOR (
+ _tao_vfr.postinvoke (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "remove_server",
+ _tao_call.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ )
+ );
+ TAO_INTERCEPTOR_CHECK;
+ break;
+
+ }
+#if defined (TAO_HAS_INTERCEPTORS)
+
+ }
+ ACE_CATCHANY
+ {
+ _tao_vfr.exception_occurred (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "remove_server",
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ ACE_RETHROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+}
+
+void ImplementationRepository::Administration::shutdown_server (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ))
+{
+
+ static TAO_Exception_Data _tao_ImplementationRepository_Administration_shutdown_server_exceptiondata [] =
+ {
+ {ImplementationRepository::Administration::_tc_NotFound, ImplementationRepository::Administration::NotFound::_alloc}
+ };
+
+
+
+
+ TAO_Stub *istub = this->_stubobj ();
+ if (istub == 0)
+ ACE_THROW (CORBA::INTERNAL ());
+
+
+ TAO_GIOP_Twoway_Invocation _tao_call (
+ istub,
+ "shutdown_server",
+ istub->orb_core ()
+ );
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ TAO_ClientRequestInterceptor_Adapter
+ _tao_vfr (istub->orb_core ()->orb ()->_get_client_interceptor (ACE_TRY_ENV));
+ ACE_CHECK;
+ PortableInterceptor::Cookies _tao_cookies;
+ CORBA::NVList_var _tao_interceptor_args;
+ if (_tao_vfr.valid ())
+ {
+ istub->orb_core ()->orb ()->create_list (0, _tao_interceptor_args.inout (), ACE_TRY_ENV);
+ ACE_CHECK;
+ }
+
+ ACE_TRY
+ {
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ for (;;)
+ {
+ _tao_call.start (ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ TAO_INTERCEPTOR (
+ _tao_vfr.preinvoke (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "shutdown_server",
+ _tao_call.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ )
+ );
+ TAO_INTERCEPTOR_CHECK;
+ CORBA::Short flag = TAO::SYNC_WITH_TARGET;
+ _tao_call.prepare_header (ACE_static_cast (CORBA::Octet, flag), ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ TAO_OutputCDR &_tao_out = _tao_call.out_stream ();
+ if (!(
+ (_tao_out << server)
+ ))
+ TAO_INTERCEPTOR_THROW (CORBA::MARSHAL ());
+ int _invoke_status =
+ _tao_call.invoke (_tao_ImplementationRepository_Administration_shutdown_server_exceptiondata, 1, ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ if (_invoke_status == TAO_INVOKE_RESTART)
+ continue;
+ if (_invoke_status != TAO_INVOKE_OK)
+ {
+ TAO_INTERCEPTOR_THROW (CORBA::UNKNOWN (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES));
+ }
+
+ TAO_INTERCEPTOR (
+ _tao_vfr.postinvoke (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "shutdown_server",
+ _tao_call.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ )
+ );
+ TAO_INTERCEPTOR_CHECK;
+ break;
+
+ }
+#if defined (TAO_HAS_INTERCEPTORS)
+
+ }
+ ACE_CATCHANY
+ {
+ _tao_vfr.exception_occurred (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "shutdown_server",
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ ACE_RETHROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+}
+
+char * ImplementationRepository::Administration::server_is_running (
+ const char * server,
+ const char * addr,
+ ImplementationRepository::ServerObject_ptr server_object,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ))
+{
+
+ static TAO_Exception_Data _tao_ImplementationRepository_Administration_server_is_running_exceptiondata [] =
+ {
+ {ImplementationRepository::Administration::_tc_NotFound, ImplementationRepository::Administration::NotFound::_alloc}
+ };
+
+ CORBA::String_var _tao_safe_retval;
+
+
+ TAO_Stub *istub = this->_stubobj ();
+ if (istub == 0)
+ ACE_THROW_RETURN (CORBA::INTERNAL (), 0);
+
+
+ TAO_GIOP_Twoway_Invocation _tao_call (
+ istub,
+ "server_is_running",
+ istub->orb_core ()
+ );
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ TAO_ClientRequestInterceptor_Adapter
+ _tao_vfr (istub->orb_core ()->orb ()->_get_client_interceptor (ACE_TRY_ENV));
+ ACE_CHECK_RETURN (0);
+ PortableInterceptor::Cookies _tao_cookies;
+ CORBA::NVList_var _tao_interceptor_args;
+ if (_tao_vfr.valid ())
+ {
+ istub->orb_core ()->orb ()->create_list (0, _tao_interceptor_args.inout (), ACE_TRY_ENV);
+ ACE_CHECK_RETURN (0);
+ }
+
+ ACE_TRY
+ {
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ for (;;)
+ {
+ _tao_call.start (ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK_RETURN (0);
+
+ TAO_INTERCEPTOR (
+ _tao_vfr.preinvoke (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "server_is_running",
+ _tao_call.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ )
+ );
+ TAO_INTERCEPTOR_CHECK_RETURN (0);
+ CORBA::Short flag = TAO::SYNC_WITH_TARGET;
+ _tao_call.prepare_header (ACE_static_cast (CORBA::Octet, flag), ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK_RETURN (0);
+
+ TAO_OutputCDR &_tao_out = _tao_call.out_stream ();
+ if (!(
+ (_tao_out << server) &&
+ (_tao_out << addr) &&
+ (_tao_out << server_object)
+ ))
+ TAO_INTERCEPTOR_THROW_RETURN (CORBA::MARSHAL (), 0);
+
+ int _invoke_status =
+ _tao_call.invoke (_tao_ImplementationRepository_Administration_server_is_running_exceptiondata, 1, ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK_RETURN (0);
+
+ if (_invoke_status == TAO_INVOKE_RESTART)
+ continue;
+ if (_invoke_status != TAO_INVOKE_OK)
+ {
+ TAO_INTERCEPTOR_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 ())
+ ))
+ TAO_INTERCEPTOR_THROW_RETURN (CORBA::MARSHAL (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), 0);
+
+ TAO_INTERCEPTOR (
+ _tao_vfr.postinvoke (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "server_is_running",
+ _tao_call.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ )
+ );
+ TAO_INTERCEPTOR_CHECK_RETURN (0);
+ break;
+
+ }
+#if defined (TAO_HAS_INTERCEPTORS)
+
+ }
+ ACE_CATCHANY
+ {
+ _tao_vfr.exception_occurred (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "server_is_running",
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ ACE_RETHROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK_RETURN (0);
+#endif /* TAO_HAS_INTERCEPTORS */
+ return _tao_safe_retval._retn ();
+}
+
+void ImplementationRepository::Administration::server_is_shutting_down (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ))
+{
+
+ static TAO_Exception_Data _tao_ImplementationRepository_Administration_server_is_shutting_down_exceptiondata [] =
+ {
+ {ImplementationRepository::Administration::_tc_NotFound, ImplementationRepository::Administration::NotFound::_alloc}
+ };
+
+
+
+
+ TAO_Stub *istub = this->_stubobj ();
+ if (istub == 0)
+ ACE_THROW (CORBA::INTERNAL ());
+
+
+ TAO_GIOP_Twoway_Invocation _tao_call (
+ istub,
+ "server_is_shutting_down",
+ istub->orb_core ()
+ );
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ TAO_ClientRequestInterceptor_Adapter
+ _tao_vfr (istub->orb_core ()->orb ()->_get_client_interceptor (ACE_TRY_ENV));
+ ACE_CHECK;
+ PortableInterceptor::Cookies _tao_cookies;
+ CORBA::NVList_var _tao_interceptor_args;
+ if (_tao_vfr.valid ())
+ {
+ istub->orb_core ()->orb ()->create_list (0, _tao_interceptor_args.inout (), ACE_TRY_ENV);
+ ACE_CHECK;
+ }
+
+ ACE_TRY
+ {
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ for (;;)
+ {
+ _tao_call.start (ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ TAO_INTERCEPTOR (
+ _tao_vfr.preinvoke (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "server_is_shutting_down",
+ _tao_call.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ )
+ );
+ TAO_INTERCEPTOR_CHECK;
+ CORBA::Short flag = TAO::SYNC_WITH_TARGET;
+ _tao_call.prepare_header (ACE_static_cast (CORBA::Octet, flag), ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ TAO_OutputCDR &_tao_out = _tao_call.out_stream ();
+ if (!(
+ (_tao_out << server)
+ ))
+ TAO_INTERCEPTOR_THROW (CORBA::MARSHAL ());
+ int _invoke_status =
+ _tao_call.invoke (_tao_ImplementationRepository_Administration_server_is_shutting_down_exceptiondata, 1, ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ if (_invoke_status == TAO_INVOKE_RESTART)
+ continue;
+ if (_invoke_status != TAO_INVOKE_OK)
+ {
+ TAO_INTERCEPTOR_THROW (CORBA::UNKNOWN (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES));
+ }
+
+ TAO_INTERCEPTOR (
+ _tao_vfr.postinvoke (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "server_is_shutting_down",
+ _tao_call.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ )
+ );
+ TAO_INTERCEPTOR_CHECK;
+ break;
+
+ }
+#if defined (TAO_HAS_INTERCEPTORS)
+
+ }
+ ACE_CATCHANY
+ {
+ _tao_vfr.exception_occurred (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "server_is_shutting_down",
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ ACE_RETHROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+}
+
+void ImplementationRepository::Administration::find (
+ const char * server,
+ ImplementationRepository::ServerInformation_out info,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ))
+{
+
+ static TAO_Exception_Data _tao_ImplementationRepository_Administration_find_exceptiondata [] =
+ {
+ {ImplementationRepository::Administration::_tc_NotFound, ImplementationRepository::Administration::NotFound::_alloc}
+ };
+
+
+
+
+ TAO_Stub *istub = this->_stubobj ();
+ if (istub == 0)
+ ACE_THROW (CORBA::INTERNAL ());
+
+
+ ACE_NEW (info.ptr (), ImplementationRepository::ServerInformation);
+ TAO_GIOP_Twoway_Invocation _tao_call (
+ istub,
+ "find",
+ istub->orb_core ()
+ );
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ TAO_ClientRequestInterceptor_Adapter
+ _tao_vfr (istub->orb_core ()->orb ()->_get_client_interceptor (ACE_TRY_ENV));
+ ACE_CHECK;
+ PortableInterceptor::Cookies _tao_cookies;
+ CORBA::NVList_var _tao_interceptor_args;
+ if (_tao_vfr.valid ())
+ {
+ istub->orb_core ()->orb ()->create_list (0, _tao_interceptor_args.inout (), ACE_TRY_ENV);
+ ACE_CHECK;
+ }
+
+ ACE_TRY
+ {
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ for (;;)
+ {
+ _tao_call.start (ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ TAO_INTERCEPTOR (
+ _tao_vfr.preinvoke (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "find",
+ _tao_call.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ )
+ );
+ TAO_INTERCEPTOR_CHECK;
+ CORBA::Short flag = TAO::SYNC_WITH_TARGET;
+ _tao_call.prepare_header (ACE_static_cast (CORBA::Octet, flag), ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ TAO_OutputCDR &_tao_out = _tao_call.out_stream ();
+ if (!(
+ (_tao_out << server)
+ ))
+ TAO_INTERCEPTOR_THROW (CORBA::MARSHAL ());
+ int _invoke_status =
+ _tao_call.invoke (_tao_ImplementationRepository_Administration_find_exceptiondata, 1, ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ if (_invoke_status == TAO_INVOKE_RESTART)
+ continue;
+ if (_invoke_status != TAO_INVOKE_OK)
+ {
+ TAO_INTERCEPTOR_THROW (CORBA::UNKNOWN (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES));
+ }
+ TAO_InputCDR &_tao_in = _tao_call.inp_stream ();
+ if (!(
+ (_tao_in >> *info.ptr ())
+ ))
+ TAO_INTERCEPTOR_THROW (CORBA::MARSHAL (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES));
+ TAO_INTERCEPTOR (
+ _tao_vfr.postinvoke (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "find",
+ _tao_call.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ )
+ );
+ TAO_INTERCEPTOR_CHECK;
+ break;
+
+ }
+#if defined (TAO_HAS_INTERCEPTORS)
+
+ }
+ ACE_CATCHANY
+ {
+ _tao_vfr.exception_occurred (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "find",
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ ACE_RETHROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+}
+
+void ImplementationRepository::Administration::list (
+ CORBA::ULong how_many,
+ ImplementationRepository::ServerInformationList_out server_list,
+ ImplementationRepository::ServerInformationIterator_out server_iterator,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+
+
+
+
+ TAO_Stub *istub = this->_stubobj ();
+ if (istub == 0)
+ ACE_THROW (CORBA::INTERNAL ());
+
+
+ ACE_NEW (server_list.ptr (), ImplementationRepository::ServerInformationList);
+ TAO_GIOP_Twoway_Invocation _tao_call (
+ istub,
+ "list",
+ istub->orb_core ()
+ );
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ TAO_ClientRequestInterceptor_Adapter
+ _tao_vfr (istub->orb_core ()->orb ()->_get_client_interceptor (ACE_TRY_ENV));
+ ACE_CHECK;
+ PortableInterceptor::Cookies _tao_cookies;
+ CORBA::NVList_var _tao_interceptor_args;
+ if (_tao_vfr.valid ())
+ {
+ istub->orb_core ()->orb ()->create_list (0, _tao_interceptor_args.inout (), ACE_TRY_ENV);
+ ACE_CHECK;
+ }
+
+ ACE_TRY
+ {
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ for (;;)
+ {
+ _tao_call.start (ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ TAO_INTERCEPTOR (
+ _tao_vfr.preinvoke (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "list",
+ _tao_call.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ )
+ );
+ TAO_INTERCEPTOR_CHECK;
+ CORBA::Short flag = TAO::SYNC_WITH_TARGET;
+ _tao_call.prepare_header (ACE_static_cast (CORBA::Octet, flag), ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ TAO_OutputCDR &_tao_out = _tao_call.out_stream ();
+ if (!(
+ (_tao_out << how_many)
+ ))
+ TAO_INTERCEPTOR_THROW (CORBA::MARSHAL ());
+ int _invoke_status =
+ _tao_call.invoke (0, 0, ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ if (_invoke_status == TAO_INVOKE_RESTART)
+ continue;
+ if (_invoke_status != TAO_INVOKE_OK)
+ {
+ TAO_INTERCEPTOR_THROW (CORBA::UNKNOWN (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES));
+ }
+ TAO_InputCDR &_tao_in = _tao_call.inp_stream ();
+ if (!(
+ (_tao_in >> *server_list.ptr ()) &&
+ (_tao_in >> server_iterator.ptr ())
+ ))
+ TAO_INTERCEPTOR_THROW (CORBA::MARSHAL (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES));
+ TAO_INTERCEPTOR (
+ _tao_vfr.postinvoke (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "list",
+ _tao_call.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ )
+ );
+ TAO_INTERCEPTOR_CHECK;
+ break;
+
+ }
+#if defined (TAO_HAS_INTERCEPTORS)
+
+ }
+ ACE_CATCHANY
+ {
+ _tao_vfr.exception_occurred (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "list",
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ ACE_RETHROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+}
+
+CORBA::Boolean ImplementationRepository::Administration::_is_a (const CORBA::Char *value, CORBA::Environment &ACE_TRY_ENV)
+{
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:ImplementationRepository/Administration: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* ImplementationRepository::Administration::_interface_repository_id (void) const
+{
+ return "IDL:ImplementationRepository/Administration:1.0";
+}
+
+ImplementationRepository::TAO_ImplementationRepository_Administration_Default_Proxy_Factory::TAO_ImplementationRepository_Administration_Default_Proxy_Factory (int register_proxy_factory)
+{
+ if (register_proxy_factory)
+ {
+ TAO_ImplementationRepository_Administration_PROXY_FACTORY_ADAPTER::instance ()->register_proxy_factory (this);
+ }
+}
+
+ImplementationRepository::TAO_ImplementationRepository_Administration_Default_Proxy_Factory::~TAO_ImplementationRepository_Administration_Default_Proxy_Factory (void)
+{
+}
+
+ImplementationRepository::Administration_ptr
+ImplementationRepository::TAO_ImplementationRepository_Administration_Default_Proxy_Factory::create_proxy (
+ ImplementationRepository::Administration_ptr proxy,
+ CORBA::Environment &
+ )
+{
+ return proxy;
+}
+
+ImplementationRepository::TAO_ImplementationRepository_Administration_Proxy_Factory_Adapter::TAO_ImplementationRepository_Administration_Proxy_Factory_Adapter (void)
+ : proxy_factory_ (0),
+ delete_proxy_factory_ (0)
+{
+}
+
+ImplementationRepository::TAO_ImplementationRepository_Administration_Proxy_Factory_Adapter::~TAO_ImplementationRepository_Administration_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
+ImplementationRepository::TAO_ImplementationRepository_Administration_Proxy_Factory_Adapter::register_proxy_factory (
+ TAO_ImplementationRepository_Administration_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
+ImplementationRepository::TAO_ImplementationRepository_Administration_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;
+}
+
+ImplementationRepository::Administration_ptr
+ImplementationRepository::TAO_ImplementationRepository_Administration_Proxy_Factory_Adapter::create_proxy (
+ ImplementationRepository::Administration_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_ImplementationRepository_Administration_Default_Proxy_Factory (1),
+ 0);
+
+
+ return this->proxy_factory_->create_proxy (proxy);
+}
+
+ImplementationRepository::TAO_ImplementationRepository_Administration_Smart_Proxy_Base::TAO_ImplementationRepository_Administration_Smart_Proxy_Base (ImplementationRepository::Administration_ptr proxy)
+: base_proxy_ (proxy)
+{
+}
+
+ImplementationRepository::TAO_ImplementationRepository_Administration_Smart_Proxy_Base::~TAO_ImplementationRepository_Administration_Smart_Proxy_Base (void)
+{
+}
+
+void ImplementationRepository::TAO_ImplementationRepository_Administration_Smart_Proxy_Base::activate_server (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound,
+ ImplementationRepository::Administration::CannotActivate
+ ))
+{
+ this->base_proxy_->activate_server (
+ server,
+ ACE_TRY_ENV
+ );
+
+}
+
+void ImplementationRepository::TAO_ImplementationRepository_Administration_Smart_Proxy_Base::register_server (
+ const char * server,
+ const ImplementationRepository::StartupOptions & options,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::AlreadyRegistered
+ ))
+{
+ this->base_proxy_->register_server (
+ server,
+ options,
+ ACE_TRY_ENV
+ );
+
+}
+
+void ImplementationRepository::TAO_ImplementationRepository_Administration_Smart_Proxy_Base::reregister_server (
+ const char * server,
+ const ImplementationRepository::StartupOptions & options,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->base_proxy_->reregister_server (
+ server,
+ options,
+ ACE_TRY_ENV
+ );
+
+}
+
+void ImplementationRepository::TAO_ImplementationRepository_Administration_Smart_Proxy_Base::remove_server (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ))
+{
+ this->base_proxy_->remove_server (
+ server,
+ ACE_TRY_ENV
+ );
+
+}
+
+void ImplementationRepository::TAO_ImplementationRepository_Administration_Smart_Proxy_Base::shutdown_server (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ))
+{
+ this->base_proxy_->shutdown_server (
+ server,
+ ACE_TRY_ENV
+ );
+
+}
+
+char * ImplementationRepository::TAO_ImplementationRepository_Administration_Smart_Proxy_Base::server_is_running (
+ const char * server,
+ const char * addr,
+ ImplementationRepository::ServerObject_ptr server_object,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ))
+{
+ return this->base_proxy_->server_is_running (
+ server,
+ addr,
+ server_object,
+ ACE_TRY_ENV
+ );
+
+}
+
+void ImplementationRepository::TAO_ImplementationRepository_Administration_Smart_Proxy_Base::server_is_shutting_down (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ))
+{
+ this->base_proxy_->server_is_shutting_down (
+ server,
+ ACE_TRY_ENV
+ );
+
+}
+
+void ImplementationRepository::TAO_ImplementationRepository_Administration_Smart_Proxy_Base::find (
+ const char * server,
+ ImplementationRepository::ServerInformation_out info,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ))
+{
+ this->base_proxy_->find (
+ server,
+ info,
+ ACE_TRY_ENV
+ );
+
+}
+
+void ImplementationRepository::TAO_ImplementationRepository_Administration_Smart_Proxy_Base::list (
+ CORBA::ULong how_many,
+ ImplementationRepository::ServerInformationList_out server_list,
+ ImplementationRepository::ServerInformationIterator_out server_iterator,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->base_proxy_->list (
+ how_many,
+ server_list,
+ server_iterator,
+ ACE_TRY_ENV
+ );
+
+}
+
+#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) || \
+ defined (ACE_HAS_GNU_REPO)
+template class ACE_Singleton<ImplementationRepository::TAO_ImplementationRepository_Administration_Proxy_Factory_Adapter, ACE_SYNCH_RECURSIVE_MUTEX >;
+#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA)
+#pragma instantiate ACE_Singleton<ImplementationRepository::TAO_ImplementationRepository_Administration_Proxy_Factory_Adapter, ACE_SYNCH_RECURSIVE_MUTEX>
+#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */
+
+static const CORBA::Long _oc_ImplementationRepository_Administration[] =
+{
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ 48, ACE_NTOHL (0x49444c3a), ACE_NTOHL (0x496d706c), ACE_NTOHL (0x656d656e), ACE_NTOHL (0x74617469), ACE_NTOHL (0x6f6e5265), ACE_NTOHL (0x706f7369), ACE_NTOHL (0x746f7279), ACE_NTOHL (0x2f41646d), ACE_NTOHL (0x696e6973), ACE_NTOHL (0x74726174), ACE_NTOHL (0x696f6e3a), ACE_NTOHL (0x312e3000), // repository ID = IDL:ImplementationRepository/Administration:1.0
+ 15, ACE_NTOHL (0x41646d69), ACE_NTOHL (0x6e697374), ACE_NTOHL (0x72617469), ACE_NTOHL (0x6f6e0000), // name = Administration
+};
+static CORBA::TypeCode _tc_TAO_tc_ImplementationRepository_Administration (CORBA::tk_objref, sizeof (_oc_ImplementationRepository_Administration), (char *) &_oc_ImplementationRepository_Administration, 0, sizeof (ImplementationRepository::Administration));
+TAO_NAMESPACE_TYPE (CORBA::TypeCode_ptr)
+TAO_NAMESPACE_BEGIN (ImplementationRepository)
+TAO_NAMESPACE_DEFINE (CORBA::TypeCode_ptr, _tc_Administration, &_tc_TAO_tc_ImplementationRepository_Administration)
+TAO_NAMESPACE_END
+ImplementationRepository::ServerInformationIterator_ptr ImplementationRepository::ServerInformationIterator::_narrow (
+ CORBA::Object_ptr obj,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+{
+ if (CORBA::is_nil (obj))
+ return ImplementationRepository::ServerInformationIterator::_nil ();
+ CORBA::Boolean is_a = obj->_is_a ("IDL:ImplementationRepository/ServerInformationIterator:1.0", ACE_TRY_ENV);
+ ACE_CHECK_RETURN (ImplementationRepository::ServerInformationIterator::_nil ());
+ if (is_a == 0)
+ return ImplementationRepository::ServerInformationIterator::_nil ();
+ return ImplementationRepository::ServerInformationIterator::_unchecked_narrow (obj, ACE_TRY_ENV);
+}
+
+ImplementationRepository::ServerInformationIterator_ptr ImplementationRepository::ServerInformationIterator::_unchecked_narrow (
+ CORBA::Object_ptr obj,
+ CORBA::Environment &
+ )
+{
+ if (CORBA::is_nil (obj))
+ return ImplementationRepository::ServerInformationIterator::_nil ();
+ TAO_Stub* stub = obj->_stubobj ();
+ stub->_incr_refcnt ();
+ ImplementationRepository::ServerInformationIterator_ptr default_proxy = ImplementationRepository::ServerInformationIterator::_nil ();
+ if (obj->_is_collocated () && _TAO_collocation_ImplementationRepository_ServerInformationIterator_Stub_Factory_function_pointer != 0)
+ {
+ default_proxy = _TAO_collocation_ImplementationRepository_ServerInformationIterator_Stub_Factory_function_pointer (obj);
+ }
+ if (CORBA::is_nil (default_proxy))
+ ACE_NEW_RETURN (default_proxy, ImplementationRepository::ServerInformationIterator (stub), ImplementationRepository::ServerInformationIterator::_nil ());
+ return TAO_ImplementationRepository_ServerInformationIterator_PROXY_FACTORY_ADAPTER::instance ()->create_proxy (default_proxy);
+}
+
+ImplementationRepository::ServerInformationIterator_ptr
+ImplementationRepository::ServerInformationIterator::_duplicate (ImplementationRepository::ServerInformationIterator_ptr obj)
+{
+ if (!CORBA::is_nil (obj))
+ obj->_incr_refcnt ();
+ return obj;
+}
+
+CORBA::Boolean ImplementationRepository::ServerInformationIterator::next_n (
+ CORBA::ULong how_many,
+ ImplementationRepository::ServerInformationList_out server_list,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+
+ CORBA::Boolean _tao_retval = 0;
+
+
+ TAO_Stub *istub = this->_stubobj ();
+ if (istub == 0)
+ ACE_THROW_RETURN (CORBA::INTERNAL (), _tao_retval);
+
+
+ ACE_NEW_RETURN (server_list.ptr (), ImplementationRepository::ServerInformationList, _tao_retval);
+ TAO_GIOP_Twoway_Invocation _tao_call (
+ istub,
+ "next_n",
+ istub->orb_core ()
+ );
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ TAO_ClientRequestInterceptor_Adapter
+ _tao_vfr (istub->orb_core ()->orb ()->_get_client_interceptor (ACE_TRY_ENV));
+ ACE_CHECK_RETURN (_tao_retval);
+ PortableInterceptor::Cookies _tao_cookies;
+ CORBA::NVList_var _tao_interceptor_args;
+ if (_tao_vfr.valid ())
+ {
+ istub->orb_core ()->orb ()->create_list (0, _tao_interceptor_args.inout (), ACE_TRY_ENV);
+ ACE_CHECK_RETURN (_tao_retval);
+ }
+
+ ACE_TRY
+ {
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ for (;;)
+ {
+ _tao_call.start (ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK_RETURN (_tao_retval);
+
+ TAO_INTERCEPTOR (
+ _tao_vfr.preinvoke (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "next_n",
+ _tao_call.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ )
+ );
+ TAO_INTERCEPTOR_CHECK_RETURN (_tao_retval);
+ CORBA::Short flag = TAO::SYNC_WITH_TARGET;
+ _tao_call.prepare_header (ACE_static_cast (CORBA::Octet, flag), ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK_RETURN (_tao_retval);
+
+ TAO_OutputCDR &_tao_out = _tao_call.out_stream ();
+ if (!(
+ (_tao_out << how_many)
+ ))
+ TAO_INTERCEPTOR_THROW_RETURN (CORBA::MARSHAL (), _tao_retval);
+
+ int _invoke_status =
+ _tao_call.invoke (0, 0, ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK_RETURN (_tao_retval);
+
+ if (_invoke_status == TAO_INVOKE_RESTART)
+ continue;
+ if (_invoke_status != TAO_INVOKE_OK)
+ {
+ TAO_INTERCEPTOR_THROW_RETURN (CORBA::UNKNOWN (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), _tao_retval);
+
+ }
+ TAO_InputCDR &_tao_in = _tao_call.inp_stream ();
+ if (!(
+ (_tao_in >> CORBA::Any::to_boolean (_tao_retval)) &&
+ (_tao_in >> *server_list.ptr ())
+ ))
+ TAO_INTERCEPTOR_THROW_RETURN (CORBA::MARSHAL (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES), _tao_retval);
+
+ TAO_INTERCEPTOR (
+ _tao_vfr.postinvoke (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "next_n",
+ _tao_call.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ )
+ );
+ TAO_INTERCEPTOR_CHECK_RETURN (_tao_retval);
+ break;
+
+ }
+#if defined (TAO_HAS_INTERCEPTORS)
+
+ }
+ ACE_CATCHANY
+ {
+ _tao_vfr.exception_occurred (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "next_n",
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ ACE_RETHROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK_RETURN (_tao_retval);
+#endif /* TAO_HAS_INTERCEPTORS */
+ return _tao_retval;
+}
+
+void ImplementationRepository::ServerInformationIterator::destroy (
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+
+
+
+
+ TAO_Stub *istub = this->_stubobj ();
+ if (istub == 0)
+ ACE_THROW (CORBA::INTERNAL ());
+
+
+ TAO_GIOP_Twoway_Invocation _tao_call (
+ istub,
+ "destroy",
+ istub->orb_core ()
+ );
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ TAO_ClientRequestInterceptor_Adapter
+ _tao_vfr (istub->orb_core ()->orb ()->_get_client_interceptor (ACE_TRY_ENV));
+ ACE_CHECK;
+ PortableInterceptor::Cookies _tao_cookies;
+ CORBA::NVList_var _tao_interceptor_args;
+ if (_tao_vfr.valid ())
+ {
+ istub->orb_core ()->orb ()->create_list (0, _tao_interceptor_args.inout (), ACE_TRY_ENV);
+ ACE_CHECK;
+ }
+
+ ACE_TRY
+ {
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ for (;;)
+ {
+ _tao_call.start (ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ TAO_INTERCEPTOR (
+ _tao_vfr.preinvoke (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "destroy",
+ _tao_call.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ )
+ );
+ TAO_INTERCEPTOR_CHECK;
+ CORBA::Short flag = TAO::SYNC_WITH_TARGET;
+ _tao_call.prepare_header (ACE_static_cast (CORBA::Octet, flag), ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ int _invoke_status =
+ _tao_call.invoke (0, 0, ACE_TRY_ENV);
+ TAO_INTERCEPTOR_CHECK;
+
+ if (_invoke_status == TAO_INVOKE_RESTART)
+ continue;
+ if (_invoke_status != TAO_INVOKE_OK)
+ {
+ TAO_INTERCEPTOR_THROW (CORBA::UNKNOWN (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES));
+ }
+
+ TAO_INTERCEPTOR (
+ _tao_vfr.postinvoke (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "destroy",
+ _tao_call.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ )
+ );
+ TAO_INTERCEPTOR_CHECK;
+ break;
+
+ }
+#if defined (TAO_HAS_INTERCEPTORS)
+
+ }
+ ACE_CATCHANY
+ {
+ _tao_vfr.exception_occurred (
+ _tao_call.request_id (),
+ 1,
+ this,
+ "destroy",
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ ACE_RETHROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+}
+
+CORBA::Boolean ImplementationRepository::ServerInformationIterator::_is_a (const CORBA::Char *value, CORBA::Environment &ACE_TRY_ENV)
+{
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:ImplementationRepository/ServerInformationIterator: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* ImplementationRepository::ServerInformationIterator::_interface_repository_id (void) const
+{
+ return "IDL:ImplementationRepository/ServerInformationIterator:1.0";
+}
+
+ImplementationRepository::TAO_ImplementationRepository_ServerInformationIterator_Default_Proxy_Factory::TAO_ImplementationRepository_ServerInformationIterator_Default_Proxy_Factory (int register_proxy_factory)
+{
+ if (register_proxy_factory)
+ {
+ TAO_ImplementationRepository_ServerInformationIterator_PROXY_FACTORY_ADAPTER::instance ()->register_proxy_factory (this);
+ }
+}
+
+ImplementationRepository::TAO_ImplementationRepository_ServerInformationIterator_Default_Proxy_Factory::~TAO_ImplementationRepository_ServerInformationIterator_Default_Proxy_Factory (void)
+{
+}
+
+ImplementationRepository::ServerInformationIterator_ptr
+ImplementationRepository::TAO_ImplementationRepository_ServerInformationIterator_Default_Proxy_Factory::create_proxy (
+ ImplementationRepository::ServerInformationIterator_ptr proxy,
+ CORBA::Environment &
+ )
+{
+ return proxy;
+}
+
+ImplementationRepository::TAO_ImplementationRepository_ServerInformationIterator_Proxy_Factory_Adapter::TAO_ImplementationRepository_ServerInformationIterator_Proxy_Factory_Adapter (void)
+ : proxy_factory_ (0),
+ delete_proxy_factory_ (0)
+{
+}
+
+ImplementationRepository::TAO_ImplementationRepository_ServerInformationIterator_Proxy_Factory_Adapter::~TAO_ImplementationRepository_ServerInformationIterator_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
+ImplementationRepository::TAO_ImplementationRepository_ServerInformationIterator_Proxy_Factory_Adapter::register_proxy_factory (
+ TAO_ImplementationRepository_ServerInformationIterator_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
+ImplementationRepository::TAO_ImplementationRepository_ServerInformationIterator_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;
+}
+
+ImplementationRepository::ServerInformationIterator_ptr
+ImplementationRepository::TAO_ImplementationRepository_ServerInformationIterator_Proxy_Factory_Adapter::create_proxy (
+ ImplementationRepository::ServerInformationIterator_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_ImplementationRepository_ServerInformationIterator_Default_Proxy_Factory (1),
+ 0);
+
+
+ return this->proxy_factory_->create_proxy (proxy);
+}
+
+ImplementationRepository::TAO_ImplementationRepository_ServerInformationIterator_Smart_Proxy_Base::TAO_ImplementationRepository_ServerInformationIterator_Smart_Proxy_Base (ImplementationRepository::ServerInformationIterator_ptr proxy)
+: base_proxy_ (proxy)
+{
+}
+
+ImplementationRepository::TAO_ImplementationRepository_ServerInformationIterator_Smart_Proxy_Base::~TAO_ImplementationRepository_ServerInformationIterator_Smart_Proxy_Base (void)
+{
+}
+
+CORBA::Boolean ImplementationRepository::TAO_ImplementationRepository_ServerInformationIterator_Smart_Proxy_Base::next_n (
+ CORBA::ULong how_many,
+ ImplementationRepository::ServerInformationList_out server_list,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->base_proxy_->next_n (
+ how_many,
+ server_list,
+ ACE_TRY_ENV
+ );
+
+}
+
+void ImplementationRepository::TAO_ImplementationRepository_ServerInformationIterator_Smart_Proxy_Base::destroy (
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->base_proxy_->destroy (
+ ACE_TRY_ENV
+ );
+
+}
+
+#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) || \
+ defined (ACE_HAS_GNU_REPO)
+template class ACE_Singleton<ImplementationRepository::TAO_ImplementationRepository_ServerInformationIterator_Proxy_Factory_Adapter, ACE_SYNCH_RECURSIVE_MUTEX >;
+#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA)
+#pragma instantiate ACE_Singleton<ImplementationRepository::TAO_ImplementationRepository_ServerInformationIterator_Proxy_Factory_Adapter, ACE_SYNCH_RECURSIVE_MUTEX>
+#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */
+
+static const CORBA::Long _oc_ImplementationRepository_ServerInformationIterator[] =
+{
+ TAO_ENCAP_BYTE_ORDER, // byte order
+ 59, ACE_NTOHL (0x49444c3a), ACE_NTOHL (0x496d706c), ACE_NTOHL (0x656d656e), ACE_NTOHL (0x74617469), ACE_NTOHL (0x6f6e5265), ACE_NTOHL (0x706f7369), ACE_NTOHL (0x746f7279), ACE_NTOHL (0x2f536572), ACE_NTOHL (0x76657249), ACE_NTOHL (0x6e666f72), ACE_NTOHL (0x6d617469), ACE_NTOHL (0x6f6e4974), ACE_NTOHL (0x65726174), ACE_NTOHL (0x6f723a31), ACE_NTOHL (0x2e300000), // repository ID = IDL:ImplementationRepository/ServerInformationIterator:1.0
+ 26, ACE_NTOHL (0x53657276), ACE_NTOHL (0x6572496e), ACE_NTOHL (0x666f726d), ACE_NTOHL (0x6174696f), ACE_NTOHL (0x6e497465), ACE_NTOHL (0x7261746f), ACE_NTOHL (0x72000000), // name = ServerInformationIterator
+};
+static CORBA::TypeCode _tc_TAO_tc_ImplementationRepository_ServerInformationIterator (CORBA::tk_objref, sizeof (_oc_ImplementationRepository_ServerInformationIterator), (char *) &_oc_ImplementationRepository_ServerInformationIterator, 0, sizeof (ImplementationRepository::ServerInformationIterator));
+TAO_NAMESPACE_TYPE (CORBA::TypeCode_ptr)
+TAO_NAMESPACE_BEGIN (ImplementationRepository)
+TAO_NAMESPACE_DEFINE (CORBA::TypeCode_ptr, _tc_ServerInformationIterator, &_tc_TAO_tc_ImplementationRepository_ServerInformationIterator)
+TAO_NAMESPACE_END
+ImplementationRepository::ServerObject_ptr (*_TAO_collocation_ImplementationRepository_ServerObject_Stub_Factory_function_pointer) (
+ CORBA::Object_ptr obj
+ ) = 0;
+void operator<<= (CORBA::Any &_tao_any, ImplementationRepository::ServerObject_ptr _tao_elem)
+{
+ CORBA::Object_ptr *_tao_obj_ptr = 0;
+ ACE_TRY_NEW_ENV
+ {
+ ACE_NEW (_tao_obj_ptr, CORBA::Object_ptr);
+ *_tao_obj_ptr = ImplementationRepository::ServerObject::_duplicate (_tao_elem);
+ _tao_any.replace (ImplementationRepository::_tc_ServerObject, _tao_obj_ptr, 1, ACE_TRY_ENV);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ delete _tao_obj_ptr;
+ }
+ ACE_ENDTRY;
+}
+
+CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, ImplementationRepository::ServerObject_ptr &_tao_elem)
+{
+ CORBA::Object_ptr *tmp = 0;
+ ACE_TRY_NEW_ENV
+ {
+ _tao_elem = ImplementationRepository::ServerObject::_nil ();
+ CORBA::TypeCode_var type = _tao_any.type ();
+ if (!type->equivalent (ImplementationRepository::_tc_ServerObject, ACE_TRY_ENV)) return 0; // not equal
+ ACE_TRY_CHECK;
+ TAO_InputCDR stream (_tao_any._tao_get_cdr ());
+ CORBA::Object_var _tao_obj_var;
+ ACE_NEW_RETURN (tmp, CORBA::Object_ptr, 0);
+ if (stream.decode (ImplementationRepository::_tc_ServerObject, &_tao_obj_var.out (), 0, ACE_TRY_ENV)
+ == CORBA::TypeCode::TRAVERSE_CONTINUE)
+ {
+ _tao_elem = ImplementationRepository::ServerObject::_narrow (_tao_obj_var.in (), ACE_TRY_ENV);
+ ACE_TRY_CHECK;
+ *tmp = (CORBA::Object_ptr) _tao_elem; // any owns the object
+ ((CORBA::Any *)&_tao_any)->replace (ImplementationRepository::_tc_ServerObject, tmp, 1, ACE_TRY_ENV);
+ ACE_TRY_CHECK;
+ return 1;
+ }
+ // failure
+ }
+ ACE_CATCHANY
+ {
+ delete tmp;
+ return 0;
+ }
+ ACE_ENDTRY;
+ return 0;
+}
+
+#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) || \
+ defined (ACE_HAS_GNU_REPO)
+ template class TAO_Object_Field_T<ImplementationRepository::ServerObject,ImplementationRepository::ServerObject_var>;
+ template class TAO_Object_Manager<ImplementationRepository::ServerObject,ImplementationRepository::ServerObject_var>;
+#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA)
+# pragma instantiate TAO_Object_Field_T<ImplementationRepository::ServerObject,ImplementationRepository::ServerObject_var>
+# pragma instantiate TAO_Object_Manager<ImplementationRepository::ServerObject,ImplementationRepository::ServerObject_var>
+#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */
+
+void operator<<= (CORBA::Any &_tao_any, const ImplementationRepository::EnvironmentVariable &_tao_elem) // copying
+{
+ ImplementationRepository::EnvironmentVariable *_any_val;
+ ACE_NEW (_any_val, ImplementationRepository::EnvironmentVariable (_tao_elem));
+ if (!_any_val) return;
+ ACE_TRY_NEW_ENV
+ {
+ _tao_any.replace (ImplementationRepository::_tc_EnvironmentVariable, _any_val, 1, ACE_TRY_ENV); // copy the value
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ delete _any_val;
+ }
+ ACE_ENDTRY;
+}
+
+void operator<<= (CORBA::Any &_tao_any, ImplementationRepository::EnvironmentVariable *_tao_elem) // non copying
+{
+ ACE_TRY_NEW_ENV
+ {
+ _tao_any.replace (ImplementationRepository::_tc_EnvironmentVariable, _tao_elem, 1, ACE_TRY_ENV); // consume it
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY {}
+ ACE_ENDTRY;
+}
+
+CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, ImplementationRepository::EnvironmentVariable *&_tao_elem)
+{
+ ACE_TRY_NEW_ENV
+ {
+ CORBA::TypeCode_var type = _tao_any.type ();
+ if (!type->equivalent (ImplementationRepository::_tc_EnvironmentVariable, ACE_TRY_ENV)) return 0; // not equal
+ ACE_TRY_CHECK;
+ if (_tao_any.any_owns_data ())
+ {
+ _tao_elem = (ImplementationRepository::EnvironmentVariable *)_tao_any.value ();
+ return 1;
+ }
+ else
+ {
+ ACE_NEW_RETURN (_tao_elem, ImplementationRepository::EnvironmentVariable, 0);
+ TAO_InputCDR stream (_tao_any._tao_get_cdr ());
+ if (stream.decode (ImplementationRepository::_tc_EnvironmentVariable, _tao_elem, 0, ACE_TRY_ENV)
+ == CORBA::TypeCode::TRAVERSE_CONTINUE)
+ {
+ ((CORBA::Any *)&_tao_any)->replace (ImplementationRepository::_tc_EnvironmentVariable, _tao_elem, 1, ACE_TRY_ENV);
+ ACE_TRY_CHECK;
+ return 1;
+ }
+ else
+ {
+ delete _tao_elem;
+ }
+ }
+ }
+ ACE_CATCHANY
+ {
+ delete _tao_elem;
+ return 0;
+ }
+ ACE_ENDTRY;
+ return 0;
+}
+
+void operator<<= (
+ CORBA::Any &_tao_any,
+ const ImplementationRepository::EnvironmentList &_tao_elem
+ ) // copying
+{
+ ImplementationRepository::EnvironmentList *_tao_any_val;
+ ACE_NEW (_tao_any_val, ImplementationRepository::EnvironmentList (_tao_elem));
+ if (!_tao_any_val) return;
+ ACE_TRY_NEW_ENV
+ {
+ _tao_any.replace (ImplementationRepository::_tc_EnvironmentList, _tao_any_val, 1, ACE_TRY_ENV); // copy the value
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ delete _tao_any_val;
+ }
+ ACE_ENDTRY;
+}
+
+void operator<<= (CORBA::Any &_tao_any, ImplementationRepository::EnvironmentList *_tao_elem) // non copying
+{
+ ACE_TRY_NEW_ENV
+ {
+ _tao_any.replace (ImplementationRepository::_tc_EnvironmentList, _tao_elem, 0, ACE_TRY_ENV);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY {}
+ ACE_ENDTRY;
+}
+
+CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, ImplementationRepository::EnvironmentList *&_tao_elem)
+{
+ ACE_TRY_NEW_ENV
+ {
+ CORBA::TypeCode_var type = _tao_any.type ();
+ if (!type->equivalent (ImplementationRepository::_tc_EnvironmentList, ACE_TRY_ENV)) return 0; // not equal
+ ACE_TRY_CHECK;
+ if (_tao_any.any_owns_data ())
+ {
+ _tao_elem = (ImplementationRepository::EnvironmentList *)_tao_any.value ();
+ return 1;
+ }
+ else
+ {
+ ACE_NEW_RETURN (_tao_elem, ImplementationRepository::EnvironmentList, 0);
+ TAO_InputCDR stream (_tao_any._tao_get_cdr ());
+ if (stream.decode (ImplementationRepository::_tc_EnvironmentList, _tao_elem, 0, ACE_TRY_ENV)
+ == CORBA::TypeCode::TRAVERSE_CONTINUE)
+ {
+ ((CORBA::Any *)&_tao_any)->replace (ImplementationRepository::_tc_EnvironmentList, _tao_elem, 1, ACE_TRY_ENV);
+ ACE_TRY_CHECK;
+ return 1;
+ }
+ else
+ {
+ delete _tao_elem;
+ }
+ }
+ }
+ ACE_CATCHANY
+ {
+ delete _tao_elem;
+ return 0;
+ }
+ ACE_ENDTRY;
+ return 0;
+}
+
+void operator<<= (CORBA::Any &_tao_any, ImplementationRepository::ActivationMode _tao_elem)
+{
+ ImplementationRepository::ActivationMode *_any_val;
+ ACE_NEW (_any_val, ImplementationRepository::ActivationMode (_tao_elem));
+ if (!_any_val) return;
+ ACE_TRY_NEW_ENV
+ {
+ _tao_any.replace (ImplementationRepository::_tc_ActivationMode, _any_val, 1, ACE_TRY_ENV);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ // free allocated storage
+ delete _any_val;
+ }
+ ACE_ENDTRY;
+}
+
+CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, ImplementationRepository::ActivationMode &_tao_elem)
+{
+ ACE_TRY_NEW_ENV
+ {
+ CORBA::TypeCode_var type = _tao_any.type ();
+ if (!type->equivalent (ImplementationRepository::_tc_ActivationMode, ACE_TRY_ENV)) return 0; // not equal
+ ACE_TRY_CHECK;
+ TAO_InputCDR stream (_tao_any._tao_get_cdr ());
+ if (stream.decode (ImplementationRepository::_tc_ActivationMode, &_tao_elem, 0, ACE_TRY_ENV)
+ == CORBA::TypeCode::TRAVERSE_CONTINUE)
+ return 1;
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ return 0;
+ }
+ ACE_ENDTRY;
+ return 0;
+}
+
+void operator<<= (CORBA::Any &_tao_any, const ImplementationRepository::StartupOptions &_tao_elem) // copying
+{
+ ImplementationRepository::StartupOptions *_any_val;
+ ACE_NEW (_any_val, ImplementationRepository::StartupOptions (_tao_elem));
+ if (!_any_val) return;
+ ACE_TRY_NEW_ENV
+ {
+ _tao_any.replace (ImplementationRepository::_tc_StartupOptions, _any_val, 1, ACE_TRY_ENV); // copy the value
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ delete _any_val;
+ }
+ ACE_ENDTRY;
+}
+
+void operator<<= (CORBA::Any &_tao_any, ImplementationRepository::StartupOptions *_tao_elem) // non copying
+{
+ ACE_TRY_NEW_ENV
+ {
+ _tao_any.replace (ImplementationRepository::_tc_StartupOptions, _tao_elem, 1, ACE_TRY_ENV); // consume it
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY {}
+ ACE_ENDTRY;
+}
+
+CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, ImplementationRepository::StartupOptions *&_tao_elem)
+{
+ ACE_TRY_NEW_ENV
+ {
+ CORBA::TypeCode_var type = _tao_any.type ();
+ if (!type->equivalent (ImplementationRepository::_tc_StartupOptions, ACE_TRY_ENV)) return 0; // not equal
+ ACE_TRY_CHECK;
+ if (_tao_any.any_owns_data ())
+ {
+ _tao_elem = (ImplementationRepository::StartupOptions *)_tao_any.value ();
+ return 1;
+ }
+ else
+ {
+ ACE_NEW_RETURN (_tao_elem, ImplementationRepository::StartupOptions, 0);
+ TAO_InputCDR stream (_tao_any._tao_get_cdr ());
+ if (stream.decode (ImplementationRepository::_tc_StartupOptions, _tao_elem, 0, ACE_TRY_ENV)
+ == CORBA::TypeCode::TRAVERSE_CONTINUE)
+ {
+ ((CORBA::Any *)&_tao_any)->replace (ImplementationRepository::_tc_StartupOptions, _tao_elem, 1, ACE_TRY_ENV);
+ ACE_TRY_CHECK;
+ return 1;
+ }
+ else
+ {
+ delete _tao_elem;
+ }
+ }
+ }
+ ACE_CATCHANY
+ {
+ delete _tao_elem;
+ return 0;
+ }
+ ACE_ENDTRY;
+ return 0;
+}
+
+void operator<<= (CORBA::Any &_tao_any, const ImplementationRepository::ServerInformation &_tao_elem) // copying
+{
+ ImplementationRepository::ServerInformation *_any_val;
+ ACE_NEW (_any_val, ImplementationRepository::ServerInformation (_tao_elem));
+ if (!_any_val) return;
+ ACE_TRY_NEW_ENV
+ {
+ _tao_any.replace (ImplementationRepository::_tc_ServerInformation, _any_val, 1, ACE_TRY_ENV); // copy the value
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ delete _any_val;
+ }
+ ACE_ENDTRY;
+}
+
+void operator<<= (CORBA::Any &_tao_any, ImplementationRepository::ServerInformation *_tao_elem) // non copying
+{
+ ACE_TRY_NEW_ENV
+ {
+ _tao_any.replace (ImplementationRepository::_tc_ServerInformation, _tao_elem, 1, ACE_TRY_ENV); // consume it
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY {}
+ ACE_ENDTRY;
+}
+
+CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, ImplementationRepository::ServerInformation *&_tao_elem)
+{
+ ACE_TRY_NEW_ENV
+ {
+ CORBA::TypeCode_var type = _tao_any.type ();
+ if (!type->equivalent (ImplementationRepository::_tc_ServerInformation, ACE_TRY_ENV)) return 0; // not equal
+ ACE_TRY_CHECK;
+ if (_tao_any.any_owns_data ())
+ {
+ _tao_elem = (ImplementationRepository::ServerInformation *)_tao_any.value ();
+ return 1;
+ }
+ else
+ {
+ ACE_NEW_RETURN (_tao_elem, ImplementationRepository::ServerInformation, 0);
+ TAO_InputCDR stream (_tao_any._tao_get_cdr ());
+ if (stream.decode (ImplementationRepository::_tc_ServerInformation, _tao_elem, 0, ACE_TRY_ENV)
+ == CORBA::TypeCode::TRAVERSE_CONTINUE)
+ {
+ ((CORBA::Any *)&_tao_any)->replace (ImplementationRepository::_tc_ServerInformation, _tao_elem, 1, ACE_TRY_ENV);
+ ACE_TRY_CHECK;
+ return 1;
+ }
+ else
+ {
+ delete _tao_elem;
+ }
+ }
+ }
+ ACE_CATCHANY
+ {
+ delete _tao_elem;
+ return 0;
+ }
+ ACE_ENDTRY;
+ return 0;
+}
+
+void operator<<= (
+ CORBA::Any &_tao_any,
+ const ImplementationRepository::ServerInformationList &_tao_elem
+ ) // copying
+{
+ ImplementationRepository::ServerInformationList *_tao_any_val;
+ ACE_NEW (_tao_any_val, ImplementationRepository::ServerInformationList (_tao_elem));
+ if (!_tao_any_val) return;
+ ACE_TRY_NEW_ENV
+ {
+ _tao_any.replace (ImplementationRepository::_tc_ServerInformationList, _tao_any_val, 1, ACE_TRY_ENV); // copy the value
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ delete _tao_any_val;
+ }
+ ACE_ENDTRY;
+}
+
+void operator<<= (CORBA::Any &_tao_any, ImplementationRepository::ServerInformationList *_tao_elem) // non copying
+{
+ ACE_TRY_NEW_ENV
+ {
+ _tao_any.replace (ImplementationRepository::_tc_ServerInformationList, _tao_elem, 0, ACE_TRY_ENV);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY {}
+ ACE_ENDTRY;
+}
+
+CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, ImplementationRepository::ServerInformationList *&_tao_elem)
+{
+ ACE_TRY_NEW_ENV
+ {
+ CORBA::TypeCode_var type = _tao_any.type ();
+ if (!type->equivalent (ImplementationRepository::_tc_ServerInformationList, ACE_TRY_ENV)) return 0; // not equal
+ ACE_TRY_CHECK;
+ if (_tao_any.any_owns_data ())
+ {
+ _tao_elem = (ImplementationRepository::ServerInformationList *)_tao_any.value ();
+ return 1;
+ }
+ else
+ {
+ ACE_NEW_RETURN (_tao_elem, ImplementationRepository::ServerInformationList, 0);
+ TAO_InputCDR stream (_tao_any._tao_get_cdr ());
+ if (stream.decode (ImplementationRepository::_tc_ServerInformationList, _tao_elem, 0, ACE_TRY_ENV)
+ == CORBA::TypeCode::TRAVERSE_CONTINUE)
+ {
+ ((CORBA::Any *)&_tao_any)->replace (ImplementationRepository::_tc_ServerInformationList, _tao_elem, 1, ACE_TRY_ENV);
+ ACE_TRY_CHECK;
+ return 1;
+ }
+ else
+ {
+ delete _tao_elem;
+ }
+ }
+ }
+ ACE_CATCHANY
+ {
+ delete _tao_elem;
+ return 0;
+ }
+ ACE_ENDTRY;
+ return 0;
+}
+
+ImplementationRepository::Administration_ptr (*_TAO_collocation_ImplementationRepository_Administration_Stub_Factory_function_pointer) (
+ CORBA::Object_ptr obj
+ ) = 0;
+void operator<<= (CORBA::Any &_tao_any, ImplementationRepository::Administration_ptr _tao_elem)
+{
+ CORBA::Object_ptr *_tao_obj_ptr = 0;
+ ACE_TRY_NEW_ENV
+ {
+ ACE_NEW (_tao_obj_ptr, CORBA::Object_ptr);
+ *_tao_obj_ptr = ImplementationRepository::Administration::_duplicate (_tao_elem);
+ _tao_any.replace (ImplementationRepository::_tc_Administration, _tao_obj_ptr, 1, ACE_TRY_ENV);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ delete _tao_obj_ptr;
+ }
+ ACE_ENDTRY;
+}
+
+CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, ImplementationRepository::Administration_ptr &_tao_elem)
+{
+ CORBA::Object_ptr *tmp = 0;
+ ACE_TRY_NEW_ENV
+ {
+ _tao_elem = ImplementationRepository::Administration::_nil ();
+ CORBA::TypeCode_var type = _tao_any.type ();
+ if (!type->equivalent (ImplementationRepository::_tc_Administration, ACE_TRY_ENV)) return 0; // not equal
+ ACE_TRY_CHECK;
+ TAO_InputCDR stream (_tao_any._tao_get_cdr ());
+ CORBA::Object_var _tao_obj_var;
+ ACE_NEW_RETURN (tmp, CORBA::Object_ptr, 0);
+ if (stream.decode (ImplementationRepository::_tc_Administration, &_tao_obj_var.out (), 0, ACE_TRY_ENV)
+ == CORBA::TypeCode::TRAVERSE_CONTINUE)
+ {
+ _tao_elem = ImplementationRepository::Administration::_narrow (_tao_obj_var.in (), ACE_TRY_ENV);
+ ACE_TRY_CHECK;
+ *tmp = (CORBA::Object_ptr) _tao_elem; // any owns the object
+ ((CORBA::Any *)&_tao_any)->replace (ImplementationRepository::_tc_Administration, tmp, 1, ACE_TRY_ENV);
+ ACE_TRY_CHECK;
+ return 1;
+ }
+ // failure
+ }
+ ACE_CATCHANY
+ {
+ delete tmp;
+ return 0;
+ }
+ ACE_ENDTRY;
+ return 0;
+}
+
+#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) || \
+ defined (ACE_HAS_GNU_REPO)
+ template class TAO_Object_Field_T<ImplementationRepository::Administration,ImplementationRepository::Administration_var>;
+ template class TAO_Object_Manager<ImplementationRepository::Administration,ImplementationRepository::Administration_var>;
+#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA)
+# pragma instantiate TAO_Object_Field_T<ImplementationRepository::Administration,ImplementationRepository::Administration_var>
+# pragma instantiate TAO_Object_Manager<ImplementationRepository::Administration,ImplementationRepository::Administration_var>
+#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */
+
+void operator<<= (CORBA::Any &_tao_any, const ImplementationRepository::Administration::AlreadyRegistered &_tao_elem) // copying
+{
+ ImplementationRepository::Administration::AlreadyRegistered *_tao_any_val = 0;
+ ACE_NEW (_tao_any_val, ImplementationRepository::Administration::AlreadyRegistered (_tao_elem));
+ ACE_TRY_NEW_ENV
+ {
+ _tao_any.replace (ImplementationRepository::Administration::_tc_AlreadyRegistered, _tao_any_val, 1, ACE_TRY_ENV);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ delete _tao_any_val;
+ }
+ ACE_ENDTRY;
+}
+
+void operator<<= (CORBA::Any &_tao_any, ImplementationRepository::Administration::AlreadyRegistered *_tao_elem) // non copying
+{
+ ACE_TRY_NEW_ENV
+ {
+ _tao_any.replace (ImplementationRepository::Administration::_tc_AlreadyRegistered, _tao_elem, 1, ACE_TRY_ENV); // consume it
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY {}
+ ACE_ENDTRY;
+}
+
+CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, ImplementationRepository::Administration::AlreadyRegistered *&_tao_elem)
+{
+ ACE_TRY_NEW_ENV
+ {
+ CORBA::TypeCode_var type = _tao_any.type ();
+ if (!type->equivalent (ImplementationRepository::Administration::_tc_AlreadyRegistered, ACE_TRY_ENV)) return 0; // not equal
+ ACE_TRY_CHECK;
+ if (_tao_any.any_owns_data ())
+ {
+ _tao_elem = (ImplementationRepository::Administration::AlreadyRegistered *)_tao_any.value ();
+ return 1;
+ }
+ else
+ {
+ ACE_NEW_RETURN (_tao_elem, ImplementationRepository::Administration::AlreadyRegistered, 0);
+ TAO_InputCDR stream (_tao_any._tao_get_cdr ());
+ if (stream.decode (ImplementationRepository::Administration::_tc_AlreadyRegistered, _tao_elem, 0, ACE_TRY_ENV)
+ == CORBA::TypeCode::TRAVERSE_CONTINUE)
+ {
+ ((CORBA::Any *)&_tao_any)->replace (ImplementationRepository::Administration::_tc_AlreadyRegistered, _tao_elem, 1, ACE_TRY_ENV);
+ ACE_TRY_CHECK;
+ return 1;
+ }
+ else
+ {
+ delete _tao_elem;
+ }
+ }
+ }
+ ACE_CATCHANY
+ {
+ delete _tao_elem;
+ return 0;
+ }
+ ACE_ENDTRY;
+ return 0;
+}
+
+void operator<<= (CORBA::Any &_tao_any, const ImplementationRepository::Administration::CannotActivate &_tao_elem) // copying
+{
+ ImplementationRepository::Administration::CannotActivate *_tao_any_val = 0;
+ ACE_NEW (_tao_any_val, ImplementationRepository::Administration::CannotActivate (_tao_elem));
+ ACE_TRY_NEW_ENV
+ {
+ _tao_any.replace (ImplementationRepository::Administration::_tc_CannotActivate, _tao_any_val, 1, ACE_TRY_ENV);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ delete _tao_any_val;
+ }
+ ACE_ENDTRY;
+}
+
+void operator<<= (CORBA::Any &_tao_any, ImplementationRepository::Administration::CannotActivate *_tao_elem) // non copying
+{
+ ACE_TRY_NEW_ENV
+ {
+ _tao_any.replace (ImplementationRepository::Administration::_tc_CannotActivate, _tao_elem, 1, ACE_TRY_ENV); // consume it
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY {}
+ ACE_ENDTRY;
+}
+
+CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, ImplementationRepository::Administration::CannotActivate *&_tao_elem)
+{
+ ACE_TRY_NEW_ENV
+ {
+ CORBA::TypeCode_var type = _tao_any.type ();
+ if (!type->equivalent (ImplementationRepository::Administration::_tc_CannotActivate, ACE_TRY_ENV)) return 0; // not equal
+ ACE_TRY_CHECK;
+ if (_tao_any.any_owns_data ())
+ {
+ _tao_elem = (ImplementationRepository::Administration::CannotActivate *)_tao_any.value ();
+ return 1;
+ }
+ else
+ {
+ ACE_NEW_RETURN (_tao_elem, ImplementationRepository::Administration::CannotActivate, 0);
+ TAO_InputCDR stream (_tao_any._tao_get_cdr ());
+ if (stream.decode (ImplementationRepository::Administration::_tc_CannotActivate, _tao_elem, 0, ACE_TRY_ENV)
+ == CORBA::TypeCode::TRAVERSE_CONTINUE)
+ {
+ ((CORBA::Any *)&_tao_any)->replace (ImplementationRepository::Administration::_tc_CannotActivate, _tao_elem, 1, ACE_TRY_ENV);
+ ACE_TRY_CHECK;
+ return 1;
+ }
+ else
+ {
+ delete _tao_elem;
+ }
+ }
+ }
+ ACE_CATCHANY
+ {
+ delete _tao_elem;
+ return 0;
+ }
+ ACE_ENDTRY;
+ return 0;
+}
+
+void operator<<= (CORBA::Any &_tao_any, const ImplementationRepository::Administration::NotFound &_tao_elem) // copying
+{
+ ImplementationRepository::Administration::NotFound *_tao_any_val = 0;
+ ACE_NEW (_tao_any_val, ImplementationRepository::Administration::NotFound (_tao_elem));
+ ACE_TRY_NEW_ENV
+ {
+ _tao_any.replace (ImplementationRepository::Administration::_tc_NotFound, _tao_any_val, 1, ACE_TRY_ENV);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ delete _tao_any_val;
+ }
+ ACE_ENDTRY;
+}
+
+void operator<<= (CORBA::Any &_tao_any, ImplementationRepository::Administration::NotFound *_tao_elem) // non copying
+{
+ ACE_TRY_NEW_ENV
+ {
+ _tao_any.replace (ImplementationRepository::Administration::_tc_NotFound, _tao_elem, 1, ACE_TRY_ENV); // consume it
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY {}
+ ACE_ENDTRY;
+}
+
+CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, ImplementationRepository::Administration::NotFound *&_tao_elem)
+{
+ ACE_TRY_NEW_ENV
+ {
+ CORBA::TypeCode_var type = _tao_any.type ();
+ if (!type->equivalent (ImplementationRepository::Administration::_tc_NotFound, ACE_TRY_ENV)) return 0; // not equal
+ ACE_TRY_CHECK;
+ if (_tao_any.any_owns_data ())
+ {
+ _tao_elem = (ImplementationRepository::Administration::NotFound *)_tao_any.value ();
+ return 1;
+ }
+ else
+ {
+ ACE_NEW_RETURN (_tao_elem, ImplementationRepository::Administration::NotFound, 0);
+ TAO_InputCDR stream (_tao_any._tao_get_cdr ());
+ if (stream.decode (ImplementationRepository::Administration::_tc_NotFound, _tao_elem, 0, ACE_TRY_ENV)
+ == CORBA::TypeCode::TRAVERSE_CONTINUE)
+ {
+ ((CORBA::Any *)&_tao_any)->replace (ImplementationRepository::Administration::_tc_NotFound, _tao_elem, 1, ACE_TRY_ENV);
+ ACE_TRY_CHECK;
+ return 1;
+ }
+ else
+ {
+ delete _tao_elem;
+ }
+ }
+ }
+ ACE_CATCHANY
+ {
+ delete _tao_elem;
+ return 0;
+ }
+ ACE_ENDTRY;
+ return 0;
+}
+
+ImplementationRepository::ServerInformationIterator_ptr (*_TAO_collocation_ImplementationRepository_ServerInformationIterator_Stub_Factory_function_pointer) (
+ CORBA::Object_ptr obj
+ ) = 0;
+void operator<<= (CORBA::Any &_tao_any, ImplementationRepository::ServerInformationIterator_ptr _tao_elem)
+{
+ CORBA::Object_ptr *_tao_obj_ptr = 0;
+ ACE_TRY_NEW_ENV
+ {
+ ACE_NEW (_tao_obj_ptr, CORBA::Object_ptr);
+ *_tao_obj_ptr = ImplementationRepository::ServerInformationIterator::_duplicate (_tao_elem);
+ _tao_any.replace (ImplementationRepository::_tc_ServerInformationIterator, _tao_obj_ptr, 1, ACE_TRY_ENV);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ delete _tao_obj_ptr;
+ }
+ ACE_ENDTRY;
+}
+
+CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, ImplementationRepository::ServerInformationIterator_ptr &_tao_elem)
+{
+ CORBA::Object_ptr *tmp = 0;
+ ACE_TRY_NEW_ENV
+ {
+ _tao_elem = ImplementationRepository::ServerInformationIterator::_nil ();
+ CORBA::TypeCode_var type = _tao_any.type ();
+ if (!type->equivalent (ImplementationRepository::_tc_ServerInformationIterator, ACE_TRY_ENV)) return 0; // not equal
+ ACE_TRY_CHECK;
+ TAO_InputCDR stream (_tao_any._tao_get_cdr ());
+ CORBA::Object_var _tao_obj_var;
+ ACE_NEW_RETURN (tmp, CORBA::Object_ptr, 0);
+ if (stream.decode (ImplementationRepository::_tc_ServerInformationIterator, &_tao_obj_var.out (), 0, ACE_TRY_ENV)
+ == CORBA::TypeCode::TRAVERSE_CONTINUE)
+ {
+ _tao_elem = ImplementationRepository::ServerInformationIterator::_narrow (_tao_obj_var.in (), ACE_TRY_ENV);
+ ACE_TRY_CHECK;
+ *tmp = (CORBA::Object_ptr) _tao_elem; // any owns the object
+ ((CORBA::Any *)&_tao_any)->replace (ImplementationRepository::_tc_ServerInformationIterator, tmp, 1, ACE_TRY_ENV);
+ ACE_TRY_CHECK;
+ return 1;
+ }
+ // failure
+ }
+ ACE_CATCHANY
+ {
+ delete tmp;
+ return 0;
+ }
+ ACE_ENDTRY;
+ return 0;
+}
+
+#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) || \
+ defined (ACE_HAS_GNU_REPO)
+ template class TAO_Object_Field_T<ImplementationRepository::ServerInformationIterator,ImplementationRepository::ServerInformationIterator_var>;
+ template class TAO_Object_Manager<ImplementationRepository::ServerInformationIterator,ImplementationRepository::ServerInformationIterator_var>;
+#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA)
+# pragma instantiate TAO_Object_Field_T<ImplementationRepository::ServerInformationIterator,ImplementationRepository::ServerInformationIterator_var>
+# pragma instantiate TAO_Object_Manager<ImplementationRepository::ServerInformationIterator,ImplementationRepository::ServerInformationIterator_var>
+#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */
+
+CORBA::Boolean operator<< (
+ TAO_OutputCDR &strm,
+ const ImplementationRepository::EnvironmentList &_tao_sequence
+ )
+{
+ if (strm << _tao_sequence.length ())
+ {
+ // encode all elements
+ CORBA::Boolean _tao_marshal_flag = 1;
+ for (CORBA::ULong i = 0; i < _tao_sequence.length () && _tao_marshal_flag; i++)
+ {
+ _tao_marshal_flag = (strm << _tao_sequence[i]);
+ }
+ return _tao_marshal_flag;
+ }
+ return 0; // error
+}
+
+CORBA::Boolean operator>> (
+ TAO_InputCDR &strm,
+ ImplementationRepository::EnvironmentList &_tao_sequence
+ )
+{
+ CORBA::ULong _tao_seq_len;
+ if (strm >> _tao_seq_len)
+ {
+ // set the length of the sequence
+ _tao_sequence.length (_tao_seq_len);
+ // retrieve all the elements
+ CORBA::Boolean _tao_marshal_flag = 1;
+ for (CORBA::ULong i = 0; i < _tao_sequence.length () && _tao_marshal_flag; i++)
+ {
+ _tao_marshal_flag = (strm >> _tao_sequence[i]);
+ }
+ return _tao_marshal_flag;
+ }
+ return 0; // error
+}
+
+CORBA::Boolean operator<< (
+ TAO_OutputCDR &strm,
+ const ImplementationRepository::ServerInformationList &_tao_sequence
+ )
+{
+ if (strm << _tao_sequence.length ())
+ {
+ // encode all elements
+ CORBA::Boolean _tao_marshal_flag = 1;
+ for (CORBA::ULong i = 0; i < _tao_sequence.length () && _tao_marshal_flag; i++)
+ {
+ _tao_marshal_flag = (strm << _tao_sequence[i]);
+ }
+ return _tao_marshal_flag;
+ }
+ return 0; // error
+}
+
+CORBA::Boolean operator>> (
+ TAO_InputCDR &strm,
+ ImplementationRepository::ServerInformationList &_tao_sequence
+ )
+{
+ CORBA::ULong _tao_seq_len;
+ if (strm >> _tao_seq_len)
+ {
+ // set the length of the sequence
+ _tao_sequence.length (_tao_seq_len);
+ // retrieve all the elements
+ CORBA::Boolean _tao_marshal_flag = 1;
+ for (CORBA::ULong i = 0; i < _tao_sequence.length () && _tao_marshal_flag; i++)
+ {
+ _tao_marshal_flag = (strm >> _tao_sequence[i]);
+ }
+ return _tao_marshal_flag;
+ }
+ return 0; // error
+}
+
diff --git a/TAO/tao/ImplRepoC.h b/TAO/tao/ImplRepoC.h
new file mode 100644
index 00000000000..ea715c172c5
--- /dev/null
+++ b/TAO/tao/ImplRepoC.h
@@ -0,0 +1,1688 @@
+/* -*- 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_IDL_IMPLREPOC_H_
+#define _TAO_IDL_IMPLREPOC_H_
+
+#include "tao/Object.h"
+#include "tao/Managed_Types.h"
+#include "tao/POAC.h"
+#include "tao/Servant_Base.h"
+#include "tao/Operation_Table.h"
+#include "tao/Stub.h"
+#include "tao/ORB_Core.h"
+#include "tao/Server_Request.h"
+#include "tao/NVList.h"
+#include "tao/Object_Adapter.h"
+#include "tao/Invocation.h"
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+
+#if defined (ACE_HAS_MINIMUM_IOSTREAMH_INCLUSION)
+#include "ace/streams.h"
+#endif /* ACE_HAS_MINIMUM_IOSTREAMH_INCLUSION */
+
+
+#if defined (TAO_EXPORT_MACRO)
+#undef TAO_EXPORT_MACRO
+#endif
+#define TAO_EXPORT_MACRO TAO_Export
+
+#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 TAO_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 */
+
+TAO_NAMESPACE ImplementationRepository
+{
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_SERVEROBJECT___PTR_CH_)
+#define _IMPLEMENTATIONREPOSITORY_SERVEROBJECT___PTR_CH_
+
+ class ServerObject;
+ typedef ServerObject *ServerObject_ptr;
+
+#endif /* end #if !defined */
+
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_SERVEROBJECT___VAR_CH_)
+#define _IMPLEMENTATIONREPOSITORY_SERVEROBJECT___VAR_CH_
+
+ class TAO_Export ServerObject_var
+ {
+ public:
+ ServerObject_var (void); // default constructor
+ ServerObject_var (ServerObject_ptr);
+ ServerObject_var (const ServerObject_var &); // copy constructor
+ ~ServerObject_var (void); // destructor
+
+ ServerObject_var &operator= (ServerObject_ptr);
+ ServerObject_var &operator= (const ServerObject_var &);
+ ServerObject_ptr operator-> (void) const;
+
+ operator const ServerObject_ptr &() const;
+ operator ServerObject_ptr &();
+ // in, inout, out, _retn
+ ServerObject_ptr in (void) const;
+ ServerObject_ptr &inout (void);
+ ServerObject_ptr &out (void);
+ ServerObject_ptr _retn (void);
+ ServerObject_ptr ptr (void) const;
+
+ private:
+ ServerObject_ptr ptr_;
+ };
+
+
+#endif /* end #if !defined */
+
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_SERVEROBJECT___OUT_CH_)
+#define _IMPLEMENTATIONREPOSITORY_SERVEROBJECT___OUT_CH_
+
+ class TAO_Export ServerObject_out
+ {
+ public:
+ ServerObject_out (ServerObject_ptr &);
+ ServerObject_out (ServerObject_var &);
+ ServerObject_out (const ServerObject_out &);
+ ServerObject_out &operator= (const ServerObject_out &);
+ ServerObject_out &operator= (const ServerObject_var &);
+ ServerObject_out &operator= (ServerObject_ptr);
+ operator ServerObject_ptr &();
+ ServerObject_ptr &ptr (void);
+ ServerObject_ptr operator-> (void);
+
+ private:
+ ServerObject_ptr &ptr_;
+ };
+
+
+#endif /* end #if !defined */
+
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_SERVEROBJECT_CH_)
+#define _IMPLEMENTATIONREPOSITORY_SERVEROBJECT_CH_
+
+class TAO_Export ServerObject : public virtual ACE_CORBA_1 (Object)
+ {
+ public:
+ #if !defined(__GNUC__) || !defined (ACE_HAS_GNUG_PRE_2_8)
+ typedef ServerObject_ptr _ptr_type;
+ typedef ServerObject_var _var_type;
+ #endif /* ! __GNUC__ || g++ >= 2.8 */
+
+ // the static operations
+ static ServerObject_ptr _duplicate (ServerObject_ptr obj);
+ static ServerObject_ptr _narrow (
+ CORBA::Object_ptr obj,
+ CORBA::Environment &env =
+ TAO_default_environment ()
+ );
+ static ServerObject_ptr _unchecked_narrow (
+ CORBA::Object_ptr obj,
+ CORBA::Environment &env =
+ TAO_default_environment ()
+ );
+ static ServerObject_ptr _nil (void)
+ {
+ return (ImplementationRepository::ServerObject_ptr)0;
+ }
+
+ virtual void ping (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void shutdown (
+ 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:
+ ServerObject (void);
+ ServerObject (TAO_Stub *objref,
+ TAO_ServantBase *_tao_servant = 0,
+ CORBA::Boolean _tao_collocated = 0
+ );
+ virtual ~ServerObject (void);
+ private:
+ ServerObject (const ServerObject &);
+ void operator= (const ServerObject &);
+};
+
+class TAO_ImplementationRepository_ServerObject_Default_Proxy_Factory
+{
+public:
+
+ TAO_ImplementationRepository_ServerObject_Default_Proxy_Factory (int register_proxy_factory = 1);
+
+ virtual ~TAO_ImplementationRepository_ServerObject_Default_Proxy_Factory (void);
+
+ virtual ImplementationRepository::ServerObject_ptr create_proxy (
+ ImplementationRepository::ServerObject_ptr proxy,
+ CORBA::Environment &env =
+ TAO_default_environment ()
+ );
+};
+
+class TAO_ImplementationRepository_ServerObject_Proxy_Factory_Adapter
+{
+public:
+
+ friend class ACE_Singleton<TAO_ImplementationRepository_ServerObject_Proxy_Factory_Adapter, ACE_SYNCH_RECURSIVE_MUTEX>;
+
+ int register_proxy_factory (
+ TAO_ImplementationRepository_ServerObject_Default_Proxy_Factory *df,
+ CORBA::Environment &env =
+ TAO_default_environment ()
+ );
+
+ int unregister_proxy_factory (
+ CORBA::Environment &env =
+ TAO_default_environment ()
+ );
+
+ ImplementationRepository::ServerObject_ptr create_proxy (
+ ImplementationRepository::ServerObject_ptr proxy,
+ CORBA::Environment &env =
+ TAO_default_environment ()
+ );
+
+protected:
+ TAO_ImplementationRepository_ServerObject_Proxy_Factory_Adapter (void);
+ ~TAO_ImplementationRepository_ServerObject_Proxy_Factory_Adapter (void);
+ TAO_ImplementationRepository_ServerObject_Proxy_Factory_Adapter &operator= (
+ const TAO_ImplementationRepository_ServerObject_Proxy_Factory_Adapter &
+ );
+ TAO_ImplementationRepository_ServerObject_Default_Proxy_Factory *proxy_factory_;
+ int delete_proxy_factory_;
+ ACE_SYNCH_RECURSIVE_MUTEX lock_;
+ };
+
+ typedef ACE_Singleton<TAO_ImplementationRepository_ServerObject_Proxy_Factory_Adapter, ACE_SYNCH_RECURSIVE_MUTEX> TAO_ImplementationRepository_ServerObject_PROXY_FACTORY_ADAPTER;
+ class TAO_ImplementationRepository_ServerObject_Smart_Proxy_Base : public virtual ImplementationRepository::ServerObject
+ {
+ public:
+ TAO_ImplementationRepository_ServerObject_Smart_Proxy_Base (ImplementationRepository::ServerObject_ptr proxy);
+ ~TAO_ImplementationRepository_ServerObject_Smart_Proxy_Base (void);
+ virtual void ping (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void shutdown (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+private:
+ ImplementationRepository::ServerObject_var base_proxy_;
+};
+
+
+#endif /* end #if !defined */
+
+TAO_NAMESPACE_STORAGE_CLASS CORBA::TypeCode_ptr _tc_ServerObject;
+
+struct EnvironmentVariable;
+class EnvironmentVariable_var;
+typedef EnvironmentVariable* EnvironmentVariable_ptr;
+
+struct TAO_Export EnvironmentVariable
+{
+
+#if !defined(__GNUC__) || !defined (ACE_HAS_GNUG_PRE_2_8)
+ typedef EnvironmentVariable_ptr _ptr_type;
+ typedef EnvironmentVariable_var _var_type;
+#endif /* ! __GNUC__ || g++ >= 2.8 */
+
+ TAO_String_Manager name;
+ TAO_String_Manager value;
+};
+
+class TAO_Export EnvironmentVariable_var
+{
+public:
+ EnvironmentVariable_var (void); // default constructor
+ EnvironmentVariable_var (EnvironmentVariable *);
+ EnvironmentVariable_var (const EnvironmentVariable_var &); // copy constructor
+ ~EnvironmentVariable_var (void); // destructor
+
+ EnvironmentVariable_var &operator= (EnvironmentVariable *);
+ EnvironmentVariable_var &operator= (const EnvironmentVariable_var &);
+ EnvironmentVariable *operator-> (void);
+ const EnvironmentVariable *operator-> (void) const;
+
+ operator const EnvironmentVariable &() const;
+ operator EnvironmentVariable &();
+ operator EnvironmentVariable &() const;
+ // in, inout, out, _retn
+ const EnvironmentVariable &in (void) const;
+ EnvironmentVariable &inout (void);
+ EnvironmentVariable *&out (void);
+ EnvironmentVariable *_retn (void);
+ EnvironmentVariable *ptr (void) const;
+
+private:
+ EnvironmentVariable *ptr_;
+};
+
+class TAO_Export EnvironmentVariable_out
+{
+public:
+ EnvironmentVariable_out (EnvironmentVariable *&);
+ EnvironmentVariable_out (EnvironmentVariable_var &);
+ EnvironmentVariable_out (const EnvironmentVariable_out &);
+ EnvironmentVariable_out &operator= (const EnvironmentVariable_out &);
+ EnvironmentVariable_out &operator= (EnvironmentVariable *);
+ operator EnvironmentVariable *&();
+ EnvironmentVariable *&ptr (void);
+ EnvironmentVariable *operator-> (void);
+
+private:
+ EnvironmentVariable *&ptr_;
+ // assignment from T_var not allowed
+ void operator= (const EnvironmentVariable_var &);
+};
+
+TAO_NAMESPACE_STORAGE_CLASS CORBA::TypeCode_ptr _tc_EnvironmentVariable;
+
+typedef char * Address;
+typedef CORBA::String_var Address_var;
+typedef CORBA::String_out Address_out;
+TAO_NAMESPACE_STORAGE_CLASS CORBA::TypeCode_ptr _tc_Address;
+
+
+#if !defined (TAO_USE_SEQUENCE_TEMPLATES)
+
+#if !defined (__TAO_UNBOUNDED_SEQUENCE_IMPLEMENTATIONREPOSITORY_ENVIRONMENTLIST_CH_)
+#define __TAO_UNBOUNDED_SEQUENCE_IMPLEMENTATIONREPOSITORY_ENVIRONMENTLIST_CH_
+
+ class TAO_EXPORT_NESTED_MACRO _TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList : public TAO_Unbounded_Base_Sequence
+ {
+ public:
+ // = Initialization and termination methods.
+
+ _TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList (void); // Default constructor.
+ _TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList (CORBA::ULong maximum);
+ _TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList (CORBA::ULong maximum,
+ CORBA::ULong length,
+ EnvironmentVariable *data,
+ CORBA::Boolean release = 0);
+ _TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList (const _TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList &rhs);
+ _TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList &operator= (const _TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList &rhs);
+ virtual ~_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList (void); // Dtor.
+ // = Accessors.
+ EnvironmentVariable &operator[] (CORBA::ULong i);
+ const EnvironmentVariable &operator[] (CORBA::ULong i) const;
+ // = Static operations.
+ static EnvironmentVariable *allocbuf (CORBA::ULong size);
+ static void freebuf (EnvironmentVariable *buffer);
+ virtual void _allocate_buffer (CORBA::ULong length);
+ virtual void _deallocate_buffer (void);
+ // Implement the TAO_Base_Sequence methods (see Sequence.h)
+
+ EnvironmentVariable *get_buffer (CORBA::Boolean orphan = 0);
+ const EnvironmentVariable *get_buffer (void) const;
+ void replace (CORBA::ULong max,
+ CORBA::ULong length,
+ EnvironmentVariable *data,
+ CORBA::Boolean release);
+ };
+
+#endif /* end #if !defined */
+
+
+#endif /* !TAO_USE_SEQUENCE_TEMPLATES */
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_ENVIRONMENTLIST_CH_)
+#define _IMPLEMENTATIONREPOSITORY_ENVIRONMENTLIST_CH_
+
+class EnvironmentList;
+class EnvironmentList_var;
+typedef EnvironmentList* EnvironmentList_ptr;
+
+// *************************************************************
+// EnvironmentList
+// *************************************************************
+
+class TAO_Export EnvironmentList : public
+#if !defined (TAO_USE_SEQUENCE_TEMPLATES)
+ _TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList
+#else /* TAO_USE_SEQUENCE_TEMPLATES */
+ TAO_Unbounded_Sequence<EnvironmentVariable>
+#endif /* !TAO_USE_SEQUENCE_TEMPLATES */
+{
+public:
+ EnvironmentList (void); // default ctor
+ EnvironmentList (CORBA::ULong max); // uses max size
+ EnvironmentList (
+ CORBA::ULong max,
+ CORBA::ULong length,
+ EnvironmentVariable *buffer,
+ CORBA::Boolean release=0
+ );
+ EnvironmentList (const EnvironmentList &); // copy ctor
+ ~EnvironmentList (void); // dtor
+
+#if !defined(__GNUC__) || !defined (ACE_HAS_GNUG_PRE_2_8)
+ typedef EnvironmentList_ptr _ptr_type;
+ typedef EnvironmentList_var _var_type;
+#endif /* ! __GNUC__ || g++ >= 2.8 */
+
+};
+
+#endif /* end #if !defined */
+
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_ENVIRONMENTLIST___VAR_CH_)
+#define _IMPLEMENTATIONREPOSITORY_ENVIRONMENTLIST___VAR_CH_
+
+// *************************************************************
+// class ImplementationRepository::EnvironmentList_var
+// *************************************************************
+
+class TAO_Export EnvironmentList_var
+{
+public:
+ EnvironmentList_var (void); // default constructor
+ EnvironmentList_var (EnvironmentList *);
+ EnvironmentList_var (const EnvironmentList_var &); // copy constructor
+ ~EnvironmentList_var (void); // destructor
+
+ EnvironmentList_var &operator= (EnvironmentList *);
+ EnvironmentList_var &operator= (const EnvironmentList_var &);
+ EnvironmentList *operator-> (void);
+ const EnvironmentList *operator-> (void) const;
+
+ operator const EnvironmentList &() const;
+ operator EnvironmentList &();
+ operator EnvironmentList &() const;
+ EnvironmentVariable &operator[] (CORBA::ULong index);
+ // in, inout, out, _retn
+ const EnvironmentList &in (void) const;
+ EnvironmentList &inout (void);
+ EnvironmentList *&out (void);
+ EnvironmentList *_retn (void);
+ EnvironmentList *ptr (void) const;
+
+private:
+ EnvironmentList *ptr_;
+};
+
+
+#endif /* end #if !defined */
+
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_ENVIRONMENTLIST___OUT_CH_)
+#define _IMPLEMENTATIONREPOSITORY_ENVIRONMENTLIST___OUT_CH_
+
+class TAO_Export EnvironmentList_out
+{
+public:
+ EnvironmentList_out (EnvironmentList *&);
+ EnvironmentList_out (EnvironmentList_var &);
+ EnvironmentList_out (const EnvironmentList_out &);
+ EnvironmentList_out &operator= (const EnvironmentList_out &);
+ EnvironmentList_out &operator= (EnvironmentList *);
+ operator EnvironmentList *&();
+ EnvironmentList *&ptr (void);
+ EnvironmentList *operator-> (void);
+ EnvironmentVariable &operator[] (CORBA::ULong index);
+
+private:
+ EnvironmentList *&ptr_;
+ // assignment from T_var not allowed
+ void operator= (const EnvironmentList_var &);
+};
+
+
+#endif /* end #if !defined */
+
+TAO_NAMESPACE_STORAGE_CLASS CORBA::TypeCode_ptr _tc_EnvironmentList;
+
+enum ActivationMode
+{
+ NORMAL,
+ MANUAL,
+ PER_CLIENT,
+ AUTO_START,
+ ActivationMode_TAO_ENUM_32BIT_ENFORCER = 0x7FFFFFFF
+};
+typedef ActivationMode &ActivationMode_out;
+TAO_NAMESPACE_STORAGE_CLASS CORBA::TypeCode_ptr _tc_ActivationMode;
+
+struct StartupOptions;
+class StartupOptions_var;
+typedef StartupOptions* StartupOptions_ptr;
+
+struct TAO_Export StartupOptions
+{
+
+#if !defined(__GNUC__) || !defined (ACE_HAS_GNUG_PRE_2_8)
+ typedef StartupOptions_ptr _ptr_type;
+ typedef StartupOptions_var _var_type;
+#endif /* ! __GNUC__ || g++ >= 2.8 */
+
+ TAO_String_Manager command_line;
+ ImplementationRepository::EnvironmentList environment;
+ TAO_String_Manager working_directory;
+ ImplementationRepository::ActivationMode activation;
+};
+
+class TAO_Export StartupOptions_var
+{
+public:
+ StartupOptions_var (void); // default constructor
+ StartupOptions_var (StartupOptions *);
+ StartupOptions_var (const StartupOptions_var &); // copy constructor
+ ~StartupOptions_var (void); // destructor
+
+ StartupOptions_var &operator= (StartupOptions *);
+ StartupOptions_var &operator= (const StartupOptions_var &);
+ StartupOptions *operator-> (void);
+ const StartupOptions *operator-> (void) const;
+
+ operator const StartupOptions &() const;
+ operator StartupOptions &();
+ operator StartupOptions &() const;
+ // in, inout, out, _retn
+ const StartupOptions &in (void) const;
+ StartupOptions &inout (void);
+ StartupOptions *&out (void);
+ StartupOptions *_retn (void);
+ StartupOptions *ptr (void) const;
+
+private:
+ StartupOptions *ptr_;
+};
+
+class TAO_Export StartupOptions_out
+{
+public:
+ StartupOptions_out (StartupOptions *&);
+ StartupOptions_out (StartupOptions_var &);
+ StartupOptions_out (const StartupOptions_out &);
+ StartupOptions_out &operator= (const StartupOptions_out &);
+ StartupOptions_out &operator= (StartupOptions *);
+ operator StartupOptions *&();
+ StartupOptions *&ptr (void);
+ StartupOptions *operator-> (void);
+
+private:
+ StartupOptions *&ptr_;
+ // assignment from T_var not allowed
+ void operator= (const StartupOptions_var &);
+};
+
+TAO_NAMESPACE_STORAGE_CLASS CORBA::TypeCode_ptr _tc_StartupOptions;
+
+struct ServerInformation;
+class ServerInformation_var;
+typedef ServerInformation* ServerInformation_ptr;
+
+struct TAO_Export ServerInformation
+{
+
+#if !defined(__GNUC__) || !defined (ACE_HAS_GNUG_PRE_2_8)
+ typedef ServerInformation_ptr _ptr_type;
+ typedef ServerInformation_var _var_type;
+#endif /* ! __GNUC__ || g++ >= 2.8 */
+
+ TAO_String_Manager logical_server;
+ TAO_String_Manager server;
+ ImplementationRepository::StartupOptions startup;
+ TAO_String_Manager location;
+};
+
+class TAO_Export ServerInformation_var
+{
+public:
+ ServerInformation_var (void); // default constructor
+ ServerInformation_var (ServerInformation *);
+ ServerInformation_var (const ServerInformation_var &); // copy constructor
+ ~ServerInformation_var (void); // destructor
+
+ ServerInformation_var &operator= (ServerInformation *);
+ ServerInformation_var &operator= (const ServerInformation_var &);
+ ServerInformation *operator-> (void);
+ const ServerInformation *operator-> (void) const;
+
+ operator const ServerInformation &() const;
+ operator ServerInformation &();
+ operator ServerInformation &() const;
+ // in, inout, out, _retn
+ const ServerInformation &in (void) const;
+ ServerInformation &inout (void);
+ ServerInformation *&out (void);
+ ServerInformation *_retn (void);
+ ServerInformation *ptr (void) const;
+
+private:
+ ServerInformation *ptr_;
+};
+
+class TAO_Export ServerInformation_out
+{
+public:
+ ServerInformation_out (ServerInformation *&);
+ ServerInformation_out (ServerInformation_var &);
+ ServerInformation_out (const ServerInformation_out &);
+ ServerInformation_out &operator= (const ServerInformation_out &);
+ ServerInformation_out &operator= (ServerInformation *);
+ operator ServerInformation *&();
+ ServerInformation *&ptr (void);
+ ServerInformation *operator-> (void);
+
+private:
+ ServerInformation *&ptr_;
+ // assignment from T_var not allowed
+ void operator= (const ServerInformation_var &);
+};
+
+TAO_NAMESPACE_STORAGE_CLASS CORBA::TypeCode_ptr _tc_ServerInformation;
+
+
+#if !defined (TAO_USE_SEQUENCE_TEMPLATES)
+
+#if !defined (__TAO_UNBOUNDED_SEQUENCE_IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONLIST_CH_)
+#define __TAO_UNBOUNDED_SEQUENCE_IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONLIST_CH_
+
+ class TAO_EXPORT_NESTED_MACRO _TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList : public TAO_Unbounded_Base_Sequence
+ {
+ public:
+ // = Initialization and termination methods.
+
+ _TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList (void); // Default constructor.
+ _TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList (CORBA::ULong maximum);
+ _TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList (CORBA::ULong maximum,
+ CORBA::ULong length,
+ ServerInformation *data,
+ CORBA::Boolean release = 0);
+ _TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList (const _TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList &rhs);
+ _TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList &operator= (const _TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList &rhs);
+ virtual ~_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList (void); // Dtor.
+ // = Accessors.
+ ServerInformation &operator[] (CORBA::ULong i);
+ const ServerInformation &operator[] (CORBA::ULong i) const;
+ // = Static operations.
+ static ServerInformation *allocbuf (CORBA::ULong size);
+ static void freebuf (ServerInformation *buffer);
+ virtual void _allocate_buffer (CORBA::ULong length);
+ virtual void _deallocate_buffer (void);
+ // Implement the TAO_Base_Sequence methods (see Sequence.h)
+
+ ServerInformation *get_buffer (CORBA::Boolean orphan = 0);
+ const ServerInformation *get_buffer (void) const;
+ void replace (CORBA::ULong max,
+ CORBA::ULong length,
+ ServerInformation *data,
+ CORBA::Boolean release);
+ };
+
+#endif /* end #if !defined */
+
+
+#endif /* !TAO_USE_SEQUENCE_TEMPLATES */
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONLIST_CH_)
+#define _IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONLIST_CH_
+
+class ServerInformationList;
+class ServerInformationList_var;
+typedef ServerInformationList* ServerInformationList_ptr;
+
+// *************************************************************
+// ServerInformationList
+// *************************************************************
+
+class TAO_Export ServerInformationList : public
+#if !defined (TAO_USE_SEQUENCE_TEMPLATES)
+ _TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList
+#else /* TAO_USE_SEQUENCE_TEMPLATES */
+ TAO_Unbounded_Sequence<ServerInformation>
+#endif /* !TAO_USE_SEQUENCE_TEMPLATES */
+{
+public:
+ ServerInformationList (void); // default ctor
+ ServerInformationList (CORBA::ULong max); // uses max size
+ ServerInformationList (
+ CORBA::ULong max,
+ CORBA::ULong length,
+ ServerInformation *buffer,
+ CORBA::Boolean release=0
+ );
+ ServerInformationList (const ServerInformationList &); // copy ctor
+ ~ServerInformationList (void); // dtor
+
+#if !defined(__GNUC__) || !defined (ACE_HAS_GNUG_PRE_2_8)
+ typedef ServerInformationList_ptr _ptr_type;
+ typedef ServerInformationList_var _var_type;
+#endif /* ! __GNUC__ || g++ >= 2.8 */
+
+};
+
+#endif /* end #if !defined */
+
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONLIST___VAR_CH_)
+#define _IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONLIST___VAR_CH_
+
+// *************************************************************
+// class ImplementationRepository::ServerInformationList_var
+// *************************************************************
+
+class TAO_Export ServerInformationList_var
+{
+public:
+ ServerInformationList_var (void); // default constructor
+ ServerInformationList_var (ServerInformationList *);
+ ServerInformationList_var (const ServerInformationList_var &); // copy constructor
+ ~ServerInformationList_var (void); // destructor
+
+ ServerInformationList_var &operator= (ServerInformationList *);
+ ServerInformationList_var &operator= (const ServerInformationList_var &);
+ ServerInformationList *operator-> (void);
+ const ServerInformationList *operator-> (void) const;
+
+ operator const ServerInformationList &() const;
+ operator ServerInformationList &();
+ operator ServerInformationList &() const;
+ ServerInformation &operator[] (CORBA::ULong index);
+ // in, inout, out, _retn
+ const ServerInformationList &in (void) const;
+ ServerInformationList &inout (void);
+ ServerInformationList *&out (void);
+ ServerInformationList *_retn (void);
+ ServerInformationList *ptr (void) const;
+
+private:
+ ServerInformationList *ptr_;
+};
+
+
+#endif /* end #if !defined */
+
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONLIST___OUT_CH_)
+#define _IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONLIST___OUT_CH_
+
+class TAO_Export ServerInformationList_out
+{
+public:
+ ServerInformationList_out (ServerInformationList *&);
+ ServerInformationList_out (ServerInformationList_var &);
+ ServerInformationList_out (const ServerInformationList_out &);
+ ServerInformationList_out &operator= (const ServerInformationList_out &);
+ ServerInformationList_out &operator= (ServerInformationList *);
+ operator ServerInformationList *&();
+ ServerInformationList *&ptr (void);
+ ServerInformationList *operator-> (void);
+ ServerInformation &operator[] (CORBA::ULong index);
+
+private:
+ ServerInformationList *&ptr_;
+ // assignment from T_var not allowed
+ void operator= (const ServerInformationList_var &);
+};
+
+
+#endif /* end #if !defined */
+
+TAO_NAMESPACE_STORAGE_CLASS CORBA::TypeCode_ptr _tc_ServerInformationList;
+
+class ServerInformationIterator;
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONITERATOR___PTR_CH_)
+#define _IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONITERATOR___PTR_CH_
+
+typedef ServerInformationIterator *ServerInformationIterator_ptr;
+
+#endif /* end #if !defined */
+
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONITERATOR___VAR_CH_)
+#define _IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONITERATOR___VAR_CH_
+
+class TAO_Export ServerInformationIterator_var
+{
+public:
+ ServerInformationIterator_var (void); // default constructor
+ ServerInformationIterator_var (ServerInformationIterator_ptr);
+ ServerInformationIterator_var (const ServerInformationIterator_var &); // copy constructor
+ ~ServerInformationIterator_var (void); // destructor
+
+ ServerInformationIterator_var &operator= (ServerInformationIterator_ptr);
+ ServerInformationIterator_var &operator= (const ServerInformationIterator_var &);
+ ServerInformationIterator_ptr operator-> (void) const;
+
+ operator const ServerInformationIterator_ptr &() const;
+ operator ServerInformationIterator_ptr &();
+ // in, inout, out, _retn
+ ServerInformationIterator_ptr in (void) const;
+ ServerInformationIterator_ptr &inout (void);
+ ServerInformationIterator_ptr &out (void);
+ ServerInformationIterator_ptr _retn (void);
+ ServerInformationIterator_ptr ptr (void) const;
+
+private:
+ ServerInformationIterator_ptr ptr_;
+};
+
+
+#endif /* end #if !defined */
+
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONITERATOR___OUT_CH_)
+#define _IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONITERATOR___OUT_CH_
+
+class TAO_Export ServerInformationIterator_out
+{
+public:
+ ServerInformationIterator_out (ServerInformationIterator_ptr &);
+ ServerInformationIterator_out (ServerInformationIterator_var &);
+ ServerInformationIterator_out (const ServerInformationIterator_out &);
+ ServerInformationIterator_out &operator= (const ServerInformationIterator_out &);
+ ServerInformationIterator_out &operator= (const ServerInformationIterator_var &);
+ ServerInformationIterator_out &operator= (ServerInformationIterator_ptr);
+ operator ServerInformationIterator_ptr &();
+ ServerInformationIterator_ptr &ptr (void);
+ ServerInformationIterator_ptr operator-> (void);
+
+private:
+ ServerInformationIterator_ptr &ptr_;
+};
+
+
+#endif /* end #if !defined */
+
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_ADMINISTRATION___PTR_CH_)
+#define _IMPLEMENTATIONREPOSITORY_ADMINISTRATION___PTR_CH_
+
+class Administration;
+typedef Administration *Administration_ptr;
+
+#endif /* end #if !defined */
+
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_ADMINISTRATION___VAR_CH_)
+#define _IMPLEMENTATIONREPOSITORY_ADMINISTRATION___VAR_CH_
+
+class TAO_Export Administration_var
+{
+public:
+ Administration_var (void); // default constructor
+ Administration_var (Administration_ptr);
+ Administration_var (const Administration_var &); // copy constructor
+ ~Administration_var (void); // destructor
+
+ Administration_var &operator= (Administration_ptr);
+ Administration_var &operator= (const Administration_var &);
+ Administration_ptr operator-> (void) const;
+
+ operator const Administration_ptr &() const;
+ operator Administration_ptr &();
+ // in, inout, out, _retn
+ Administration_ptr in (void) const;
+ Administration_ptr &inout (void);
+ Administration_ptr &out (void);
+ Administration_ptr _retn (void);
+ Administration_ptr ptr (void) const;
+
+private:
+ Administration_ptr ptr_;
+};
+
+
+#endif /* end #if !defined */
+
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_ADMINISTRATION___OUT_CH_)
+#define _IMPLEMENTATIONREPOSITORY_ADMINISTRATION___OUT_CH_
+
+class TAO_Export Administration_out
+{
+public:
+ Administration_out (Administration_ptr &);
+ Administration_out (Administration_var &);
+ Administration_out (const Administration_out &);
+ Administration_out &operator= (const Administration_out &);
+ Administration_out &operator= (const Administration_var &);
+ Administration_out &operator= (Administration_ptr);
+ operator Administration_ptr &();
+ Administration_ptr &ptr (void);
+ Administration_ptr operator-> (void);
+
+private:
+ Administration_ptr &ptr_;
+};
+
+
+#endif /* end #if !defined */
+
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_ADMINISTRATION_CH_)
+#define _IMPLEMENTATIONREPOSITORY_ADMINISTRATION_CH_
+
+class TAO_Export Administration : public virtual ACE_CORBA_1 (Object)
+{
+public:
+#if !defined(__GNUC__) || !defined (ACE_HAS_GNUG_PRE_2_8)
+ typedef Administration_ptr _ptr_type;
+ typedef Administration_var _var_type;
+#endif /* ! __GNUC__ || g++ >= 2.8 */
+
+ // the static operations
+ static Administration_ptr _duplicate (Administration_ptr obj);
+ static Administration_ptr _narrow (
+ CORBA::Object_ptr obj,
+ CORBA::Environment &env =
+ TAO_default_environment ()
+ );
+ static Administration_ptr _unchecked_narrow (
+ CORBA::Object_ptr obj,
+ CORBA::Environment &env =
+ TAO_default_environment ()
+ );
+ static Administration_ptr _nil (void)
+ {
+ return (ImplementationRepository::Administration_ptr)0;
+ }
+
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_ADMINISTRATION_ALREADYREGISTERED___PTR_CH_)
+#define _IMPLEMENTATIONREPOSITORY_ADMINISTRATION_ALREADYREGISTERED___PTR_CH_
+
+ class AlreadyRegistered;
+ typedef AlreadyRegistered *AlreadyRegistered_ptr;
+
+#endif /* end #if !defined */
+
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_ADMINISTRATION_ALREADYREGISTERED_CH_)
+#define _IMPLEMENTATIONREPOSITORY_ADMINISTRATION_ALREADYREGISTERED_CH_
+
+ class TAO_Export AlreadyRegistered : public CORBA::UserException
+ {
+ public:
+
+#if !defined(__GNUC__) || !defined (ACE_HAS_GNUG_PRE_2_8)
+ typedef AlreadyRegistered_ptr _ptr_type;
+#endif /* ! __GNUC__ || g++ >= 2.8 */
+
+
+ AlreadyRegistered (void); // default ctor
+ AlreadyRegistered (const AlreadyRegistered &); // copy ctor
+ ~AlreadyRegistered (void); // dtor
+ AlreadyRegistered &operator= (const AlreadyRegistered &);
+
+
+ virtual void _raise (void);
+
+ static AlreadyRegistered *_narrow (CORBA::Exception *);
+
+
+ // = TAO extension
+ static CORBA::Exception *_alloc (void);
+
+ }; // exception ImplementationRepository::Administration::AlreadyRegistered
+
+ static CORBA::TypeCode_ptr _tc_AlreadyRegistered;
+
+
+#endif /* end #if !defined */
+
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_ADMINISTRATION_CANNOTACTIVATE___PTR_CH_)
+#define _IMPLEMENTATIONREPOSITORY_ADMINISTRATION_CANNOTACTIVATE___PTR_CH_
+
+ class CannotActivate;
+ typedef CannotActivate *CannotActivate_ptr;
+
+#endif /* end #if !defined */
+
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_ADMINISTRATION_CANNOTACTIVATE_CH_)
+#define _IMPLEMENTATIONREPOSITORY_ADMINISTRATION_CANNOTACTIVATE_CH_
+
+ class TAO_Export CannotActivate : public CORBA::UserException
+ {
+ public:
+
+#if !defined(__GNUC__) || !defined (ACE_HAS_GNUG_PRE_2_8)
+ typedef CannotActivate_ptr _ptr_type;
+#endif /* ! __GNUC__ || g++ >= 2.8 */
+
+ TAO_String_Manager reason;
+
+ CannotActivate (void); // default ctor
+ CannotActivate (const CannotActivate &); // copy ctor
+ ~CannotActivate (void); // dtor
+ CannotActivate &operator= (const CannotActivate &);
+
+
+ virtual void _raise (void);
+
+ static CannotActivate *_narrow (CORBA::Exception *);
+
+ CannotActivate (
+ const char * _tao_reason
+ );
+
+ // = TAO extension
+ static CORBA::Exception *_alloc (void);
+
+ }; // exception ImplementationRepository::Administration::CannotActivate
+
+ static CORBA::TypeCode_ptr _tc_CannotActivate;
+
+
+#endif /* end #if !defined */
+
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_ADMINISTRATION_NOTFOUND___PTR_CH_)
+#define _IMPLEMENTATIONREPOSITORY_ADMINISTRATION_NOTFOUND___PTR_CH_
+
+ class NotFound;
+ typedef NotFound *NotFound_ptr;
+
+#endif /* end #if !defined */
+
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_ADMINISTRATION_NOTFOUND_CH_)
+#define _IMPLEMENTATIONREPOSITORY_ADMINISTRATION_NOTFOUND_CH_
+
+ class TAO_Export NotFound : public CORBA::UserException
+ {
+ public:
+
+#if !defined(__GNUC__) || !defined (ACE_HAS_GNUG_PRE_2_8)
+ typedef NotFound_ptr _ptr_type;
+#endif /* ! __GNUC__ || g++ >= 2.8 */
+
+
+ NotFound (void); // default ctor
+ NotFound (const NotFound &); // copy ctor
+ ~NotFound (void); // dtor
+ NotFound &operator= (const NotFound &);
+
+
+ virtual void _raise (void);
+
+ static NotFound *_narrow (CORBA::Exception *);
+
+
+ // = TAO extension
+ static CORBA::Exception *_alloc (void);
+
+ }; // exception ImplementationRepository::Administration::NotFound
+
+ static CORBA::TypeCode_ptr _tc_NotFound;
+
+
+#endif /* end #if !defined */
+
+ virtual void activate_server (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound,
+ ImplementationRepository::Administration::CannotActivate
+ ));
+
+ virtual void register_server (
+ const char * server,
+ const ImplementationRepository::StartupOptions & options,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::AlreadyRegistered
+ ));
+
+ virtual void reregister_server (
+ const char * server,
+ const ImplementationRepository::StartupOptions & options,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void remove_server (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ));
+
+ virtual void shutdown_server (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ));
+
+ virtual char * server_is_running (
+ const char * server,
+ const char * addr,
+ ImplementationRepository::ServerObject_ptr server_object,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ));
+
+ virtual void server_is_shutting_down (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ));
+
+ virtual void find (
+ const char * server,
+ ImplementationRepository::ServerInformation_out info,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ));
+
+ virtual void list (
+ CORBA::ULong how_many,
+ ImplementationRepository::ServerInformationList_out server_list,
+ ImplementationRepository::ServerInformationIterator_out server_iterator,
+ 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:
+ Administration (void);
+ Administration (TAO_Stub *objref,
+ TAO_ServantBase *_tao_servant = 0,
+ CORBA::Boolean _tao_collocated = 0
+ );
+ virtual ~Administration (void);
+private:
+ Administration (const Administration &);
+ void operator= (const Administration &);
+};
+
+class TAO_ImplementationRepository_Administration_Default_Proxy_Factory
+{
+public:
+
+ TAO_ImplementationRepository_Administration_Default_Proxy_Factory (int register_proxy_factory = 1);
+
+ virtual ~TAO_ImplementationRepository_Administration_Default_Proxy_Factory (void);
+
+ virtual ImplementationRepository::Administration_ptr create_proxy (
+ ImplementationRepository::Administration_ptr proxy,
+ CORBA::Environment &env =
+ TAO_default_environment ()
+ );
+};
+
+class TAO_ImplementationRepository_Administration_Proxy_Factory_Adapter
+{
+public:
+
+ friend class ACE_Singleton<TAO_ImplementationRepository_Administration_Proxy_Factory_Adapter, ACE_SYNCH_RECURSIVE_MUTEX>;
+
+ int register_proxy_factory (
+ TAO_ImplementationRepository_Administration_Default_Proxy_Factory *df,
+ CORBA::Environment &env =
+ TAO_default_environment ()
+ );
+
+ int unregister_proxy_factory (
+ CORBA::Environment &env =
+ TAO_default_environment ()
+ );
+
+ ImplementationRepository::Administration_ptr create_proxy (
+ ImplementationRepository::Administration_ptr proxy,
+ CORBA::Environment &env =
+ TAO_default_environment ()
+ );
+
+protected:
+ TAO_ImplementationRepository_Administration_Proxy_Factory_Adapter (void);
+ ~TAO_ImplementationRepository_Administration_Proxy_Factory_Adapter (void);
+ TAO_ImplementationRepository_Administration_Proxy_Factory_Adapter &operator= (
+ const TAO_ImplementationRepository_Administration_Proxy_Factory_Adapter &
+ );
+ TAO_ImplementationRepository_Administration_Default_Proxy_Factory *proxy_factory_;
+ int delete_proxy_factory_;
+ ACE_SYNCH_RECURSIVE_MUTEX lock_;
+ };
+
+ typedef ACE_Singleton<TAO_ImplementationRepository_Administration_Proxy_Factory_Adapter, ACE_SYNCH_RECURSIVE_MUTEX> TAO_ImplementationRepository_Administration_PROXY_FACTORY_ADAPTER;
+ class TAO_ImplementationRepository_Administration_Smart_Proxy_Base : public virtual ImplementationRepository::Administration
+ {
+ public:
+ TAO_ImplementationRepository_Administration_Smart_Proxy_Base (ImplementationRepository::Administration_ptr proxy);
+ ~TAO_ImplementationRepository_Administration_Smart_Proxy_Base (void);
+ virtual void activate_server (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound,
+ ImplementationRepository::Administration::CannotActivate
+ ));
+
+ virtual void register_server (
+ const char * server,
+ const ImplementationRepository::StartupOptions & options,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::AlreadyRegistered
+ ));
+
+ virtual void reregister_server (
+ const char * server,
+ const ImplementationRepository::StartupOptions & options,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void remove_server (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ));
+
+ virtual void shutdown_server (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ));
+
+ virtual char * server_is_running (
+ const char * server,
+ const char * addr,
+ ImplementationRepository::ServerObject_ptr server_object,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ));
+
+ virtual void server_is_shutting_down (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ));
+
+ virtual void find (
+ const char * server,
+ ImplementationRepository::ServerInformation_out info,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ));
+
+ virtual void list (
+ CORBA::ULong how_many,
+ ImplementationRepository::ServerInformationList_out server_list,
+ ImplementationRepository::ServerInformationIterator_out server_iterator,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+private:
+ ImplementationRepository::Administration_var base_proxy_;
+};
+
+
+#endif /* end #if !defined */
+
+TAO_NAMESPACE_STORAGE_CLASS CORBA::TypeCode_ptr _tc_Administration;
+
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONITERATOR___PTR_CH_)
+#define _IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONITERATOR___PTR_CH_
+
+class ServerInformationIterator;
+typedef ServerInformationIterator *ServerInformationIterator_ptr;
+
+#endif /* end #if !defined */
+
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONITERATOR___VAR_CH_)
+#define _IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONITERATOR___VAR_CH_
+
+class TAO_Export ServerInformationIterator_var
+{
+public:
+ ServerInformationIterator_var (void); // default constructor
+ ServerInformationIterator_var (ServerInformationIterator_ptr);
+ ServerInformationIterator_var (const ServerInformationIterator_var &); // copy constructor
+ ~ServerInformationIterator_var (void); // destructor
+
+ ServerInformationIterator_var &operator= (ServerInformationIterator_ptr);
+ ServerInformationIterator_var &operator= (const ServerInformationIterator_var &);
+ ServerInformationIterator_ptr operator-> (void) const;
+
+ operator const ServerInformationIterator_ptr &() const;
+ operator ServerInformationIterator_ptr &();
+ // in, inout, out, _retn
+ ServerInformationIterator_ptr in (void) const;
+ ServerInformationIterator_ptr &inout (void);
+ ServerInformationIterator_ptr &out (void);
+ ServerInformationIterator_ptr _retn (void);
+ ServerInformationIterator_ptr ptr (void) const;
+
+private:
+ ServerInformationIterator_ptr ptr_;
+};
+
+
+#endif /* end #if !defined */
+
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONITERATOR___OUT_CH_)
+#define _IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONITERATOR___OUT_CH_
+
+class TAO_Export ServerInformationIterator_out
+{
+public:
+ ServerInformationIterator_out (ServerInformationIterator_ptr &);
+ ServerInformationIterator_out (ServerInformationIterator_var &);
+ ServerInformationIterator_out (const ServerInformationIterator_out &);
+ ServerInformationIterator_out &operator= (const ServerInformationIterator_out &);
+ ServerInformationIterator_out &operator= (const ServerInformationIterator_var &);
+ ServerInformationIterator_out &operator= (ServerInformationIterator_ptr);
+ operator ServerInformationIterator_ptr &();
+ ServerInformationIterator_ptr &ptr (void);
+ ServerInformationIterator_ptr operator-> (void);
+
+private:
+ ServerInformationIterator_ptr &ptr_;
+};
+
+
+#endif /* end #if !defined */
+
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONITERATOR_CH_)
+#define _IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONITERATOR_CH_
+
+class TAO_Export ServerInformationIterator : public virtual ACE_CORBA_1 (Object)
+{
+public:
+#if !defined(__GNUC__) || !defined (ACE_HAS_GNUG_PRE_2_8)
+ typedef ServerInformationIterator_ptr _ptr_type;
+ typedef ServerInformationIterator_var _var_type;
+#endif /* ! __GNUC__ || g++ >= 2.8 */
+
+ // the static operations
+ static ServerInformationIterator_ptr _duplicate (ServerInformationIterator_ptr obj);
+ static ServerInformationIterator_ptr _narrow (
+ CORBA::Object_ptr obj,
+ CORBA::Environment &env =
+ TAO_default_environment ()
+ );
+ static ServerInformationIterator_ptr _unchecked_narrow (
+ CORBA::Object_ptr obj,
+ CORBA::Environment &env =
+ TAO_default_environment ()
+ );
+ static ServerInformationIterator_ptr _nil (void)
+ {
+ return (ImplementationRepository::ServerInformationIterator_ptr)0;
+ }
+
+ virtual CORBA::Boolean next_n (
+ CORBA::ULong how_many,
+ ImplementationRepository::ServerInformationList_out server_list,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void destroy (
+ 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:
+ ServerInformationIterator (void);
+ ServerInformationIterator (TAO_Stub *objref,
+ TAO_ServantBase *_tao_servant = 0,
+ CORBA::Boolean _tao_collocated = 0
+ );
+ virtual ~ServerInformationIterator (void);
+private:
+ ServerInformationIterator (const ServerInformationIterator &);
+ void operator= (const ServerInformationIterator &);
+};
+
+class TAO_ImplementationRepository_ServerInformationIterator_Default_Proxy_Factory
+{
+public:
+
+ TAO_ImplementationRepository_ServerInformationIterator_Default_Proxy_Factory (int register_proxy_factory = 1);
+
+ virtual ~TAO_ImplementationRepository_ServerInformationIterator_Default_Proxy_Factory (void);
+
+ virtual ImplementationRepository::ServerInformationIterator_ptr create_proxy (
+ ImplementationRepository::ServerInformationIterator_ptr proxy,
+ CORBA::Environment &env =
+ TAO_default_environment ()
+ );
+};
+
+class TAO_ImplementationRepository_ServerInformationIterator_Proxy_Factory_Adapter
+{
+public:
+
+ friend class ACE_Singleton<TAO_ImplementationRepository_ServerInformationIterator_Proxy_Factory_Adapter, ACE_SYNCH_RECURSIVE_MUTEX>;
+
+ int register_proxy_factory (
+ TAO_ImplementationRepository_ServerInformationIterator_Default_Proxy_Factory *df,
+ CORBA::Environment &env =
+ TAO_default_environment ()
+ );
+
+ int unregister_proxy_factory (
+ CORBA::Environment &env =
+ TAO_default_environment ()
+ );
+
+ ImplementationRepository::ServerInformationIterator_ptr create_proxy (
+ ImplementationRepository::ServerInformationIterator_ptr proxy,
+ CORBA::Environment &env =
+ TAO_default_environment ()
+ );
+
+protected:
+ TAO_ImplementationRepository_ServerInformationIterator_Proxy_Factory_Adapter (void);
+ ~TAO_ImplementationRepository_ServerInformationIterator_Proxy_Factory_Adapter (void);
+ TAO_ImplementationRepository_ServerInformationIterator_Proxy_Factory_Adapter &operator= (
+ const TAO_ImplementationRepository_ServerInformationIterator_Proxy_Factory_Adapter &
+ );
+ TAO_ImplementationRepository_ServerInformationIterator_Default_Proxy_Factory *proxy_factory_;
+ int delete_proxy_factory_;
+ ACE_SYNCH_RECURSIVE_MUTEX lock_;
+ };
+
+ typedef ACE_Singleton<TAO_ImplementationRepository_ServerInformationIterator_Proxy_Factory_Adapter, ACE_SYNCH_RECURSIVE_MUTEX> TAO_ImplementationRepository_ServerInformationIterator_PROXY_FACTORY_ADAPTER;
+ class TAO_ImplementationRepository_ServerInformationIterator_Smart_Proxy_Base : public virtual ImplementationRepository::ServerInformationIterator
+ {
+ public:
+ TAO_ImplementationRepository_ServerInformationIterator_Smart_Proxy_Base (ImplementationRepository::ServerInformationIterator_ptr proxy);
+ ~TAO_ImplementationRepository_ServerInformationIterator_Smart_Proxy_Base (void);
+ virtual CORBA::Boolean next_n (
+ CORBA::ULong how_many,
+ ImplementationRepository::ServerInformationList_out server_list,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void destroy (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+private:
+ ImplementationRepository::ServerInformationIterator_var base_proxy_;
+};
+
+
+#endif /* end #if !defined */
+
+TAO_NAMESPACE_STORAGE_CLASS CORBA::TypeCode_ptr _tc_ServerInformationIterator;
+
+
+}
+TAO_NAMESPACE_CLOSE // module ImplementationRepository
+
+extern TAO_Export ImplementationRepository::ServerObject_ptr (*_TAO_collocation_ImplementationRepository_ServerObject_Stub_Factory_function_pointer) (
+ CORBA::Object_ptr obj
+ );
+// Any operators for interface ImplementationRepository::ServerObject
+TAO_Export void operator<<= (CORBA::Any &, ImplementationRepository::ServerObject_ptr);
+TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, ImplementationRepository::ServerObject *&);
+TAO_Export void operator<<= (CORBA::Any &, const ImplementationRepository::EnvironmentVariable &); // copying version
+TAO_Export void operator<<= (CORBA::Any &, ImplementationRepository::EnvironmentVariable*); // noncopying version
+TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, ImplementationRepository::EnvironmentVariable *&);
+TAO_Export void operator<<= (CORBA::Any &, const ImplementationRepository::EnvironmentList &); // copying version
+TAO_Export void operator<<= (CORBA::Any &, ImplementationRepository::EnvironmentList*); // noncopying version
+TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, ImplementationRepository::EnvironmentList *&);
+TAO_Export void operator<<= (CORBA::Any &, ImplementationRepository::ActivationMode);
+TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, ImplementationRepository::ActivationMode &);
+TAO_Export void operator<<= (CORBA::Any &, const ImplementationRepository::StartupOptions &); // copying version
+TAO_Export void operator<<= (CORBA::Any &, ImplementationRepository::StartupOptions*); // noncopying version
+TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, ImplementationRepository::StartupOptions *&);
+TAO_Export void operator<<= (CORBA::Any &, const ImplementationRepository::ServerInformation &); // copying version
+TAO_Export void operator<<= (CORBA::Any &, ImplementationRepository::ServerInformation*); // noncopying version
+TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, ImplementationRepository::ServerInformation *&);
+TAO_Export void operator<<= (CORBA::Any &, const ImplementationRepository::ServerInformationList &); // copying version
+TAO_Export void operator<<= (CORBA::Any &, ImplementationRepository::ServerInformationList*); // noncopying version
+TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, ImplementationRepository::ServerInformationList *&);
+extern TAO_Export ImplementationRepository::Administration_ptr (*_TAO_collocation_ImplementationRepository_Administration_Stub_Factory_function_pointer) (
+ CORBA::Object_ptr obj
+ );
+// Any operators for interface ImplementationRepository::Administration
+TAO_Export void operator<<= (CORBA::Any &, ImplementationRepository::Administration_ptr);
+TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, ImplementationRepository::Administration *&);
+TAO_Export void operator<<= (CORBA::Any &, const ImplementationRepository::Administration::AlreadyRegistered &); // copying version
+TAO_Export void operator<<= (CORBA::Any &, ImplementationRepository::Administration::AlreadyRegistered*); // noncopying version
+TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, ImplementationRepository::Administration::AlreadyRegistered *&);
+TAO_Export void operator<<= (CORBA::Any &, const ImplementationRepository::Administration::CannotActivate &); // copying version
+TAO_Export void operator<<= (CORBA::Any &, ImplementationRepository::Administration::CannotActivate*); // noncopying version
+TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, ImplementationRepository::Administration::CannotActivate *&);
+TAO_Export void operator<<= (CORBA::Any &, const ImplementationRepository::Administration::NotFound &); // copying version
+TAO_Export void operator<<= (CORBA::Any &, ImplementationRepository::Administration::NotFound*); // noncopying version
+TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, ImplementationRepository::Administration::NotFound *&);
+extern TAO_Export ImplementationRepository::ServerInformationIterator_ptr (*_TAO_collocation_ImplementationRepository_ServerInformationIterator_Stub_Factory_function_pointer) (
+ CORBA::Object_ptr obj
+ );
+// Any operators for interface ImplementationRepository::ServerInformationIterator
+TAO_Export void operator<<= (CORBA::Any &, ImplementationRepository::ServerInformationIterator_ptr);
+TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, ImplementationRepository::ServerInformationIterator *&);
+
+#ifndef __ACE_INLINE__
+
+TAO_Export CORBA::Boolean
+operator<< (TAO_OutputCDR &, const ImplementationRepository::ServerObject_ptr );
+TAO_Export CORBA::Boolean
+operator>> (TAO_InputCDR &, ImplementationRepository::ServerObject_ptr &);
+TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const ImplementationRepository::EnvironmentVariable &);
+TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, ImplementationRepository::EnvironmentVariable &);
+
+#if !defined _TAO_CDR_OP_ImplementationRepository_EnvironmentList_H_
+#define _TAO_CDR_OP_ImplementationRepository_EnvironmentList_H_
+
+TAO_Export CORBA::Boolean operator<< (
+ TAO_OutputCDR &,
+ const ImplementationRepository::EnvironmentList &
+ );
+TAO_Export CORBA::Boolean operator>> (
+ TAO_InputCDR &,
+ ImplementationRepository::EnvironmentList &
+ );
+
+#endif /* _TAO_CDR_OP_ImplementationRepository_EnvironmentList_H_ */
+
+TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const ImplementationRepository::ActivationMode &); //
+TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, ImplementationRepository::ActivationMode &);
+TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const ImplementationRepository::StartupOptions &);
+TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, ImplementationRepository::StartupOptions &);
+TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const ImplementationRepository::ServerInformation &);
+TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, ImplementationRepository::ServerInformation &);
+
+#if !defined _TAO_CDR_OP_ImplementationRepository_ServerInformationList_H_
+#define _TAO_CDR_OP_ImplementationRepository_ServerInformationList_H_
+
+TAO_Export CORBA::Boolean operator<< (
+ TAO_OutputCDR &,
+ const ImplementationRepository::ServerInformationList &
+ );
+TAO_Export CORBA::Boolean operator>> (
+ TAO_InputCDR &,
+ ImplementationRepository::ServerInformationList &
+ );
+
+#endif /* _TAO_CDR_OP_ImplementationRepository_ServerInformationList_H_ */
+
+TAO_Export CORBA::Boolean
+operator<< (TAO_OutputCDR &, const ImplementationRepository::Administration_ptr );
+TAO_Export CORBA::Boolean
+operator>> (TAO_InputCDR &, ImplementationRepository::Administration_ptr &);
+TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const ImplementationRepository::Administration::AlreadyRegistered &);
+TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, ImplementationRepository::Administration::AlreadyRegistered &);
+
+# if !defined (ACE_LACKS_IOSTREAM_TOTALLY)
+
+TAO_Export ostream& operator<< (ostream &, const ImplementationRepository::Administration::AlreadyRegistered &);
+
+# endif /* ACE_LACKS_IOSTREAM_TOTALLY */
+TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const ImplementationRepository::Administration::CannotActivate &);
+TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, ImplementationRepository::Administration::CannotActivate &);
+
+# if !defined (ACE_LACKS_IOSTREAM_TOTALLY)
+
+TAO_Export ostream& operator<< (ostream &, const ImplementationRepository::Administration::CannotActivate &);
+
+# endif /* ACE_LACKS_IOSTREAM_TOTALLY */
+TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const ImplementationRepository::Administration::NotFound &);
+TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, ImplementationRepository::Administration::NotFound &);
+
+# if !defined (ACE_LACKS_IOSTREAM_TOTALLY)
+
+TAO_Export ostream& operator<< (ostream &, const ImplementationRepository::Administration::NotFound &);
+
+# endif /* ACE_LACKS_IOSTREAM_TOTALLY */
+TAO_Export CORBA::Boolean
+operator<< (TAO_OutputCDR &, const ImplementationRepository::ServerInformationIterator_ptr );
+TAO_Export CORBA::Boolean
+operator>> (TAO_InputCDR &, ImplementationRepository::ServerInformationIterator_ptr &);
+
+#endif /* __ACE_INLINE__ */
+
+
+#if defined (__ACE_INLINE__)
+#include "ImplRepoC.i"
+#endif /* defined INLINE */
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* ifndef */
diff --git a/TAO/tao/ImplRepoC.i b/TAO/tao/ImplRepoC.i
new file mode 100644
index 00000000000..00d48a0cee4
--- /dev/null
+++ b/TAO/tao/ImplRepoC.i
@@ -0,0 +1,2239 @@
+/* -*- 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
+
+ACE_INLINE
+ImplementationRepository::ServerObject::ServerObject (void) // default constructor
+{}
+
+ACE_INLINE
+ImplementationRepository::ServerObject::ServerObject (TAO_Stub *objref, TAO_ServantBase *_tao_servant, CORBA::Boolean _tao_collocated) // constructor
+ : CORBA_Object (objref, _tao_servant, _tao_collocated)
+{}
+
+ACE_INLINE
+ImplementationRepository::ServerObject::~ServerObject (void) // destructor
+{}
+
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_SERVEROBJECT___VAR_CI_)
+#define _IMPLEMENTATIONREPOSITORY_SERVEROBJECT___VAR_CI_
+
+// *************************************************************
+// Inline operations for class ImplementationRepository::ServerObject_var
+// *************************************************************
+
+ACE_INLINE
+ImplementationRepository::ServerObject_var::ServerObject_var (void) // default constructor
+ : ptr_ (ImplementationRepository::ServerObject::_nil ())
+{}
+
+ACE_INLINE
+ImplementationRepository::ServerObject_var::ServerObject_var (ImplementationRepository::ServerObject_ptr p)
+ : ptr_ (p)
+{}
+
+ACE_INLINE ImplementationRepository::ServerObject_ptr
+ImplementationRepository::ServerObject_var::ptr (void) const
+{
+ return this->ptr_;
+}
+
+ACE_INLINE
+ImplementationRepository::ServerObject_var::ServerObject_var (const ImplementationRepository::ServerObject_var &p) // copy constructor
+ : ptr_ (ImplementationRepository::ServerObject::_duplicate (p.ptr ()))
+{}
+
+ACE_INLINE
+ImplementationRepository::ServerObject_var::~ServerObject_var (void) // destructor
+{
+ CORBA::release (this->ptr_);
+}
+
+ACE_INLINE ImplementationRepository::ServerObject_var &
+ImplementationRepository::ServerObject_var::operator= (ImplementationRepository::ServerObject_ptr p)
+{
+ CORBA::release (this->ptr_);
+ this->ptr_ = p;
+ return *this;
+}
+
+ACE_INLINE ImplementationRepository::ServerObject_var &
+ImplementationRepository::ServerObject_var::operator= (const ImplementationRepository::ServerObject_var &p)
+{
+ if (this != &p)
+ {
+ CORBA::release (this->ptr_);
+ this->ptr_ = ImplementationRepository::ServerObject::_duplicate (p.ptr ());
+ }
+ return *this;
+}
+
+ACE_INLINE
+ImplementationRepository::ServerObject_var::operator const ImplementationRepository::ServerObject_ptr &() const // cast
+{
+ return this->ptr_;
+}
+
+ACE_INLINE
+ImplementationRepository::ServerObject_var::operator ImplementationRepository::ServerObject_ptr &() // cast
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::ServerObject_ptr
+ImplementationRepository::ServerObject_var::operator-> (void) const
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::ServerObject_ptr
+ImplementationRepository::ServerObject_var::in (void) const
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::ServerObject_ptr &
+ImplementationRepository::ServerObject_var::inout (void)
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::ServerObject_ptr &
+ImplementationRepository::ServerObject_var::out (void)
+{
+ CORBA::release (this->ptr_);
+ this->ptr_ = ImplementationRepository::ServerObject::_nil ();
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::ServerObject_ptr
+ImplementationRepository::ServerObject_var::_retn (void)
+{
+ // yield ownership of managed obj reference
+ ImplementationRepository::ServerObject_ptr val = this->ptr_;
+ this->ptr_ = ImplementationRepository::ServerObject::_nil ();
+ return val;
+}
+
+
+#endif /* end #if !defined */
+
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_SERVEROBJECT___OUT_CI_)
+#define _IMPLEMENTATIONREPOSITORY_SERVEROBJECT___OUT_CI_
+
+// *************************************************************
+// Inline operations for class ImplementationRepository::ServerObject_out
+// *************************************************************
+
+ACE_INLINE
+ImplementationRepository::ServerObject_out::ServerObject_out (ImplementationRepository::ServerObject_ptr &p)
+ : ptr_ (p)
+{
+ this->ptr_ = ImplementationRepository::ServerObject::_nil ();
+}
+
+ACE_INLINE
+ImplementationRepository::ServerObject_out::ServerObject_out (ImplementationRepository::ServerObject_var &p) // constructor from _var
+ : ptr_ (p.out ())
+{
+ CORBA::release (this->ptr_);
+ this->ptr_ = ImplementationRepository::ServerObject::_nil ();
+}
+
+ACE_INLINE
+ImplementationRepository::ServerObject_out::ServerObject_out (const ImplementationRepository::ServerObject_out &p) // copy constructor
+ : ptr_ (ACE_const_cast (ImplementationRepository::ServerObject_out&,p).ptr_)
+{}
+
+ACE_INLINE ImplementationRepository::ServerObject_out &
+ImplementationRepository::ServerObject_out::operator= (const ImplementationRepository::ServerObject_out &p)
+{
+ this->ptr_ = ACE_const_cast (ImplementationRepository::ServerObject_out&,p).ptr_;
+ return *this;
+}
+
+ACE_INLINE ImplementationRepository::ServerObject_out &
+ImplementationRepository::ServerObject_out::operator= (const ImplementationRepository::ServerObject_var &p)
+{
+ this->ptr_ = ImplementationRepository::ServerObject::_duplicate (p.ptr ());
+ return *this;
+}
+
+ACE_INLINE ImplementationRepository::ServerObject_out &
+ImplementationRepository::ServerObject_out::operator= (ImplementationRepository::ServerObject_ptr p)
+{
+ this->ptr_ = p;
+ return *this;
+}
+
+ACE_INLINE
+ImplementationRepository::ServerObject_out::operator ImplementationRepository::ServerObject_ptr &() // cast
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::ServerObject_ptr &
+ImplementationRepository::ServerObject_out::ptr (void) // ptr
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::ServerObject_ptr
+ImplementationRepository::ServerObject_out::operator-> (void)
+{
+ return this->ptr_;
+}
+
+
+#endif /* end #if !defined */
+
+// *************************************************************
+// Inline operations for class ImplementationRepository::EnvironmentVariable_var
+// *************************************************************
+
+ACE_INLINE
+ImplementationRepository::EnvironmentVariable_var::EnvironmentVariable_var (void) // default constructor
+ : ptr_ (0)
+{}
+
+ACE_INLINE
+ImplementationRepository::EnvironmentVariable_var::EnvironmentVariable_var (ImplementationRepository::EnvironmentVariable *p)
+ : ptr_ (p)
+{}
+
+ACE_INLINE
+ImplementationRepository::EnvironmentVariable_var::EnvironmentVariable_var (const ImplementationRepository::EnvironmentVariable_var &p) // copy constructor
+{
+ if (p.ptr_)
+ ACE_NEW (this->ptr_, ImplementationRepository::EnvironmentVariable (*p.ptr_));
+ else
+ this->ptr_ = 0;
+}
+
+ACE_INLINE
+ImplementationRepository::EnvironmentVariable_var::~EnvironmentVariable_var (void) // destructor
+{
+ delete this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::EnvironmentVariable_var &
+ImplementationRepository::EnvironmentVariable_var::operator= (ImplementationRepository::EnvironmentVariable *p)
+{
+ delete this->ptr_;
+ this->ptr_ = p;
+ return *this;
+}
+
+ACE_INLINE ImplementationRepository::EnvironmentVariable_var &
+ImplementationRepository::EnvironmentVariable_var::operator= (const ImplementationRepository::EnvironmentVariable_var &p)
+{
+ if (this != &p)
+ {
+ delete this->ptr_;
+ ACE_NEW_RETURN (this->ptr_, ImplementationRepository::EnvironmentVariable (*p.ptr_), *this);
+ }
+ return *this;
+}
+
+ACE_INLINE const ImplementationRepository::EnvironmentVariable *
+ImplementationRepository::EnvironmentVariable_var::operator-> (void) const
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::EnvironmentVariable *
+ImplementationRepository::EnvironmentVariable_var::operator-> (void)
+{
+ return this->ptr_;
+}
+
+ACE_INLINE
+ImplementationRepository::EnvironmentVariable_var::operator const ImplementationRepository::EnvironmentVariable &() const // cast
+{
+ return *this->ptr_;
+}
+
+ACE_INLINE
+ImplementationRepository::EnvironmentVariable_var::operator ImplementationRepository::EnvironmentVariable &() // cast
+{
+ return *this->ptr_;
+}
+
+ACE_INLINE
+ImplementationRepository::EnvironmentVariable_var::operator ImplementationRepository::EnvironmentVariable &() const// cast
+{
+ return *this->ptr_;
+}
+
+ACE_INLINE const ImplementationRepository::EnvironmentVariable &
+ImplementationRepository::EnvironmentVariable_var::in (void) const
+{
+ return *this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::EnvironmentVariable &
+ImplementationRepository::EnvironmentVariable_var::inout (void)
+{
+ return *this->ptr_;
+}
+
+// mapping for variable size
+ACE_INLINE ImplementationRepository::EnvironmentVariable *&
+ImplementationRepository::EnvironmentVariable_var::out (void)
+{
+ delete this->ptr_;
+ this->ptr_ = 0;
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::EnvironmentVariable *
+ImplementationRepository::EnvironmentVariable_var::_retn (void)
+{
+ ImplementationRepository::EnvironmentVariable *tmp = this->ptr_;
+ this->ptr_ = 0;
+ return tmp;
+}
+
+ACE_INLINE ImplementationRepository::EnvironmentVariable *
+ImplementationRepository::EnvironmentVariable_var::ptr (void) const
+{
+ return this->ptr_;
+}
+
+// *************************************************************
+// Inline operations for class ImplementationRepository::EnvironmentVariable_out
+// *************************************************************
+
+ACE_INLINE
+ImplementationRepository::EnvironmentVariable_out::EnvironmentVariable_out (ImplementationRepository::EnvironmentVariable *&p)
+ : ptr_ (p)
+{
+ this->ptr_ = 0;
+}
+
+ACE_INLINE
+ImplementationRepository::EnvironmentVariable_out::EnvironmentVariable_out (ImplementationRepository::EnvironmentVariable_var &p) // constructor from _var
+ : ptr_ (p.out ())
+{
+ delete this->ptr_;
+ this->ptr_ = 0;
+}
+
+ACE_INLINE
+ImplementationRepository::EnvironmentVariable_out::EnvironmentVariable_out (const ImplementationRepository::EnvironmentVariable_out &p) // copy constructor
+ : ptr_ (ACE_const_cast (ImplementationRepository::EnvironmentVariable_out&,p).ptr_)
+{}
+
+ACE_INLINE ImplementationRepository::EnvironmentVariable_out &
+ImplementationRepository::EnvironmentVariable_out::operator= (const ImplementationRepository::EnvironmentVariable_out &p)
+{
+ this->ptr_ = ACE_const_cast (ImplementationRepository::EnvironmentVariable_out&,p).ptr_;
+ return *this;
+}
+
+ACE_INLINE ImplementationRepository::EnvironmentVariable_out &
+ImplementationRepository::EnvironmentVariable_out::operator= (ImplementationRepository::EnvironmentVariable *p)
+{
+ this->ptr_ = p;
+ return *this;
+}
+
+ACE_INLINE
+ImplementationRepository::EnvironmentVariable_out::operator ImplementationRepository::EnvironmentVariable *&() // cast
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::EnvironmentVariable *&
+ImplementationRepository::EnvironmentVariable_out::ptr (void) // ptr
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::EnvironmentVariable *
+ImplementationRepository::EnvironmentVariable_out::operator-> (void)
+{
+ return this->ptr_;
+}
+
+
+#if !defined (TAO_USE_SEQUENCE_TEMPLATES)
+
+#if !defined (__TAO_UNBOUNDED_SEQUENCE_IMPLEMENTATIONREPOSITORY_ENVIRONMENTLIST_CI_)
+#define __TAO_UNBOUNDED_SEQUENCE_IMPLEMENTATIONREPOSITORY_ENVIRONMENTLIST_CI_
+
+ // = Static operations.
+ ACE_INLINE ImplementationRepository::EnvironmentVariable *
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList::allocbuf (CORBA::ULong size)
+ // Allocate storage for the sequence.
+ {
+ ImplementationRepository::EnvironmentVariable *retval = 0;
+ ACE_NEW_RETURN (retval, ImplementationRepository::EnvironmentVariable[size], 0);
+ return retval;
+ }
+
+ ACE_INLINE void ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList::freebuf (ImplementationRepository::EnvironmentVariable *buffer)
+ // Free the sequence.
+ {
+ delete [] buffer;
+ }
+
+ ACE_INLINE
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList::_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList (void) // Default constructor.
+ {
+ }
+
+ ACE_INLINE
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList::_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList (CORBA::ULong maximum) // Constructor using a maximum length value.
+ : TAO_Unbounded_Base_Sequence (maximum, ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList::allocbuf (maximum))
+ {
+ }
+
+ ACE_INLINE
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList::_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList (CORBA::ULong maximum,
+ CORBA::ULong length,
+ ImplementationRepository::EnvironmentVariable *data,
+ CORBA::Boolean release)
+ : TAO_Unbounded_Base_Sequence (maximum, length, data, release)
+ {
+ }
+
+ ACE_INLINE
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList::_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList (const ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList &rhs)
+ // Copy constructor.
+ : TAO_Unbounded_Base_Sequence (rhs)
+ {
+ if (rhs.buffer_ != 0)
+ {
+ ImplementationRepository::EnvironmentVariable *tmp1 = ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList::allocbuf (this->maximum_);
+ ImplementationRepository::EnvironmentVariable * const tmp2 = ACE_reinterpret_cast (ImplementationRepository::EnvironmentVariable * ACE_CAST_CONST, rhs.buffer_);
+
+ for (CORBA::ULong i = 0; i < this->length_; ++i)
+ tmp1[i] = tmp2[i];
+
+ this->buffer_ = tmp1;
+ }
+ else
+ {
+ this->buffer_ = 0;
+ }
+ }
+
+ ACE_INLINE ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList &
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList::operator= (const ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList &rhs)
+ // Assignment operator.
+ {
+ if (this == &rhs)
+ return *this;
+
+ if (this->release_)
+ {
+ if (this->maximum_ < rhs.maximum_)
+ {
+ // free the old buffer
+ ImplementationRepository::EnvironmentVariable *tmp = ACE_reinterpret_cast (ImplementationRepository::EnvironmentVariable *, this->buffer_);
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList::freebuf (tmp);
+ this->buffer_ = ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList::allocbuf (rhs.maximum_);
+ }
+ }
+ else
+ this->buffer_ = ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList::allocbuf (rhs.maximum_);
+
+ TAO_Unbounded_Base_Sequence::operator= (rhs);
+
+ ImplementationRepository::EnvironmentVariable *tmp1 = ACE_reinterpret_cast (ImplementationRepository::EnvironmentVariable *, this->buffer_);
+ ImplementationRepository::EnvironmentVariable * const tmp2 = ACE_reinterpret_cast (ImplementationRepository::EnvironmentVariable * ACE_CAST_CONST, rhs.buffer_);
+
+ for (CORBA::ULong i = 0; i < this->length_; ++i)
+ tmp1[i] = tmp2[i];
+
+ return *this;
+ }
+
+ // = Accessors.
+ ACE_INLINE ImplementationRepository::EnvironmentVariable &
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList::operator[] (CORBA::ULong i)
+ // operator []
+ {
+ ACE_ASSERT (i < this->maximum_);
+ ImplementationRepository::EnvironmentVariable* tmp = ACE_reinterpret_cast(ImplementationRepository::EnvironmentVariable*,this->buffer_);
+ return tmp[i];
+ }
+
+ ACE_INLINE const ImplementationRepository::EnvironmentVariable &
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList::operator[] (CORBA::ULong i) const
+ // operator []
+ {
+ ACE_ASSERT (i < this->maximum_);
+ ImplementationRepository::EnvironmentVariable * const tmp = ACE_reinterpret_cast (ImplementationRepository::EnvironmentVariable* ACE_CAST_CONST, this->buffer_);
+ return tmp[i];
+ }
+
+ // Implement the TAO_Base_Sequence methods (see Sequence.h)
+
+ ACE_INLINE ImplementationRepository::EnvironmentVariable *
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList::get_buffer (CORBA::Boolean orphan)
+ {
+ ImplementationRepository::EnvironmentVariable *result = 0;
+ if (orphan == 0)
+ {
+ // We retain ownership.
+ if (this->buffer_ == 0)
+ {
+ result = ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList::allocbuf (this->length_);
+ this->buffer_ = result;
+ }
+ else
+ {
+ result = ACE_reinterpret_cast (ImplementationRepository::EnvironmentVariable*, this->buffer_);
+ }
+ }
+ else // if (orphan == 1)
+ {
+ if (this->release_ != 0)
+ {
+ // We set the state back to default and relinquish
+ // ownership.
+ result = ACE_reinterpret_cast(ImplementationRepository::EnvironmentVariable*,this->buffer_);
+ this->maximum_ = 0;
+ this->length_ = 0;
+ this->buffer_ = 0;
+ this->release_ = 0;
+ }
+ }
+ return result;
+ }
+
+ ACE_INLINE const ImplementationRepository::EnvironmentVariable *
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList::get_buffer (void) const
+ {
+ return ACE_reinterpret_cast(const ImplementationRepository::EnvironmentVariable * ACE_CAST_CONST, this->buffer_);
+ }
+
+ ACE_INLINE void
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList::replace (CORBA::ULong max,
+ CORBA::ULong length,
+ ImplementationRepository::EnvironmentVariable *data,
+ CORBA::Boolean release)
+ {
+ this->maximum_ = max;
+ this->length_ = length;
+ if (this->buffer_ && this->release_ == 1)
+ {
+ ImplementationRepository::EnvironmentVariable *tmp = ACE_reinterpret_cast(ImplementationRepository::EnvironmentVariable*,this->buffer_);
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_EnvironmentList::freebuf (tmp);
+ }
+ this->buffer_ = data;
+ this->release_ = release;
+ }
+
+#endif /* end #if !defined */
+
+
+#endif /* !TAO_USE_SEQUENCE_TEMPLATES */
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_ENVIRONMENTLIST_CI_)
+#define _IMPLEMENTATIONREPOSITORY_ENVIRONMENTLIST_CI_
+
+// *************************************************************
+// Inline operations for class ImplementationRepository::EnvironmentList_var
+// *************************************************************
+
+ACE_INLINE
+ImplementationRepository::EnvironmentList_var::EnvironmentList_var (void) // default constructor
+ : ptr_ (0)
+{}
+
+ACE_INLINE
+ImplementationRepository::EnvironmentList_var::EnvironmentList_var (ImplementationRepository::EnvironmentList *p)
+ : ptr_ (p)
+{}
+
+ACE_INLINE
+ImplementationRepository::EnvironmentList_var::EnvironmentList_var (const ImplementationRepository::EnvironmentList_var &p) // copy constructor
+{
+ if (p.ptr_)
+ ACE_NEW (this->ptr_, ImplementationRepository::EnvironmentList (*p.ptr_));
+ else
+ this->ptr_ = 0;
+}
+
+ACE_INLINE
+ImplementationRepository::EnvironmentList_var::~EnvironmentList_var (void) // destructor
+{
+ delete this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::EnvironmentList_var &
+ImplementationRepository::EnvironmentList_var::operator= (ImplementationRepository::EnvironmentList *p)
+{
+ delete this->ptr_;
+ this->ptr_ = p;
+ return *this;
+}
+
+ACE_INLINE ImplementationRepository::EnvironmentList_var &
+ImplementationRepository::EnvironmentList_var::operator= (const ImplementationRepository::EnvironmentList_var &p) // deep copy
+{
+ if (this != &p)
+ {
+ delete this->ptr_;
+ ACE_NEW_RETURN (this->ptr_, ImplementationRepository::EnvironmentList (*p.ptr_), *this);
+ }
+ return *this;
+}
+
+ACE_INLINE const ImplementationRepository::EnvironmentList *
+ImplementationRepository::EnvironmentList_var::operator-> (void) const
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::EnvironmentList *
+ImplementationRepository::EnvironmentList_var::operator-> (void)
+{
+ return this->ptr_;
+}
+
+ACE_INLINE
+ImplementationRepository::EnvironmentList_var::operator const ImplementationRepository::EnvironmentList &() const // cast
+{
+ return *this->ptr_;
+}
+
+ACE_INLINE
+ImplementationRepository::EnvironmentList_var::operator ImplementationRepository::EnvironmentList &() // cast
+{
+ return *this->ptr_;
+}
+
+ACE_INLINE
+ImplementationRepository::EnvironmentList_var::operator ImplementationRepository::EnvironmentList &() const// cast
+{
+ return *this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::EnvironmentVariable &
+ImplementationRepository::EnvironmentList_var::operator[] (CORBA::ULong index)
+{
+ return this->ptr_->operator[] (index);
+}
+
+ACE_INLINE const ImplementationRepository::EnvironmentList &
+ImplementationRepository::EnvironmentList_var::in (void) const
+{
+ return *this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::EnvironmentList &
+ImplementationRepository::EnvironmentList_var::inout (void)
+{
+ return *this->ptr_;
+}
+
+// mapping for variable size
+ACE_INLINE ImplementationRepository::EnvironmentList *&
+ImplementationRepository::EnvironmentList_var::out (void)
+{
+ delete this->ptr_;
+ this->ptr_ = 0;
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::EnvironmentList *
+ImplementationRepository::EnvironmentList_var::_retn (void)
+{
+ ImplementationRepository::EnvironmentList *tmp = this->ptr_;
+ this->ptr_ = 0;
+ return tmp;
+}
+
+ACE_INLINE ImplementationRepository::EnvironmentList *
+ImplementationRepository::EnvironmentList_var::ptr (void) const
+{
+ return this->ptr_;
+}
+
+// *************************************************************
+// Inline operations for class ImplementationRepository::EnvironmentList_out
+// *************************************************************
+
+ACE_INLINE
+ImplementationRepository::EnvironmentList_out::EnvironmentList_out (ImplementationRepository::EnvironmentList *&p)
+ : ptr_ (p)
+{
+ this->ptr_ = 0;
+}
+
+ACE_INLINE
+ImplementationRepository::EnvironmentList_out::EnvironmentList_out (ImplementationRepository::EnvironmentList_var &p) // constructor from _var
+ : ptr_ (p.out ())
+{
+ delete this->ptr_;
+ this->ptr_ = 0;
+}
+
+ACE_INLINE
+ImplementationRepository::EnvironmentList_out::EnvironmentList_out (const ImplementationRepository::EnvironmentList_out &p) // copy constructor
+ : ptr_ (ACE_const_cast (ImplementationRepository::EnvironmentList_out&,p).ptr_)
+{}
+
+ACE_INLINE ImplementationRepository::EnvironmentList_out &
+ImplementationRepository::EnvironmentList_out::operator= (const ImplementationRepository::EnvironmentList_out &p)
+{
+ this->ptr_ = ACE_const_cast (ImplementationRepository::EnvironmentList_out&,p).ptr_;
+ return *this;
+}
+
+ACE_INLINE ImplementationRepository::EnvironmentList_out &
+ImplementationRepository::EnvironmentList_out::operator= (ImplementationRepository::EnvironmentList *p)
+{
+ this->ptr_ = p;
+ return *this;
+}
+
+ACE_INLINE
+ImplementationRepository::EnvironmentList_out::operator ImplementationRepository::EnvironmentList *&() // cast
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::EnvironmentList *&
+ImplementationRepository::EnvironmentList_out::ptr (void) // ptr
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::EnvironmentList *
+ImplementationRepository::EnvironmentList_out::operator-> (void)
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::EnvironmentVariable &
+ImplementationRepository::EnvironmentList_out::operator[] (CORBA::ULong index)
+{
+ return this->ptr_->operator[] (index);
+}
+
+
+#endif /* end #if !defined */
+
+// *************************************************************
+// Inline operations for class ImplementationRepository::StartupOptions_var
+// *************************************************************
+
+ACE_INLINE
+ImplementationRepository::StartupOptions_var::StartupOptions_var (void) // default constructor
+ : ptr_ (0)
+{}
+
+ACE_INLINE
+ImplementationRepository::StartupOptions_var::StartupOptions_var (ImplementationRepository::StartupOptions *p)
+ : ptr_ (p)
+{}
+
+ACE_INLINE
+ImplementationRepository::StartupOptions_var::StartupOptions_var (const ImplementationRepository::StartupOptions_var &p) // copy constructor
+{
+ if (p.ptr_)
+ ACE_NEW (this->ptr_, ImplementationRepository::StartupOptions (*p.ptr_));
+ else
+ this->ptr_ = 0;
+}
+
+ACE_INLINE
+ImplementationRepository::StartupOptions_var::~StartupOptions_var (void) // destructor
+{
+ delete this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::StartupOptions_var &
+ImplementationRepository::StartupOptions_var::operator= (ImplementationRepository::StartupOptions *p)
+{
+ delete this->ptr_;
+ this->ptr_ = p;
+ return *this;
+}
+
+ACE_INLINE ImplementationRepository::StartupOptions_var &
+ImplementationRepository::StartupOptions_var::operator= (const ImplementationRepository::StartupOptions_var &p)
+{
+ if (this != &p)
+ {
+ delete this->ptr_;
+ ACE_NEW_RETURN (this->ptr_, ImplementationRepository::StartupOptions (*p.ptr_), *this);
+ }
+ return *this;
+}
+
+ACE_INLINE const ImplementationRepository::StartupOptions *
+ImplementationRepository::StartupOptions_var::operator-> (void) const
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::StartupOptions *
+ImplementationRepository::StartupOptions_var::operator-> (void)
+{
+ return this->ptr_;
+}
+
+ACE_INLINE
+ImplementationRepository::StartupOptions_var::operator const ImplementationRepository::StartupOptions &() const // cast
+{
+ return *this->ptr_;
+}
+
+ACE_INLINE
+ImplementationRepository::StartupOptions_var::operator ImplementationRepository::StartupOptions &() // cast
+{
+ return *this->ptr_;
+}
+
+ACE_INLINE
+ImplementationRepository::StartupOptions_var::operator ImplementationRepository::StartupOptions &() const// cast
+{
+ return *this->ptr_;
+}
+
+ACE_INLINE const ImplementationRepository::StartupOptions &
+ImplementationRepository::StartupOptions_var::in (void) const
+{
+ return *this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::StartupOptions &
+ImplementationRepository::StartupOptions_var::inout (void)
+{
+ return *this->ptr_;
+}
+
+// mapping for variable size
+ACE_INLINE ImplementationRepository::StartupOptions *&
+ImplementationRepository::StartupOptions_var::out (void)
+{
+ delete this->ptr_;
+ this->ptr_ = 0;
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::StartupOptions *
+ImplementationRepository::StartupOptions_var::_retn (void)
+{
+ ImplementationRepository::StartupOptions *tmp = this->ptr_;
+ this->ptr_ = 0;
+ return tmp;
+}
+
+ACE_INLINE ImplementationRepository::StartupOptions *
+ImplementationRepository::StartupOptions_var::ptr (void) const
+{
+ return this->ptr_;
+}
+
+// *************************************************************
+// Inline operations for class ImplementationRepository::StartupOptions_out
+// *************************************************************
+
+ACE_INLINE
+ImplementationRepository::StartupOptions_out::StartupOptions_out (ImplementationRepository::StartupOptions *&p)
+ : ptr_ (p)
+{
+ this->ptr_ = 0;
+}
+
+ACE_INLINE
+ImplementationRepository::StartupOptions_out::StartupOptions_out (ImplementationRepository::StartupOptions_var &p) // constructor from _var
+ : ptr_ (p.out ())
+{
+ delete this->ptr_;
+ this->ptr_ = 0;
+}
+
+ACE_INLINE
+ImplementationRepository::StartupOptions_out::StartupOptions_out (const ImplementationRepository::StartupOptions_out &p) // copy constructor
+ : ptr_ (ACE_const_cast (ImplementationRepository::StartupOptions_out&,p).ptr_)
+{}
+
+ACE_INLINE ImplementationRepository::StartupOptions_out &
+ImplementationRepository::StartupOptions_out::operator= (const ImplementationRepository::StartupOptions_out &p)
+{
+ this->ptr_ = ACE_const_cast (ImplementationRepository::StartupOptions_out&,p).ptr_;
+ return *this;
+}
+
+ACE_INLINE ImplementationRepository::StartupOptions_out &
+ImplementationRepository::StartupOptions_out::operator= (ImplementationRepository::StartupOptions *p)
+{
+ this->ptr_ = p;
+ return *this;
+}
+
+ACE_INLINE
+ImplementationRepository::StartupOptions_out::operator ImplementationRepository::StartupOptions *&() // cast
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::StartupOptions *&
+ImplementationRepository::StartupOptions_out::ptr (void) // ptr
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::StartupOptions *
+ImplementationRepository::StartupOptions_out::operator-> (void)
+{
+ return this->ptr_;
+}
+
+// *************************************************************
+// Inline operations for class ImplementationRepository::ServerInformation_var
+// *************************************************************
+
+ACE_INLINE
+ImplementationRepository::ServerInformation_var::ServerInformation_var (void) // default constructor
+ : ptr_ (0)
+{}
+
+ACE_INLINE
+ImplementationRepository::ServerInformation_var::ServerInformation_var (ImplementationRepository::ServerInformation *p)
+ : ptr_ (p)
+{}
+
+ACE_INLINE
+ImplementationRepository::ServerInformation_var::ServerInformation_var (const ImplementationRepository::ServerInformation_var &p) // copy constructor
+{
+ if (p.ptr_)
+ ACE_NEW (this->ptr_, ImplementationRepository::ServerInformation (*p.ptr_));
+ else
+ this->ptr_ = 0;
+}
+
+ACE_INLINE
+ImplementationRepository::ServerInformation_var::~ServerInformation_var (void) // destructor
+{
+ delete this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::ServerInformation_var &
+ImplementationRepository::ServerInformation_var::operator= (ImplementationRepository::ServerInformation *p)
+{
+ delete this->ptr_;
+ this->ptr_ = p;
+ return *this;
+}
+
+ACE_INLINE ImplementationRepository::ServerInformation_var &
+ImplementationRepository::ServerInformation_var::operator= (const ImplementationRepository::ServerInformation_var &p)
+{
+ if (this != &p)
+ {
+ delete this->ptr_;
+ ACE_NEW_RETURN (this->ptr_, ImplementationRepository::ServerInformation (*p.ptr_), *this);
+ }
+ return *this;
+}
+
+ACE_INLINE const ImplementationRepository::ServerInformation *
+ImplementationRepository::ServerInformation_var::operator-> (void) const
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::ServerInformation *
+ImplementationRepository::ServerInformation_var::operator-> (void)
+{
+ return this->ptr_;
+}
+
+ACE_INLINE
+ImplementationRepository::ServerInformation_var::operator const ImplementationRepository::ServerInformation &() const // cast
+{
+ return *this->ptr_;
+}
+
+ACE_INLINE
+ImplementationRepository::ServerInformation_var::operator ImplementationRepository::ServerInformation &() // cast
+{
+ return *this->ptr_;
+}
+
+ACE_INLINE
+ImplementationRepository::ServerInformation_var::operator ImplementationRepository::ServerInformation &() const// cast
+{
+ return *this->ptr_;
+}
+
+ACE_INLINE const ImplementationRepository::ServerInformation &
+ImplementationRepository::ServerInformation_var::in (void) const
+{
+ return *this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::ServerInformation &
+ImplementationRepository::ServerInformation_var::inout (void)
+{
+ return *this->ptr_;
+}
+
+// mapping for variable size
+ACE_INLINE ImplementationRepository::ServerInformation *&
+ImplementationRepository::ServerInformation_var::out (void)
+{
+ delete this->ptr_;
+ this->ptr_ = 0;
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::ServerInformation *
+ImplementationRepository::ServerInformation_var::_retn (void)
+{
+ ImplementationRepository::ServerInformation *tmp = this->ptr_;
+ this->ptr_ = 0;
+ return tmp;
+}
+
+ACE_INLINE ImplementationRepository::ServerInformation *
+ImplementationRepository::ServerInformation_var::ptr (void) const
+{
+ return this->ptr_;
+}
+
+// *************************************************************
+// Inline operations for class ImplementationRepository::ServerInformation_out
+// *************************************************************
+
+ACE_INLINE
+ImplementationRepository::ServerInformation_out::ServerInformation_out (ImplementationRepository::ServerInformation *&p)
+ : ptr_ (p)
+{
+ this->ptr_ = 0;
+}
+
+ACE_INLINE
+ImplementationRepository::ServerInformation_out::ServerInformation_out (ImplementationRepository::ServerInformation_var &p) // constructor from _var
+ : ptr_ (p.out ())
+{
+ delete this->ptr_;
+ this->ptr_ = 0;
+}
+
+ACE_INLINE
+ImplementationRepository::ServerInformation_out::ServerInformation_out (const ImplementationRepository::ServerInformation_out &p) // copy constructor
+ : ptr_ (ACE_const_cast (ImplementationRepository::ServerInformation_out&,p).ptr_)
+{}
+
+ACE_INLINE ImplementationRepository::ServerInformation_out &
+ImplementationRepository::ServerInformation_out::operator= (const ImplementationRepository::ServerInformation_out &p)
+{
+ this->ptr_ = ACE_const_cast (ImplementationRepository::ServerInformation_out&,p).ptr_;
+ return *this;
+}
+
+ACE_INLINE ImplementationRepository::ServerInformation_out &
+ImplementationRepository::ServerInformation_out::operator= (ImplementationRepository::ServerInformation *p)
+{
+ this->ptr_ = p;
+ return *this;
+}
+
+ACE_INLINE
+ImplementationRepository::ServerInformation_out::operator ImplementationRepository::ServerInformation *&() // cast
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::ServerInformation *&
+ImplementationRepository::ServerInformation_out::ptr (void) // ptr
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::ServerInformation *
+ImplementationRepository::ServerInformation_out::operator-> (void)
+{
+ return this->ptr_;
+}
+
+
+#if !defined (TAO_USE_SEQUENCE_TEMPLATES)
+
+#if !defined (__TAO_UNBOUNDED_SEQUENCE_IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONLIST_CI_)
+#define __TAO_UNBOUNDED_SEQUENCE_IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONLIST_CI_
+
+ // = Static operations.
+ ACE_INLINE ImplementationRepository::ServerInformation *
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList::allocbuf (CORBA::ULong size)
+ // Allocate storage for the sequence.
+ {
+ ImplementationRepository::ServerInformation *retval = 0;
+ ACE_NEW_RETURN (retval, ImplementationRepository::ServerInformation[size], 0);
+ return retval;
+ }
+
+ ACE_INLINE void ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList::freebuf (ImplementationRepository::ServerInformation *buffer)
+ // Free the sequence.
+ {
+ delete [] buffer;
+ }
+
+ ACE_INLINE
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList::_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList (void) // Default constructor.
+ {
+ }
+
+ ACE_INLINE
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList::_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList (CORBA::ULong maximum) // Constructor using a maximum length value.
+ : TAO_Unbounded_Base_Sequence (maximum, ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList::allocbuf (maximum))
+ {
+ }
+
+ ACE_INLINE
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList::_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList (CORBA::ULong maximum,
+ CORBA::ULong length,
+ ImplementationRepository::ServerInformation *data,
+ CORBA::Boolean release)
+ : TAO_Unbounded_Base_Sequence (maximum, length, data, release)
+ {
+ }
+
+ ACE_INLINE
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList::_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList (const ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList &rhs)
+ // Copy constructor.
+ : TAO_Unbounded_Base_Sequence (rhs)
+ {
+ if (rhs.buffer_ != 0)
+ {
+ ImplementationRepository::ServerInformation *tmp1 = ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList::allocbuf (this->maximum_);
+ ImplementationRepository::ServerInformation * const tmp2 = ACE_reinterpret_cast (ImplementationRepository::ServerInformation * ACE_CAST_CONST, rhs.buffer_);
+
+ for (CORBA::ULong i = 0; i < this->length_; ++i)
+ tmp1[i] = tmp2[i];
+
+ this->buffer_ = tmp1;
+ }
+ else
+ {
+ this->buffer_ = 0;
+ }
+ }
+
+ ACE_INLINE ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList &
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList::operator= (const ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList &rhs)
+ // Assignment operator.
+ {
+ if (this == &rhs)
+ return *this;
+
+ if (this->release_)
+ {
+ if (this->maximum_ < rhs.maximum_)
+ {
+ // free the old buffer
+ ImplementationRepository::ServerInformation *tmp = ACE_reinterpret_cast (ImplementationRepository::ServerInformation *, this->buffer_);
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList::freebuf (tmp);
+ this->buffer_ = ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList::allocbuf (rhs.maximum_);
+ }
+ }
+ else
+ this->buffer_ = ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList::allocbuf (rhs.maximum_);
+
+ TAO_Unbounded_Base_Sequence::operator= (rhs);
+
+ ImplementationRepository::ServerInformation *tmp1 = ACE_reinterpret_cast (ImplementationRepository::ServerInformation *, this->buffer_);
+ ImplementationRepository::ServerInformation * const tmp2 = ACE_reinterpret_cast (ImplementationRepository::ServerInformation * ACE_CAST_CONST, rhs.buffer_);
+
+ for (CORBA::ULong i = 0; i < this->length_; ++i)
+ tmp1[i] = tmp2[i];
+
+ return *this;
+ }
+
+ // = Accessors.
+ ACE_INLINE ImplementationRepository::ServerInformation &
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList::operator[] (CORBA::ULong i)
+ // operator []
+ {
+ ACE_ASSERT (i < this->maximum_);
+ ImplementationRepository::ServerInformation* tmp = ACE_reinterpret_cast(ImplementationRepository::ServerInformation*,this->buffer_);
+ return tmp[i];
+ }
+
+ ACE_INLINE const ImplementationRepository::ServerInformation &
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList::operator[] (CORBA::ULong i) const
+ // operator []
+ {
+ ACE_ASSERT (i < this->maximum_);
+ ImplementationRepository::ServerInformation * const tmp = ACE_reinterpret_cast (ImplementationRepository::ServerInformation* ACE_CAST_CONST, this->buffer_);
+ return tmp[i];
+ }
+
+ // Implement the TAO_Base_Sequence methods (see Sequence.h)
+
+ ACE_INLINE ImplementationRepository::ServerInformation *
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList::get_buffer (CORBA::Boolean orphan)
+ {
+ ImplementationRepository::ServerInformation *result = 0;
+ if (orphan == 0)
+ {
+ // We retain ownership.
+ if (this->buffer_ == 0)
+ {
+ result = ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList::allocbuf (this->length_);
+ this->buffer_ = result;
+ }
+ else
+ {
+ result = ACE_reinterpret_cast (ImplementationRepository::ServerInformation*, this->buffer_);
+ }
+ }
+ else // if (orphan == 1)
+ {
+ if (this->release_ != 0)
+ {
+ // We set the state back to default and relinquish
+ // ownership.
+ result = ACE_reinterpret_cast(ImplementationRepository::ServerInformation*,this->buffer_);
+ this->maximum_ = 0;
+ this->length_ = 0;
+ this->buffer_ = 0;
+ this->release_ = 0;
+ }
+ }
+ return result;
+ }
+
+ ACE_INLINE const ImplementationRepository::ServerInformation *
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList::get_buffer (void) const
+ {
+ return ACE_reinterpret_cast(const ImplementationRepository::ServerInformation * ACE_CAST_CONST, this->buffer_);
+ }
+
+ ACE_INLINE void
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList::replace (CORBA::ULong max,
+ CORBA::ULong length,
+ ImplementationRepository::ServerInformation *data,
+ CORBA::Boolean release)
+ {
+ this->maximum_ = max;
+ this->length_ = length;
+ if (this->buffer_ && this->release_ == 1)
+ {
+ ImplementationRepository::ServerInformation *tmp = ACE_reinterpret_cast(ImplementationRepository::ServerInformation*,this->buffer_);
+ ImplementationRepository::_TAO_Unbounded_Sequence_ImplementationRepository_ServerInformationList::freebuf (tmp);
+ }
+ this->buffer_ = data;
+ this->release_ = release;
+ }
+
+#endif /* end #if !defined */
+
+
+#endif /* !TAO_USE_SEQUENCE_TEMPLATES */
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONLIST_CI_)
+#define _IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONLIST_CI_
+
+// *************************************************************
+// Inline operations for class ImplementationRepository::ServerInformationList_var
+// *************************************************************
+
+ACE_INLINE
+ImplementationRepository::ServerInformationList_var::ServerInformationList_var (void) // default constructor
+ : ptr_ (0)
+{}
+
+ACE_INLINE
+ImplementationRepository::ServerInformationList_var::ServerInformationList_var (ImplementationRepository::ServerInformationList *p)
+ : ptr_ (p)
+{}
+
+ACE_INLINE
+ImplementationRepository::ServerInformationList_var::ServerInformationList_var (const ImplementationRepository::ServerInformationList_var &p) // copy constructor
+{
+ if (p.ptr_)
+ ACE_NEW (this->ptr_, ImplementationRepository::ServerInformationList (*p.ptr_));
+ else
+ this->ptr_ = 0;
+}
+
+ACE_INLINE
+ImplementationRepository::ServerInformationList_var::~ServerInformationList_var (void) // destructor
+{
+ delete this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::ServerInformationList_var &
+ImplementationRepository::ServerInformationList_var::operator= (ImplementationRepository::ServerInformationList *p)
+{
+ delete this->ptr_;
+ this->ptr_ = p;
+ return *this;
+}
+
+ACE_INLINE ImplementationRepository::ServerInformationList_var &
+ImplementationRepository::ServerInformationList_var::operator= (const ImplementationRepository::ServerInformationList_var &p) // deep copy
+{
+ if (this != &p)
+ {
+ delete this->ptr_;
+ ACE_NEW_RETURN (this->ptr_, ImplementationRepository::ServerInformationList (*p.ptr_), *this);
+ }
+ return *this;
+}
+
+ACE_INLINE const ImplementationRepository::ServerInformationList *
+ImplementationRepository::ServerInformationList_var::operator-> (void) const
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::ServerInformationList *
+ImplementationRepository::ServerInformationList_var::operator-> (void)
+{
+ return this->ptr_;
+}
+
+ACE_INLINE
+ImplementationRepository::ServerInformationList_var::operator const ImplementationRepository::ServerInformationList &() const // cast
+{
+ return *this->ptr_;
+}
+
+ACE_INLINE
+ImplementationRepository::ServerInformationList_var::operator ImplementationRepository::ServerInformationList &() // cast
+{
+ return *this->ptr_;
+}
+
+ACE_INLINE
+ImplementationRepository::ServerInformationList_var::operator ImplementationRepository::ServerInformationList &() const// cast
+{
+ return *this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::ServerInformation &
+ImplementationRepository::ServerInformationList_var::operator[] (CORBA::ULong index)
+{
+ return this->ptr_->operator[] (index);
+}
+
+ACE_INLINE const ImplementationRepository::ServerInformationList &
+ImplementationRepository::ServerInformationList_var::in (void) const
+{
+ return *this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::ServerInformationList &
+ImplementationRepository::ServerInformationList_var::inout (void)
+{
+ return *this->ptr_;
+}
+
+// mapping for variable size
+ACE_INLINE ImplementationRepository::ServerInformationList *&
+ImplementationRepository::ServerInformationList_var::out (void)
+{
+ delete this->ptr_;
+ this->ptr_ = 0;
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::ServerInformationList *
+ImplementationRepository::ServerInformationList_var::_retn (void)
+{
+ ImplementationRepository::ServerInformationList *tmp = this->ptr_;
+ this->ptr_ = 0;
+ return tmp;
+}
+
+ACE_INLINE ImplementationRepository::ServerInformationList *
+ImplementationRepository::ServerInformationList_var::ptr (void) const
+{
+ return this->ptr_;
+}
+
+// *************************************************************
+// Inline operations for class ImplementationRepository::ServerInformationList_out
+// *************************************************************
+
+ACE_INLINE
+ImplementationRepository::ServerInformationList_out::ServerInformationList_out (ImplementationRepository::ServerInformationList *&p)
+ : ptr_ (p)
+{
+ this->ptr_ = 0;
+}
+
+ACE_INLINE
+ImplementationRepository::ServerInformationList_out::ServerInformationList_out (ImplementationRepository::ServerInformationList_var &p) // constructor from _var
+ : ptr_ (p.out ())
+{
+ delete this->ptr_;
+ this->ptr_ = 0;
+}
+
+ACE_INLINE
+ImplementationRepository::ServerInformationList_out::ServerInformationList_out (const ImplementationRepository::ServerInformationList_out &p) // copy constructor
+ : ptr_ (ACE_const_cast (ImplementationRepository::ServerInformationList_out&,p).ptr_)
+{}
+
+ACE_INLINE ImplementationRepository::ServerInformationList_out &
+ImplementationRepository::ServerInformationList_out::operator= (const ImplementationRepository::ServerInformationList_out &p)
+{
+ this->ptr_ = ACE_const_cast (ImplementationRepository::ServerInformationList_out&,p).ptr_;
+ return *this;
+}
+
+ACE_INLINE ImplementationRepository::ServerInformationList_out &
+ImplementationRepository::ServerInformationList_out::operator= (ImplementationRepository::ServerInformationList *p)
+{
+ this->ptr_ = p;
+ return *this;
+}
+
+ACE_INLINE
+ImplementationRepository::ServerInformationList_out::operator ImplementationRepository::ServerInformationList *&() // cast
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::ServerInformationList *&
+ImplementationRepository::ServerInformationList_out::ptr (void) // ptr
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::ServerInformationList *
+ImplementationRepository::ServerInformationList_out::operator-> (void)
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::ServerInformation &
+ImplementationRepository::ServerInformationList_out::operator[] (CORBA::ULong index)
+{
+ return this->ptr_->operator[] (index);
+}
+
+
+#endif /* end #if !defined */
+
+ACE_INLINE
+ImplementationRepository::Administration::Administration (void) // default constructor
+{}
+
+ACE_INLINE
+ImplementationRepository::Administration::Administration (TAO_Stub *objref, TAO_ServantBase *_tao_servant, CORBA::Boolean _tao_collocated) // constructor
+ : CORBA_Object (objref, _tao_servant, _tao_collocated)
+{}
+
+ACE_INLINE
+ImplementationRepository::Administration::~Administration (void) // destructor
+{}
+
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_ADMINISTRATION___VAR_CI_)
+#define _IMPLEMENTATIONREPOSITORY_ADMINISTRATION___VAR_CI_
+
+// *************************************************************
+// Inline operations for class ImplementationRepository::Administration_var
+// *************************************************************
+
+ACE_INLINE
+ImplementationRepository::Administration_var::Administration_var (void) // default constructor
+ : ptr_ (ImplementationRepository::Administration::_nil ())
+{}
+
+ACE_INLINE
+ImplementationRepository::Administration_var::Administration_var (ImplementationRepository::Administration_ptr p)
+ : ptr_ (p)
+{}
+
+ACE_INLINE ImplementationRepository::Administration_ptr
+ImplementationRepository::Administration_var::ptr (void) const
+{
+ return this->ptr_;
+}
+
+ACE_INLINE
+ImplementationRepository::Administration_var::Administration_var (const ImplementationRepository::Administration_var &p) // copy constructor
+ : ptr_ (ImplementationRepository::Administration::_duplicate (p.ptr ()))
+{}
+
+ACE_INLINE
+ImplementationRepository::Administration_var::~Administration_var (void) // destructor
+{
+ CORBA::release (this->ptr_);
+}
+
+ACE_INLINE ImplementationRepository::Administration_var &
+ImplementationRepository::Administration_var::operator= (ImplementationRepository::Administration_ptr p)
+{
+ CORBA::release (this->ptr_);
+ this->ptr_ = p;
+ return *this;
+}
+
+ACE_INLINE ImplementationRepository::Administration_var &
+ImplementationRepository::Administration_var::operator= (const ImplementationRepository::Administration_var &p)
+{
+ if (this != &p)
+ {
+ CORBA::release (this->ptr_);
+ this->ptr_ = ImplementationRepository::Administration::_duplicate (p.ptr ());
+ }
+ return *this;
+}
+
+ACE_INLINE
+ImplementationRepository::Administration_var::operator const ImplementationRepository::Administration_ptr &() const // cast
+{
+ return this->ptr_;
+}
+
+ACE_INLINE
+ImplementationRepository::Administration_var::operator ImplementationRepository::Administration_ptr &() // cast
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::Administration_ptr
+ImplementationRepository::Administration_var::operator-> (void) const
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::Administration_ptr
+ImplementationRepository::Administration_var::in (void) const
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::Administration_ptr &
+ImplementationRepository::Administration_var::inout (void)
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::Administration_ptr &
+ImplementationRepository::Administration_var::out (void)
+{
+ CORBA::release (this->ptr_);
+ this->ptr_ = ImplementationRepository::Administration::_nil ();
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::Administration_ptr
+ImplementationRepository::Administration_var::_retn (void)
+{
+ // yield ownership of managed obj reference
+ ImplementationRepository::Administration_ptr val = this->ptr_;
+ this->ptr_ = ImplementationRepository::Administration::_nil ();
+ return val;
+}
+
+
+#endif /* end #if !defined */
+
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_ADMINISTRATION___OUT_CI_)
+#define _IMPLEMENTATIONREPOSITORY_ADMINISTRATION___OUT_CI_
+
+// *************************************************************
+// Inline operations for class ImplementationRepository::Administration_out
+// *************************************************************
+
+ACE_INLINE
+ImplementationRepository::Administration_out::Administration_out (ImplementationRepository::Administration_ptr &p)
+ : ptr_ (p)
+{
+ this->ptr_ = ImplementationRepository::Administration::_nil ();
+}
+
+ACE_INLINE
+ImplementationRepository::Administration_out::Administration_out (ImplementationRepository::Administration_var &p) // constructor from _var
+ : ptr_ (p.out ())
+{
+ CORBA::release (this->ptr_);
+ this->ptr_ = ImplementationRepository::Administration::_nil ();
+}
+
+ACE_INLINE
+ImplementationRepository::Administration_out::Administration_out (const ImplementationRepository::Administration_out &p) // copy constructor
+ : ptr_ (ACE_const_cast (ImplementationRepository::Administration_out&,p).ptr_)
+{}
+
+ACE_INLINE ImplementationRepository::Administration_out &
+ImplementationRepository::Administration_out::operator= (const ImplementationRepository::Administration_out &p)
+{
+ this->ptr_ = ACE_const_cast (ImplementationRepository::Administration_out&,p).ptr_;
+ return *this;
+}
+
+ACE_INLINE ImplementationRepository::Administration_out &
+ImplementationRepository::Administration_out::operator= (const ImplementationRepository::Administration_var &p)
+{
+ this->ptr_ = ImplementationRepository::Administration::_duplicate (p.ptr ());
+ return *this;
+}
+
+ACE_INLINE ImplementationRepository::Administration_out &
+ImplementationRepository::Administration_out::operator= (ImplementationRepository::Administration_ptr p)
+{
+ this->ptr_ = p;
+ return *this;
+}
+
+ACE_INLINE
+ImplementationRepository::Administration_out::operator ImplementationRepository::Administration_ptr &() // cast
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::Administration_ptr &
+ImplementationRepository::Administration_out::ptr (void) // ptr
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::Administration_ptr
+ImplementationRepository::Administration_out::operator-> (void)
+{
+ return this->ptr_;
+}
+
+
+#endif /* end #if !defined */
+
+// *************************************************************
+// Inline operations for exception ImplementationRepository::Administration::AlreadyRegistered
+// *************************************************************
+
+// *************************************************************
+// Inline operations for exception ImplementationRepository::Administration::CannotActivate
+// *************************************************************
+
+// *************************************************************
+// Inline operations for exception ImplementationRepository::Administration::NotFound
+// *************************************************************
+
+ACE_INLINE
+ImplementationRepository::ServerInformationIterator::ServerInformationIterator (void) // default constructor
+{}
+
+ACE_INLINE
+ImplementationRepository::ServerInformationIterator::ServerInformationIterator (TAO_Stub *objref, TAO_ServantBase *_tao_servant, CORBA::Boolean _tao_collocated) // constructor
+ : CORBA_Object (objref, _tao_servant, _tao_collocated)
+{}
+
+ACE_INLINE
+ImplementationRepository::ServerInformationIterator::~ServerInformationIterator (void) // destructor
+{}
+
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONITERATOR___VAR_CI_)
+#define _IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONITERATOR___VAR_CI_
+
+// *************************************************************
+// Inline operations for class ImplementationRepository::ServerInformationIterator_var
+// *************************************************************
+
+ACE_INLINE
+ImplementationRepository::ServerInformationIterator_var::ServerInformationIterator_var (void) // default constructor
+ : ptr_ (ImplementationRepository::ServerInformationIterator::_nil ())
+{}
+
+ACE_INLINE
+ImplementationRepository::ServerInformationIterator_var::ServerInformationIterator_var (ImplementationRepository::ServerInformationIterator_ptr p)
+ : ptr_ (p)
+{}
+
+ACE_INLINE ImplementationRepository::ServerInformationIterator_ptr
+ImplementationRepository::ServerInformationIterator_var::ptr (void) const
+{
+ return this->ptr_;
+}
+
+ACE_INLINE
+ImplementationRepository::ServerInformationIterator_var::ServerInformationIterator_var (const ImplementationRepository::ServerInformationIterator_var &p) // copy constructor
+ : ptr_ (ImplementationRepository::ServerInformationIterator::_duplicate (p.ptr ()))
+{}
+
+ACE_INLINE
+ImplementationRepository::ServerInformationIterator_var::~ServerInformationIterator_var (void) // destructor
+{
+ CORBA::release (this->ptr_);
+}
+
+ACE_INLINE ImplementationRepository::ServerInformationIterator_var &
+ImplementationRepository::ServerInformationIterator_var::operator= (ImplementationRepository::ServerInformationIterator_ptr p)
+{
+ CORBA::release (this->ptr_);
+ this->ptr_ = p;
+ return *this;
+}
+
+ACE_INLINE ImplementationRepository::ServerInformationIterator_var &
+ImplementationRepository::ServerInformationIterator_var::operator= (const ImplementationRepository::ServerInformationIterator_var &p)
+{
+ if (this != &p)
+ {
+ CORBA::release (this->ptr_);
+ this->ptr_ = ImplementationRepository::ServerInformationIterator::_duplicate (p.ptr ());
+ }
+ return *this;
+}
+
+ACE_INLINE
+ImplementationRepository::ServerInformationIterator_var::operator const ImplementationRepository::ServerInformationIterator_ptr &() const // cast
+{
+ return this->ptr_;
+}
+
+ACE_INLINE
+ImplementationRepository::ServerInformationIterator_var::operator ImplementationRepository::ServerInformationIterator_ptr &() // cast
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::ServerInformationIterator_ptr
+ImplementationRepository::ServerInformationIterator_var::operator-> (void) const
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::ServerInformationIterator_ptr
+ImplementationRepository::ServerInformationIterator_var::in (void) const
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::ServerInformationIterator_ptr &
+ImplementationRepository::ServerInformationIterator_var::inout (void)
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::ServerInformationIterator_ptr &
+ImplementationRepository::ServerInformationIterator_var::out (void)
+{
+ CORBA::release (this->ptr_);
+ this->ptr_ = ImplementationRepository::ServerInformationIterator::_nil ();
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::ServerInformationIterator_ptr
+ImplementationRepository::ServerInformationIterator_var::_retn (void)
+{
+ // yield ownership of managed obj reference
+ ImplementationRepository::ServerInformationIterator_ptr val = this->ptr_;
+ this->ptr_ = ImplementationRepository::ServerInformationIterator::_nil ();
+ return val;
+}
+
+
+#endif /* end #if !defined */
+
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONITERATOR___OUT_CI_)
+#define _IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONITERATOR___OUT_CI_
+
+// *************************************************************
+// Inline operations for class ImplementationRepository::ServerInformationIterator_out
+// *************************************************************
+
+ACE_INLINE
+ImplementationRepository::ServerInformationIterator_out::ServerInformationIterator_out (ImplementationRepository::ServerInformationIterator_ptr &p)
+ : ptr_ (p)
+{
+ this->ptr_ = ImplementationRepository::ServerInformationIterator::_nil ();
+}
+
+ACE_INLINE
+ImplementationRepository::ServerInformationIterator_out::ServerInformationIterator_out (ImplementationRepository::ServerInformationIterator_var &p) // constructor from _var
+ : ptr_ (p.out ())
+{
+ CORBA::release (this->ptr_);
+ this->ptr_ = ImplementationRepository::ServerInformationIterator::_nil ();
+}
+
+ACE_INLINE
+ImplementationRepository::ServerInformationIterator_out::ServerInformationIterator_out (const ImplementationRepository::ServerInformationIterator_out &p) // copy constructor
+ : ptr_ (ACE_const_cast (ImplementationRepository::ServerInformationIterator_out&,p).ptr_)
+{}
+
+ACE_INLINE ImplementationRepository::ServerInformationIterator_out &
+ImplementationRepository::ServerInformationIterator_out::operator= (const ImplementationRepository::ServerInformationIterator_out &p)
+{
+ this->ptr_ = ACE_const_cast (ImplementationRepository::ServerInformationIterator_out&,p).ptr_;
+ return *this;
+}
+
+ACE_INLINE ImplementationRepository::ServerInformationIterator_out &
+ImplementationRepository::ServerInformationIterator_out::operator= (const ImplementationRepository::ServerInformationIterator_var &p)
+{
+ this->ptr_ = ImplementationRepository::ServerInformationIterator::_duplicate (p.ptr ());
+ return *this;
+}
+
+ACE_INLINE ImplementationRepository::ServerInformationIterator_out &
+ImplementationRepository::ServerInformationIterator_out::operator= (ImplementationRepository::ServerInformationIterator_ptr p)
+{
+ this->ptr_ = p;
+ return *this;
+}
+
+ACE_INLINE
+ImplementationRepository::ServerInformationIterator_out::operator ImplementationRepository::ServerInformationIterator_ptr &() // cast
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::ServerInformationIterator_ptr &
+ImplementationRepository::ServerInformationIterator_out::ptr (void) // ptr
+{
+ return this->ptr_;
+}
+
+ACE_INLINE ImplementationRepository::ServerInformationIterator_ptr
+ImplementationRepository::ServerInformationIterator_out::operator-> (void)
+{
+ return this->ptr_;
+}
+
+
+#endif /* end #if !defined */
+
+ACE_INLINE CORBA::Boolean
+operator<< (
+ TAO_OutputCDR &,
+ const ImplementationRepository::ServerObject_ptr
+ );
+ACE_INLINE CORBA::Boolean
+operator>> (
+ TAO_InputCDR &,
+ ImplementationRepository::ServerObject_ptr &
+ );
+
+ACE_INLINE CORBA::Boolean
+operator<< (
+ TAO_OutputCDR &strm,
+ const ImplementationRepository::ServerObject_ptr _tao_objref
+ )
+{
+ CORBA::Object_ptr _tao_corba_obj = _tao_objref;
+ return (strm << _tao_corba_obj);
+}
+
+ACE_INLINE CORBA::Boolean
+operator>> (
+ TAO_InputCDR &strm,
+ ImplementationRepository::ServerObject_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 =
+ ImplementationRepository::ServerObject::_narrow (
+ obj.in (),
+ ACE_TRY_ENV
+ );
+ ACE_TRY_CHECK;
+ return 1;
+ }
+ ACE_CATCHANY
+ {
+ // do nothing
+ }
+ ACE_ENDTRY;
+ return 0;
+}
+
+ACE_INLINE CORBA::Boolean operator<< (TAO_OutputCDR &strm, const ImplementationRepository::EnvironmentVariable &_tao_aggregate)
+{
+ if (
+ (strm << _tao_aggregate.name.in ()) &&
+ (strm << _tao_aggregate.value.in ())
+ )
+ return 1;
+ else
+ return 0;
+
+}
+
+ACE_INLINE CORBA::Boolean operator>> (TAO_InputCDR &strm, ImplementationRepository::EnvironmentVariable &_tao_aggregate)
+{
+ if (
+ (strm >> _tao_aggregate.name.out ()) &&
+ (strm >> _tao_aggregate.value.out ())
+ )
+ return 1;
+ else
+ return 0;
+
+}
+
+
+#if !defined _TAO_CDR_OP_ImplementationRepository_EnvironmentList_I_
+#define _TAO_CDR_OP_ImplementationRepository_EnvironmentList_I_
+
+CORBA::Boolean TAO_Export operator<< (
+ TAO_OutputCDR &,
+ const ImplementationRepository::EnvironmentList &
+ );
+CORBA::Boolean TAO_Export operator>> (
+ TAO_InputCDR &,
+ ImplementationRepository::EnvironmentList &
+ );
+
+#endif /* _TAO_CDR_OP_ImplementationRepository_EnvironmentList_I_ */
+
+ACE_INLINE CORBA::Boolean operator<< (TAO_OutputCDR &strm, const ImplementationRepository::ActivationMode &_tao_enumval)
+{
+ return strm.write_ulong ((CORBA::ULong) _tao_enumval);
+}
+
+ACE_INLINE CORBA::Boolean operator>> (TAO_InputCDR &strm, ImplementationRepository::ActivationMode &_tao_enumval)
+{
+ CORBA::ULong _tao_temp;
+ if (strm.read_ulong (_tao_temp))
+ {
+ ACE_OS::memcpy (&_tao_enumval, &_tao_temp, sizeof (CORBA::ULong));
+ return 1;
+ }
+ else
+ return 0;
+}
+
+ACE_INLINE CORBA::Boolean operator<< (TAO_OutputCDR &strm, const ImplementationRepository::StartupOptions &_tao_aggregate)
+{
+ if (
+ (strm << _tao_aggregate.command_line.in ()) &&
+ (strm << _tao_aggregate.environment) &&
+ (strm << _tao_aggregate.working_directory.in ()) &&
+ (strm << _tao_aggregate.activation)
+ )
+ return 1;
+ else
+ return 0;
+
+}
+
+ACE_INLINE CORBA::Boolean operator>> (TAO_InputCDR &strm, ImplementationRepository::StartupOptions &_tao_aggregate)
+{
+ if (
+ (strm >> _tao_aggregate.command_line.out ()) &&
+ (strm >> _tao_aggregate.environment) &&
+ (strm >> _tao_aggregate.working_directory.out ()) &&
+ (strm >> _tao_aggregate.activation)
+ )
+ return 1;
+ else
+ return 0;
+
+}
+
+ACE_INLINE CORBA::Boolean operator<< (TAO_OutputCDR &strm, const ImplementationRepository::ServerInformation &_tao_aggregate)
+{
+ if (
+ (strm << _tao_aggregate.logical_server.in ()) &&
+ (strm << _tao_aggregate.server.in ()) &&
+ (strm << _tao_aggregate.startup) &&
+ (strm << _tao_aggregate.location.in ())
+ )
+ return 1;
+ else
+ return 0;
+
+}
+
+ACE_INLINE CORBA::Boolean operator>> (TAO_InputCDR &strm, ImplementationRepository::ServerInformation &_tao_aggregate)
+{
+ if (
+ (strm >> _tao_aggregate.logical_server.out ()) &&
+ (strm >> _tao_aggregate.server.out ()) &&
+ (strm >> _tao_aggregate.startup) &&
+ (strm >> _tao_aggregate.location.out ())
+ )
+ return 1;
+ else
+ return 0;
+
+}
+
+
+#if !defined _TAO_CDR_OP_ImplementationRepository_ServerInformationList_I_
+#define _TAO_CDR_OP_ImplementationRepository_ServerInformationList_I_
+
+CORBA::Boolean TAO_Export operator<< (
+ TAO_OutputCDR &,
+ const ImplementationRepository::ServerInformationList &
+ );
+CORBA::Boolean TAO_Export operator>> (
+ TAO_InputCDR &,
+ ImplementationRepository::ServerInformationList &
+ );
+
+#endif /* _TAO_CDR_OP_ImplementationRepository_ServerInformationList_I_ */
+
+ACE_INLINE CORBA::Boolean
+operator<< (
+ TAO_OutputCDR &,
+ const ImplementationRepository::ServerInformationIterator_ptr
+ );
+ACE_INLINE CORBA::Boolean
+operator>> (
+ TAO_InputCDR &,
+ ImplementationRepository::ServerInformationIterator_ptr &
+ );
+ACE_INLINE CORBA::Boolean
+operator<< (
+ TAO_OutputCDR &,
+ const ImplementationRepository::Administration_ptr
+ );
+ACE_INLINE CORBA::Boolean
+operator>> (
+ TAO_InputCDR &,
+ ImplementationRepository::Administration_ptr &
+ );
+
+ACE_INLINE CORBA::Boolean operator<< (TAO_OutputCDR &strm, const ImplementationRepository::Administration::AlreadyRegistered &_tao_aggregate)
+{
+ // first marshal the repository ID
+ if (strm << _tao_aggregate._id ())
+ return 1;
+ else
+ return 0;
+}
+
+ACE_INLINE CORBA::Boolean operator>> (TAO_InputCDR &strm, ImplementationRepository::Administration::AlreadyRegistered &_tao_aggregate)
+{
+ // retrieve RepoID and verify if we are of that type
+ char *_tao_repoID;
+ if ((strm >> _tao_repoID) &&
+ (_tao_aggregate._is_a (_tao_repoID)))
+ {
+ return 1;
+ }
+ else
+ return 0;
+}
+
+#if !defined (ACE_LACKS_IOSTREAM_TOTALLY)
+
+ACE_INLINE
+ostream & operator<< (ostream &os, const ImplementationRepository::Administration::AlreadyRegistered &_tao_aggregate)
+{
+ CORBA::TypeCode_ptr tc = _tao_aggregate._type ();
+ if (tc)
+ {
+ os << tc->name () << " (";
+ }
+ os << _tao_aggregate._id ();
+ if (tc)
+ {
+ os << ")";
+ }
+ return os;
+}
+
+#endif /* ACE_LACKS_IOSTREAM_TOTALLY */
+
+ACE_INLINE CORBA::Boolean operator<< (TAO_OutputCDR &strm, const ImplementationRepository::Administration::CannotActivate &_tao_aggregate)
+{
+ // first marshal the repository ID
+ if (strm << _tao_aggregate._id ())
+ {
+ // now marshal the members (if any)
+ if (
+ (strm << _tao_aggregate.reason.in ())
+ )
+ return 1;
+ else
+ return 0;
+ }
+ else
+ return 0;
+}
+
+ACE_INLINE CORBA::Boolean operator>> (TAO_InputCDR &strm, ImplementationRepository::Administration::CannotActivate &_tao_aggregate)
+{
+ // retrieve RepoID and verify if we are of that type
+ char *_tao_repoID;
+ if ((strm >> _tao_repoID) &&
+ (_tao_aggregate._is_a (_tao_repoID)))
+ {
+ // now marshal the members
+ if (
+ (strm >> _tao_aggregate.reason.out ())
+ )
+ return 1;
+ else
+ return 0;
+ }
+ else
+ return 0;
+}
+
+#if !defined (ACE_LACKS_IOSTREAM_TOTALLY)
+
+ACE_INLINE
+ostream & operator<< (ostream &os, const ImplementationRepository::Administration::CannotActivate &_tao_aggregate)
+{
+ CORBA::TypeCode_ptr tc = _tao_aggregate._type ();
+ if (tc)
+ {
+ os << tc->name () << " (";
+ }
+ os << _tao_aggregate._id ();
+ if (tc)
+ {
+ os << ")";
+ }
+ return os;
+}
+
+#endif /* ACE_LACKS_IOSTREAM_TOTALLY */
+
+ACE_INLINE CORBA::Boolean operator<< (TAO_OutputCDR &strm, const ImplementationRepository::Administration::NotFound &_tao_aggregate)
+{
+ // first marshal the repository ID
+ if (strm << _tao_aggregate._id ())
+ return 1;
+ else
+ return 0;
+}
+
+ACE_INLINE CORBA::Boolean operator>> (TAO_InputCDR &strm, ImplementationRepository::Administration::NotFound &_tao_aggregate)
+{
+ // retrieve RepoID and verify if we are of that type
+ char *_tao_repoID;
+ if ((strm >> _tao_repoID) &&
+ (_tao_aggregate._is_a (_tao_repoID)))
+ {
+ return 1;
+ }
+ else
+ return 0;
+}
+
+#if !defined (ACE_LACKS_IOSTREAM_TOTALLY)
+
+ACE_INLINE
+ostream & operator<< (ostream &os, const ImplementationRepository::Administration::NotFound &_tao_aggregate)
+{
+ CORBA::TypeCode_ptr tc = _tao_aggregate._type ();
+ if (tc)
+ {
+ os << tc->name () << " (";
+ }
+ os << _tao_aggregate._id ();
+ if (tc)
+ {
+ os << ")";
+ }
+ return os;
+}
+
+#endif /* ACE_LACKS_IOSTREAM_TOTALLY */
+
+ACE_INLINE CORBA::Boolean
+operator<< (
+ TAO_OutputCDR &strm,
+ const ImplementationRepository::Administration_ptr _tao_objref
+ )
+{
+ CORBA::Object_ptr _tao_corba_obj = _tao_objref;
+ return (strm << _tao_corba_obj);
+}
+
+ACE_INLINE CORBA::Boolean
+operator>> (
+ TAO_InputCDR &strm,
+ ImplementationRepository::Administration_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 =
+ ImplementationRepository::Administration::_narrow (
+ obj.in (),
+ ACE_TRY_ENV
+ );
+ ACE_TRY_CHECK;
+ return 1;
+ }
+ ACE_CATCHANY
+ {
+ // do nothing
+ }
+ ACE_ENDTRY;
+ return 0;
+}
+
+ACE_INLINE CORBA::Boolean
+operator<< (
+ TAO_OutputCDR &,
+ const ImplementationRepository::ServerInformationIterator_ptr
+ );
+ACE_INLINE CORBA::Boolean
+operator>> (
+ TAO_InputCDR &,
+ ImplementationRepository::ServerInformationIterator_ptr &
+ );
+
+ACE_INLINE CORBA::Boolean
+operator<< (
+ TAO_OutputCDR &strm,
+ const ImplementationRepository::ServerInformationIterator_ptr _tao_objref
+ )
+{
+ CORBA::Object_ptr _tao_corba_obj = _tao_objref;
+ return (strm << _tao_corba_obj);
+}
+
+ACE_INLINE CORBA::Boolean
+operator>> (
+ TAO_InputCDR &strm,
+ ImplementationRepository::ServerInformationIterator_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 =
+ ImplementationRepository::ServerInformationIterator::_narrow (
+ obj.in (),
+ ACE_TRY_ENV
+ );
+ ACE_TRY_CHECK;
+ return 1;
+ }
+ ACE_CATCHANY
+ {
+ // do nothing
+ }
+ ACE_ENDTRY;
+ return 0;
+}
+
diff --git a/TAO/tao/ImplRepoS.cpp b/TAO/tao/ImplRepoS.cpp
new file mode 100644
index 00000000000..6aa24408240
--- /dev/null
+++ b/TAO/tao/ImplRepoS.cpp
@@ -0,0 +1,2586 @@
+/* -*- 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 "ImplRepoS.h"
+
+#if !defined (__ACE_INLINE__)
+#include "ImplRepoS.i"
+#endif /* !defined INLINE */
+
+class TAO_ImplementationRepository_ServerObject_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 3:08:21 */
+/* 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_ImplementationRepository_ServerObject_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_ImplementationRepository_ServerObject_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 0,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 0,
+ 14, 14, 14, 14, 14, 0, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 0,
+ 14, 0, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 0, 0, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14,
+#else
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 0, 14, 0, 14, 14,
+ 14, 14, 14, 0, 14, 14, 14, 14, 14, 14,
+ 0, 14, 0, 14, 14, 0, 0, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_ImplementationRepository_ServerObject_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 4,
+ MIN_WORD_LENGTH = 4,
+ MAX_WORD_LENGTH = 13,
+ MIN_HASH_VALUE = 4,
+ MAX_HASH_VALUE = 13,
+ HASH_VALUE_RANGE = 10,
+ DUPLICATES = 0
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},
+ {"ping", &POA_ImplementationRepository::ServerObject::ping_skel},
+ {"_is_a", &POA_ImplementationRepository::ServerObject::_is_a_skel},
+ {"",0},{"",0},
+ {"shutdown", &POA_ImplementationRepository::ServerObject::shutdown_skel},
+ {"",0},{"",0},{"",0},{"",0},
+ {"_non_existent", &POA_ImplementationRepository::ServerObject::_non_existent_skel},
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ const char *s = wordlist[key].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[key];
+ }
+ }
+ return 0;
+}
+/* ending time is 3:08:21 */
+static TAO_ImplementationRepository_ServerObject_Perfect_Hash_OpTable tao_ImplementationRepository_ServerObject_optable;
+
+ImplementationRepository::ServerObject_ptr _TAO_collocation_POA_ImplementationRepository_ServerObject_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:
+ {
+ ImplementationRepository::ServerObject_ptr retval = 0;
+ ACE_NEW_RETURN (
+ retval,
+ POA_ImplementationRepository::_tao_thru_poa_collocated_ServerObject (stub),
+ 0
+ );
+ return retval;
+ }
+ case TAO_ORB_Core::DIRECT:
+ break;
+ default:
+ break;
+ }
+ return 0;
+}
+
+int _TAO_collocation_POA_ImplementationRepository_ServerObject_Stub_Factory_Initializer (long dummy)
+{
+ ACE_UNUSED_ARG (dummy);
+
+ _TAO_collocation_ImplementationRepository_ServerObject_Stub_Factory_function_pointer =
+ _TAO_collocation_POA_ImplementationRepository_ServerObject_Stub_Factory;
+
+ return 0;
+}
+
+static int _TAO_collocation_POA_ImplementationRepository_ServerObject_Stub_Factory_Initializer_Scarecrow =
+ _TAO_collocation_POA_ImplementationRepository_ServerObject_Stub_Factory_Initializer (ACE_reinterpret_cast (long, _TAO_collocation_POA_ImplementationRepository_ServerObject_Stub_Factory_Initializer));
+
+// skeleton constructor
+POA_ImplementationRepository::ServerObject::ServerObject (void)
+{
+ this->optable_ = &tao_ImplementationRepository_ServerObject_optable;
+}
+
+// copy ctor
+POA_ImplementationRepository::ServerObject::ServerObject (const ServerObject& rhs)
+ : TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_ImplementationRepository::ServerObject::~ServerObject (void)
+{
+}
+
+void POA_ImplementationRepository::ServerObject::ping_skel (
+ CORBA::ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void * /* context */,
+ CORBA::Environment &ACE_TRY_ENV
+)
+{
+ POA_ImplementationRepository::ServerObject *_tao_impl = (POA_ImplementationRepository::ServerObject *)_tao_object_reference;
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ TAO_ServerRequestInterceptor_Adapter
+ _tao_vfr (_tao_server_request.orb ()->_get_server_interceptor (ACE_TRY_ENV));
+ ACE_CHECK;
+ PortableInterceptor::Cookies _tao_cookies;
+ CORBA::NVList_var _tao_interceptor_args;
+ CORBA::Object_var _tao_objref;
+ if (_tao_vfr.valid ())
+ {
+ _tao_server_request.orb ()->create_list (0, _tao_interceptor_args.inout (), ACE_TRY_ENV);
+ ACE_CHECK;
+
+ _tao_objref = _tao_server_request.objref (ACE_TRY_ENV);
+ ACE_CHECK;
+ }
+
+ ACE_TRY
+ {
+ _tao_vfr.preinvoke (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "ping",
+ _tao_server_request.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ TAO_INTERCEPTOR_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->ping (
+ ACE_TRY_ENV
+ );
+
+ TAO_INTERCEPTOR_CHECK;
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ _tao_vfr.postinvoke (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "ping",
+ _tao_server_request.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ TAO_INTERCEPTOR_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ _tao_vfr.exception_occurred (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "ping",
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ ACE_RETHROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply (ACE_TRY_ENV);
+ ACE_CHECK;
+}
+
+void POA_ImplementationRepository::ServerObject::shutdown_skel (
+ CORBA::ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void * /* context */,
+ CORBA::Environment &ACE_TRY_ENV
+)
+{
+ POA_ImplementationRepository::ServerObject *_tao_impl = (POA_ImplementationRepository::ServerObject *)_tao_object_reference;
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ TAO_ServerRequestInterceptor_Adapter
+ _tao_vfr (_tao_server_request.orb ()->_get_server_interceptor (ACE_TRY_ENV));
+ ACE_CHECK;
+ PortableInterceptor::Cookies _tao_cookies;
+ CORBA::NVList_var _tao_interceptor_args;
+ CORBA::Object_var _tao_objref;
+ if (_tao_vfr.valid ())
+ {
+ _tao_server_request.orb ()->create_list (0, _tao_interceptor_args.inout (), ACE_TRY_ENV);
+ ACE_CHECK;
+
+ _tao_objref = _tao_server_request.objref (ACE_TRY_ENV);
+ ACE_CHECK;
+ }
+
+ ACE_TRY
+ {
+ _tao_vfr.preinvoke (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "shutdown",
+ _tao_server_request.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ TAO_INTERCEPTOR_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->shutdown (
+ ACE_TRY_ENV
+ );
+
+ TAO_INTERCEPTOR_CHECK;
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ _tao_vfr.postinvoke (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "shutdown",
+ _tao_server_request.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ TAO_INTERCEPTOR_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ _tao_vfr.exception_occurred (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "shutdown",
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ ACE_RETHROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply (ACE_TRY_ENV);
+ ACE_CHECK;
+}
+
+void POA_ImplementationRepository::ServerObject::_is_a_skel (
+ CORBA::ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* context */,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_ImplementationRepository::ServerObject *_tao_impl = (POA_ImplementationRepository::ServerObject *) _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_ImplementationRepository::ServerObject::_non_existent_skel (
+ CORBA::ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* context */,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+{
+ POA_ImplementationRepository::ServerObject *_tao_impl = (POA_ImplementationRepository::ServerObject *) _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_ImplementationRepository::ServerObject::_is_a (
+ const char* value,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+{
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:ImplementationRepository/ServerObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, CORBA::_tc_Object->id (ACE_TRY_ENV))))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_ImplementationRepository::ServerObject::_downcast (
+ const char* logical_type_id
+ )
+{
+if (ACE_OS::strcmp (logical_type_id, "IDL:ImplementationRepository/ServerObject:1.0") == 0)
+ return ACE_static_cast (POA_ImplementationRepository::ServerObject_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_ImplementationRepository::ServerObject::_dispatch (CORBA::ServerRequest &req, void *context, CORBA::Environment &ACE_TRY_ENV)
+{
+ TAO_Skeleton skel; // pointer to skeleton for operation
+ const char *opname = req.operation (); // retrieve operation name
+ // find the skeleton corresponding to this opname
+ if (this->_find (opname, skel, req.operation_length ()) == -1)
+ {
+ ACE_ERROR ((LM_ERROR, "Bad operation <%s>\n", opname));
+ ACE_THROW (CORBA_BAD_OPERATION ());
+ }
+ else
+ skel (req, this, context, ACE_TRY_ENV);
+}
+
+const char* POA_ImplementationRepository::ServerObject::_interface_repository_id (void) const
+{
+ return "IDL:ImplementationRepository/ServerObject:1.0";
+}
+
+ImplementationRepository::ServerObject*
+POA_ImplementationRepository::ServerObject::_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:
+ {
+ ImplementationRepository::ServerObject_ptr retval = 0;
+ ACE_NEW_RETURN (
+ retval,
+ POA_ImplementationRepository::_tao_thru_poa_collocated_ServerObject (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 ImplementationRepository::ServerObject::_unchecked_narrow (obj.in ());
+ }
+}
+
+POA_ImplementationRepository::_tao_thru_poa_collocated_ServerObject::_tao_thru_poa_collocated_ServerObject (
+ TAO_Stub *stub
+)
+ : ACE_NESTED_CLASS (ImplementationRepository,ServerObject) (),
+ CORBA_Object (stub, 0, 1)
+{
+}
+
+CORBA::Boolean POA_ImplementationRepository::_tao_thru_poa_collocated_ServerObject::_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 ()->object_adapter ()
+ );
+ servant_upcall.prepare_for_upcall (
+ this->_object_key (),
+ "_is_a",
+ ACE_TRY_ENV
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_ImplementationRepository::ServerObject_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:ImplementationRepository/ServerObject:1.0"
+ )
+ )->_is_a (logical_type_id, ACE_TRY_ENV);
+}
+
+
+CORBA::Boolean POA_ImplementationRepository::_tao_thru_poa_collocated_ServerObject::_non_existent(
+ CORBA_Environment &ACE_TRY_ENV
+ )
+
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ *this->_stubobj ()->servant_orb_var ()->orb_core ()->object_adapter ()
+ );
+ servant_upcall.prepare_for_upcall (
+ this->_object_key (),
+ "_non_existent",
+ ACE_TRY_ENV
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_ImplementationRepository::ServerObject_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:ImplementationRepository/ServerObject:1.0"
+ )
+ )->_non_existent (ACE_TRY_ENV);
+}
+
+
+void POA_ImplementationRepository::_tao_thru_poa_collocated_ServerObject::ping (
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ *this->_stubobj ()->servant_orb_var ()->orb_core ()->object_adapter ()
+ );
+ servant_upcall.prepare_for_upcall (
+ this->_object_key (),
+ "ping",
+ ACE_TRY_ENV
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_ImplementationRepository::ServerObject_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:ImplementationRepository/ServerObject:1.0"
+ )
+ )->ping (
+ ACE_TRY_ENV
+ );
+ return;
+}
+
+void POA_ImplementationRepository::_tao_thru_poa_collocated_ServerObject::shutdown (
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ *this->_stubobj ()->servant_orb_var ()->orb_core ()->object_adapter ()
+ );
+ servant_upcall.prepare_for_upcall (
+ this->_object_key (),
+ "shutdown",
+ ACE_TRY_ENV
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_ImplementationRepository::ServerObject_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:ImplementationRepository/ServerObject:1.0"
+ )
+ )->shutdown (
+ ACE_TRY_ENV
+ );
+ return;
+}
+
+
+
+class TAO_ImplementationRepository_Administration_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 3:08:22 */
+/* 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_ImplementationRepository_Administration_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_ImplementationRepository_Administration_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 15,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 10,
+ 34, 34, 5, 34, 0, 0, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 0, 34, 5,
+ 34, 34, 34, 0, 34, 34, 34, 34, 34, 34,
+ 34, 34, 5, 0, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34,
+#else
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 15, 34, 10, 34, 34,
+ 5, 34, 0, 0, 34, 34, 34, 34, 0, 34,
+ 5, 34, 34, 34, 0, 5, 0, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_ImplementationRepository_Administration_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 11,
+ MIN_WORD_LENGTH = 4,
+ MAX_WORD_LENGTH = 23,
+ MIN_HASH_VALUE = 4,
+ MAX_HASH_VALUE = 33,
+ HASH_VALUE_RANGE = 30,
+ DUPLICATES = 0
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},
+ {"list", &POA_ImplementationRepository::Administration::list_skel},
+ {"",0},{"",0},{"",0},{"",0},
+ {"find", &POA_ImplementationRepository::Administration::find_skel},
+ {"",0},{"",0},{"",0},
+ {"remove_server", &POA_ImplementationRepository::Administration::remove_server_skel},
+ {"",0},
+ {"register_server", &POA_ImplementationRepository::Administration::register_server_skel},
+ {"",0},
+ {"reregister_server", &POA_ImplementationRepository::Administration::reregister_server_skel},
+ {"",0},{"",0},
+ {"shutdown_server", &POA_ImplementationRepository::Administration::shutdown_server_skel},
+ {"",0},
+ {"server_is_running", &POA_ImplementationRepository::Administration::server_is_running_skel},
+ {"",0},{"",0},
+ {"activate_server", &POA_ImplementationRepository::Administration::activate_server_skel},
+ {"",0},{"",0},
+ {"_non_existent", &POA_ImplementationRepository::Administration::_non_existent_skel},
+ {"",0},
+ {"_is_a", &POA_ImplementationRepository::Administration::_is_a_skel},
+ {"",0},{"",0},
+ {"server_is_shutting_down", &POA_ImplementationRepository::Administration::server_is_shutting_down_skel},
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ const char *s = wordlist[key].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[key];
+ }
+ }
+ return 0;
+}
+/* ending time is 3:08:22 */
+static TAO_ImplementationRepository_Administration_Perfect_Hash_OpTable tao_ImplementationRepository_Administration_optable;
+
+ImplementationRepository::Administration_ptr _TAO_collocation_POA_ImplementationRepository_Administration_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:
+ {
+ ImplementationRepository::Administration_ptr retval = 0;
+ ACE_NEW_RETURN (
+ retval,
+ POA_ImplementationRepository::_tao_thru_poa_collocated_Administration (stub),
+ 0
+ );
+ return retval;
+ }
+ case TAO_ORB_Core::DIRECT:
+ break;
+ default:
+ break;
+ }
+ return 0;
+}
+
+int _TAO_collocation_POA_ImplementationRepository_Administration_Stub_Factory_Initializer (long dummy)
+{
+ ACE_UNUSED_ARG (dummy);
+
+ _TAO_collocation_ImplementationRepository_Administration_Stub_Factory_function_pointer =
+ _TAO_collocation_POA_ImplementationRepository_Administration_Stub_Factory;
+
+ return 0;
+}
+
+static int _TAO_collocation_POA_ImplementationRepository_Administration_Stub_Factory_Initializer_Scarecrow =
+ _TAO_collocation_POA_ImplementationRepository_Administration_Stub_Factory_Initializer (ACE_reinterpret_cast (long, _TAO_collocation_POA_ImplementationRepository_Administration_Stub_Factory_Initializer));
+
+// skeleton constructor
+POA_ImplementationRepository::Administration::Administration (void)
+{
+ this->optable_ = &tao_ImplementationRepository_Administration_optable;
+}
+
+// copy ctor
+POA_ImplementationRepository::Administration::Administration (const Administration& rhs)
+ : TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_ImplementationRepository::Administration::~Administration (void)
+{
+}
+
+void POA_ImplementationRepository::Administration::activate_server_skel (
+ CORBA::ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void * /* context */,
+ CORBA::Environment &ACE_TRY_ENV
+)
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_ImplementationRepository::Administration *_tao_impl = (POA_ImplementationRepository::Administration *)_tao_object_reference;
+
+ CORBA::String_var server;
+ if (!(
+ (_tao_in >> server.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL () );
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ TAO_ServerRequestInterceptor_Adapter
+ _tao_vfr (_tao_server_request.orb ()->_get_server_interceptor (ACE_TRY_ENV));
+ ACE_CHECK;
+ PortableInterceptor::Cookies _tao_cookies;
+ CORBA::NVList_var _tao_interceptor_args;
+ CORBA::Object_var _tao_objref;
+ if (_tao_vfr.valid ())
+ {
+ _tao_server_request.orb ()->create_list (0, _tao_interceptor_args.inout (), ACE_TRY_ENV);
+ ACE_CHECK;
+
+ _tao_objref = _tao_server_request.objref (ACE_TRY_ENV);
+ ACE_CHECK;
+ }
+
+ ACE_TRY
+ {
+ _tao_vfr.preinvoke (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "activate_server",
+ _tao_server_request.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ TAO_INTERCEPTOR_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->activate_server (
+ server.in (),
+ ACE_TRY_ENV
+ );
+
+ TAO_INTERCEPTOR_CHECK;
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ _tao_vfr.postinvoke (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "activate_server",
+ _tao_server_request.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ TAO_INTERCEPTOR_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ _tao_vfr.exception_occurred (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "activate_server",
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ ACE_RETHROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply (ACE_TRY_ENV);
+ ACE_CHECK;
+}
+
+void POA_ImplementationRepository::Administration::register_server_skel (
+ CORBA::ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void * /* context */,
+ CORBA::Environment &ACE_TRY_ENV
+)
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_ImplementationRepository::Administration *_tao_impl = (POA_ImplementationRepository::Administration *)_tao_object_reference;
+
+ CORBA::String_var server;
+ ImplementationRepository::StartupOptions options;
+ if (!(
+ (_tao_in >> server.out ()) &&
+ (_tao_in >> options)
+ ))
+ ACE_THROW (CORBA::MARSHAL () );
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ TAO_ServerRequestInterceptor_Adapter
+ _tao_vfr (_tao_server_request.orb ()->_get_server_interceptor (ACE_TRY_ENV));
+ ACE_CHECK;
+ PortableInterceptor::Cookies _tao_cookies;
+ CORBA::NVList_var _tao_interceptor_args;
+ CORBA::Object_var _tao_objref;
+ if (_tao_vfr.valid ())
+ {
+ _tao_server_request.orb ()->create_list (0, _tao_interceptor_args.inout (), ACE_TRY_ENV);
+ ACE_CHECK;
+
+ _tao_objref = _tao_server_request.objref (ACE_TRY_ENV);
+ ACE_CHECK;
+ }
+
+ ACE_TRY
+ {
+ _tao_vfr.preinvoke (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "register_server",
+ _tao_server_request.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ TAO_INTERCEPTOR_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->register_server (
+ server.in (),
+ options,
+ ACE_TRY_ENV
+ );
+
+ TAO_INTERCEPTOR_CHECK;
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ _tao_vfr.postinvoke (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "register_server",
+ _tao_server_request.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ TAO_INTERCEPTOR_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ _tao_vfr.exception_occurred (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "register_server",
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ ACE_RETHROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply (ACE_TRY_ENV);
+ ACE_CHECK;
+}
+
+void POA_ImplementationRepository::Administration::reregister_server_skel (
+ CORBA::ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void * /* context */,
+ CORBA::Environment &ACE_TRY_ENV
+)
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_ImplementationRepository::Administration *_tao_impl = (POA_ImplementationRepository::Administration *)_tao_object_reference;
+
+ CORBA::String_var server;
+ ImplementationRepository::StartupOptions options;
+ if (!(
+ (_tao_in >> server.out ()) &&
+ (_tao_in >> options)
+ ))
+ ACE_THROW (CORBA::MARSHAL () );
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ TAO_ServerRequestInterceptor_Adapter
+ _tao_vfr (_tao_server_request.orb ()->_get_server_interceptor (ACE_TRY_ENV));
+ ACE_CHECK;
+ PortableInterceptor::Cookies _tao_cookies;
+ CORBA::NVList_var _tao_interceptor_args;
+ CORBA::Object_var _tao_objref;
+ if (_tao_vfr.valid ())
+ {
+ _tao_server_request.orb ()->create_list (0, _tao_interceptor_args.inout (), ACE_TRY_ENV);
+ ACE_CHECK;
+
+ _tao_objref = _tao_server_request.objref (ACE_TRY_ENV);
+ ACE_CHECK;
+ }
+
+ ACE_TRY
+ {
+ _tao_vfr.preinvoke (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "reregister_server",
+ _tao_server_request.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ TAO_INTERCEPTOR_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->reregister_server (
+ server.in (),
+ options,
+ ACE_TRY_ENV
+ );
+
+ TAO_INTERCEPTOR_CHECK;
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ _tao_vfr.postinvoke (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "reregister_server",
+ _tao_server_request.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ TAO_INTERCEPTOR_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ _tao_vfr.exception_occurred (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "reregister_server",
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ ACE_RETHROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply (ACE_TRY_ENV);
+ ACE_CHECK;
+}
+
+void POA_ImplementationRepository::Administration::remove_server_skel (
+ CORBA::ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void * /* context */,
+ CORBA::Environment &ACE_TRY_ENV
+)
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_ImplementationRepository::Administration *_tao_impl = (POA_ImplementationRepository::Administration *)_tao_object_reference;
+
+ CORBA::String_var server;
+ if (!(
+ (_tao_in >> server.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL () );
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ TAO_ServerRequestInterceptor_Adapter
+ _tao_vfr (_tao_server_request.orb ()->_get_server_interceptor (ACE_TRY_ENV));
+ ACE_CHECK;
+ PortableInterceptor::Cookies _tao_cookies;
+ CORBA::NVList_var _tao_interceptor_args;
+ CORBA::Object_var _tao_objref;
+ if (_tao_vfr.valid ())
+ {
+ _tao_server_request.orb ()->create_list (0, _tao_interceptor_args.inout (), ACE_TRY_ENV);
+ ACE_CHECK;
+
+ _tao_objref = _tao_server_request.objref (ACE_TRY_ENV);
+ ACE_CHECK;
+ }
+
+ ACE_TRY
+ {
+ _tao_vfr.preinvoke (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "remove_server",
+ _tao_server_request.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ TAO_INTERCEPTOR_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->remove_server (
+ server.in (),
+ ACE_TRY_ENV
+ );
+
+ TAO_INTERCEPTOR_CHECK;
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ _tao_vfr.postinvoke (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "remove_server",
+ _tao_server_request.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ TAO_INTERCEPTOR_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ _tao_vfr.exception_occurred (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "remove_server",
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ ACE_RETHROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply (ACE_TRY_ENV);
+ ACE_CHECK;
+}
+
+void POA_ImplementationRepository::Administration::shutdown_server_skel (
+ CORBA::ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void * /* context */,
+ CORBA::Environment &ACE_TRY_ENV
+)
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_ImplementationRepository::Administration *_tao_impl = (POA_ImplementationRepository::Administration *)_tao_object_reference;
+
+ CORBA::String_var server;
+ if (!(
+ (_tao_in >> server.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL () );
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ TAO_ServerRequestInterceptor_Adapter
+ _tao_vfr (_tao_server_request.orb ()->_get_server_interceptor (ACE_TRY_ENV));
+ ACE_CHECK;
+ PortableInterceptor::Cookies _tao_cookies;
+ CORBA::NVList_var _tao_interceptor_args;
+ CORBA::Object_var _tao_objref;
+ if (_tao_vfr.valid ())
+ {
+ _tao_server_request.orb ()->create_list (0, _tao_interceptor_args.inout (), ACE_TRY_ENV);
+ ACE_CHECK;
+
+ _tao_objref = _tao_server_request.objref (ACE_TRY_ENV);
+ ACE_CHECK;
+ }
+
+ ACE_TRY
+ {
+ _tao_vfr.preinvoke (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "shutdown_server",
+ _tao_server_request.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ TAO_INTERCEPTOR_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->shutdown_server (
+ server.in (),
+ ACE_TRY_ENV
+ );
+
+ TAO_INTERCEPTOR_CHECK;
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ _tao_vfr.postinvoke (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "shutdown_server",
+ _tao_server_request.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ TAO_INTERCEPTOR_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ _tao_vfr.exception_occurred (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "shutdown_server",
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ ACE_RETHROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply (ACE_TRY_ENV);
+ ACE_CHECK;
+}
+
+void POA_ImplementationRepository::Administration::server_is_running_skel (
+ CORBA::ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void * /* context */,
+ CORBA::Environment &ACE_TRY_ENV
+)
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_ImplementationRepository::Administration *_tao_impl = (POA_ImplementationRepository::Administration *)_tao_object_reference;
+
+ CORBA::String_var _tao_retval;
+ CORBA::String_var server;
+ CORBA::String_var addr;
+ ImplementationRepository::ServerObject_var server_object;
+ if (!(
+ (_tao_in >> server.out ()) &&
+ (_tao_in >> addr.out ()) &&
+ (_tao_in >> server_object.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL () );
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ TAO_ServerRequestInterceptor_Adapter
+ _tao_vfr (_tao_server_request.orb ()->_get_server_interceptor (ACE_TRY_ENV));
+ ACE_CHECK;
+ PortableInterceptor::Cookies _tao_cookies;
+ CORBA::NVList_var _tao_interceptor_args;
+ CORBA::Object_var _tao_objref;
+ if (_tao_vfr.valid ())
+ {
+ _tao_server_request.orb ()->create_list (0, _tao_interceptor_args.inout (), ACE_TRY_ENV);
+ ACE_CHECK;
+
+ _tao_objref = _tao_server_request.objref (ACE_TRY_ENV);
+ ACE_CHECK;
+ }
+
+ ACE_TRY
+ {
+ _tao_vfr.preinvoke (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "server_is_running",
+ _tao_server_request.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ TAO_INTERCEPTOR_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_retval = _tao_impl->server_is_running (
+ server.in (),
+ addr.in (),
+ server_object.in (),
+ ACE_TRY_ENV
+ );
+
+ TAO_INTERCEPTOR_CHECK;
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ _tao_vfr.postinvoke (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "server_is_running",
+ _tao_server_request.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ TAO_INTERCEPTOR_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ _tao_vfr.exception_occurred (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "server_is_running",
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ ACE_RETHROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply (ACE_TRY_ENV);
+ ACE_CHECK;
+ ACE_CHECK;
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL () );
+
+}
+
+void POA_ImplementationRepository::Administration::server_is_shutting_down_skel (
+ CORBA::ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void * /* context */,
+ CORBA::Environment &ACE_TRY_ENV
+)
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_ImplementationRepository::Administration *_tao_impl = (POA_ImplementationRepository::Administration *)_tao_object_reference;
+
+ CORBA::String_var server;
+ if (!(
+ (_tao_in >> server.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL () );
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ TAO_ServerRequestInterceptor_Adapter
+ _tao_vfr (_tao_server_request.orb ()->_get_server_interceptor (ACE_TRY_ENV));
+ ACE_CHECK;
+ PortableInterceptor::Cookies _tao_cookies;
+ CORBA::NVList_var _tao_interceptor_args;
+ CORBA::Object_var _tao_objref;
+ if (_tao_vfr.valid ())
+ {
+ _tao_server_request.orb ()->create_list (0, _tao_interceptor_args.inout (), ACE_TRY_ENV);
+ ACE_CHECK;
+
+ _tao_objref = _tao_server_request.objref (ACE_TRY_ENV);
+ ACE_CHECK;
+ }
+
+ ACE_TRY
+ {
+ _tao_vfr.preinvoke (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "server_is_shutting_down",
+ _tao_server_request.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ TAO_INTERCEPTOR_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->server_is_shutting_down (
+ server.in (),
+ ACE_TRY_ENV
+ );
+
+ TAO_INTERCEPTOR_CHECK;
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ _tao_vfr.postinvoke (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "server_is_shutting_down",
+ _tao_server_request.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ TAO_INTERCEPTOR_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ _tao_vfr.exception_occurred (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "server_is_shutting_down",
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ ACE_RETHROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply (ACE_TRY_ENV);
+ ACE_CHECK;
+}
+
+void POA_ImplementationRepository::Administration::find_skel (
+ CORBA::ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void * /* context */,
+ CORBA::Environment &ACE_TRY_ENV
+)
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_ImplementationRepository::Administration *_tao_impl = (POA_ImplementationRepository::Administration *)_tao_object_reference;
+
+ CORBA::String_var server;
+ ImplementationRepository::ServerInformation_var info;
+ if (!(
+ (_tao_in >> server.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL () );
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ TAO_ServerRequestInterceptor_Adapter
+ _tao_vfr (_tao_server_request.orb ()->_get_server_interceptor (ACE_TRY_ENV));
+ ACE_CHECK;
+ PortableInterceptor::Cookies _tao_cookies;
+ CORBA::NVList_var _tao_interceptor_args;
+ CORBA::Object_var _tao_objref;
+ if (_tao_vfr.valid ())
+ {
+ _tao_server_request.orb ()->create_list (0, _tao_interceptor_args.inout (), ACE_TRY_ENV);
+ ACE_CHECK;
+
+ _tao_objref = _tao_server_request.objref (ACE_TRY_ENV);
+ ACE_CHECK;
+ }
+
+ ACE_TRY
+ {
+ _tao_vfr.preinvoke (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "find",
+ _tao_server_request.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ TAO_INTERCEPTOR_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->find (
+ server.in (),
+ info.out (),
+ ACE_TRY_ENV
+ );
+
+ TAO_INTERCEPTOR_CHECK;
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ _tao_vfr.postinvoke (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "find",
+ _tao_server_request.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ TAO_INTERCEPTOR_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ _tao_vfr.exception_occurred (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "find",
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ ACE_RETHROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply (ACE_TRY_ENV);
+ ACE_CHECK;
+ ACE_CHECK;
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(
+ (_tao_out << info.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL () );
+
+}
+
+void POA_ImplementationRepository::Administration::list_skel (
+ CORBA::ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void * /* context */,
+ CORBA::Environment &ACE_TRY_ENV
+)
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_ImplementationRepository::Administration *_tao_impl = (POA_ImplementationRepository::Administration *)_tao_object_reference;
+
+ CORBA::ULong how_many;
+ ImplementationRepository::ServerInformationList_var server_list;
+ ImplementationRepository::ServerInformationIterator_var server_iterator;
+ if (!(
+ (_tao_in >> how_many)
+ ))
+ ACE_THROW (CORBA::MARSHAL () );
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ TAO_ServerRequestInterceptor_Adapter
+ _tao_vfr (_tao_server_request.orb ()->_get_server_interceptor (ACE_TRY_ENV));
+ ACE_CHECK;
+ PortableInterceptor::Cookies _tao_cookies;
+ CORBA::NVList_var _tao_interceptor_args;
+ CORBA::Object_var _tao_objref;
+ if (_tao_vfr.valid ())
+ {
+ _tao_server_request.orb ()->create_list (0, _tao_interceptor_args.inout (), ACE_TRY_ENV);
+ ACE_CHECK;
+
+ _tao_objref = _tao_server_request.objref (ACE_TRY_ENV);
+ ACE_CHECK;
+ }
+
+ ACE_TRY
+ {
+ _tao_vfr.preinvoke (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "list",
+ _tao_server_request.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ TAO_INTERCEPTOR_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->list (
+ how_many,
+ server_list.out (),
+ server_iterator.out (),
+ ACE_TRY_ENV
+ );
+
+ TAO_INTERCEPTOR_CHECK;
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ _tao_vfr.postinvoke (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "list",
+ _tao_server_request.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ TAO_INTERCEPTOR_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ _tao_vfr.exception_occurred (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "list",
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ ACE_RETHROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply (ACE_TRY_ENV);
+ ACE_CHECK;
+ ACE_CHECK;
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(
+ (_tao_out << server_list.in ()) &&
+ (_tao_out << server_iterator.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL () );
+
+}
+
+void POA_ImplementationRepository::Administration::_is_a_skel (
+ CORBA::ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* context */,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_ImplementationRepository::Administration *_tao_impl = (POA_ImplementationRepository::Administration *) _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_ImplementationRepository::Administration::_non_existent_skel (
+ CORBA::ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* context */,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+{
+ POA_ImplementationRepository::Administration *_tao_impl = (POA_ImplementationRepository::Administration *) _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_ImplementationRepository::Administration::_is_a (
+ const char* value,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+{
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:ImplementationRepository/Administration:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, CORBA::_tc_Object->id (ACE_TRY_ENV))))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_ImplementationRepository::Administration::_downcast (
+ const char* logical_type_id
+ )
+{
+if (ACE_OS::strcmp (logical_type_id, "IDL:ImplementationRepository/Administration:1.0") == 0)
+ return ACE_static_cast (POA_ImplementationRepository::Administration_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_ImplementationRepository::Administration::_dispatch (CORBA::ServerRequest &req, void *context, CORBA::Environment &ACE_TRY_ENV)
+{
+ TAO_Skeleton skel; // pointer to skeleton for operation
+ const char *opname = req.operation (); // retrieve operation name
+ // find the skeleton corresponding to this opname
+ if (this->_find (opname, skel, req.operation_length ()) == -1)
+ {
+ ACE_ERROR ((LM_ERROR, "Bad operation <%s>\n", opname));
+ ACE_THROW (CORBA_BAD_OPERATION ());
+ }
+ else
+ skel (req, this, context, ACE_TRY_ENV);
+}
+
+const char* POA_ImplementationRepository::Administration::_interface_repository_id (void) const
+{
+ return "IDL:ImplementationRepository/Administration:1.0";
+}
+
+ImplementationRepository::Administration*
+POA_ImplementationRepository::Administration::_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:
+ {
+ ImplementationRepository::Administration_ptr retval = 0;
+ ACE_NEW_RETURN (
+ retval,
+ POA_ImplementationRepository::_tao_thru_poa_collocated_Administration (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 ImplementationRepository::Administration::_unchecked_narrow (obj.in ());
+ }
+}
+
+POA_ImplementationRepository::_tao_thru_poa_collocated_Administration::_tao_thru_poa_collocated_Administration (
+ TAO_Stub *stub
+)
+ : ACE_NESTED_CLASS (ImplementationRepository,Administration) (),
+ CORBA_Object (stub, 0, 1)
+{
+}
+
+CORBA::Boolean POA_ImplementationRepository::_tao_thru_poa_collocated_Administration::_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 ()->object_adapter ()
+ );
+ servant_upcall.prepare_for_upcall (
+ this->_object_key (),
+ "_is_a",
+ ACE_TRY_ENV
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_ImplementationRepository::Administration_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:ImplementationRepository/Administration:1.0"
+ )
+ )->_is_a (logical_type_id, ACE_TRY_ENV);
+}
+
+
+CORBA::Boolean POA_ImplementationRepository::_tao_thru_poa_collocated_Administration::_non_existent(
+ CORBA_Environment &ACE_TRY_ENV
+ )
+
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ *this->_stubobj ()->servant_orb_var ()->orb_core ()->object_adapter ()
+ );
+ servant_upcall.prepare_for_upcall (
+ this->_object_key (),
+ "_non_existent",
+ ACE_TRY_ENV
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_ImplementationRepository::Administration_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:ImplementationRepository/Administration:1.0"
+ )
+ )->_non_existent (ACE_TRY_ENV);
+}
+
+
+void POA_ImplementationRepository::_tao_thru_poa_collocated_Administration::activate_server (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound,
+ ImplementationRepository::Administration::CannotActivate
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ *this->_stubobj ()->servant_orb_var ()->orb_core ()->object_adapter ()
+ );
+ servant_upcall.prepare_for_upcall (
+ this->_object_key (),
+ "activate_server",
+ ACE_TRY_ENV
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_ImplementationRepository::Administration_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:ImplementationRepository/Administration:1.0"
+ )
+ )->activate_server (
+ server,
+ ACE_TRY_ENV
+ );
+ return;
+}
+
+void POA_ImplementationRepository::_tao_thru_poa_collocated_Administration::register_server (
+ const char * server,
+ const ImplementationRepository::StartupOptions & options,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::AlreadyRegistered
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ *this->_stubobj ()->servant_orb_var ()->orb_core ()->object_adapter ()
+ );
+ servant_upcall.prepare_for_upcall (
+ this->_object_key (),
+ "register_server",
+ ACE_TRY_ENV
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_ImplementationRepository::Administration_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:ImplementationRepository/Administration:1.0"
+ )
+ )->register_server (
+ server,
+ options,
+ ACE_TRY_ENV
+ );
+ return;
+}
+
+void POA_ImplementationRepository::_tao_thru_poa_collocated_Administration::reregister_server (
+ const char * server,
+ const ImplementationRepository::StartupOptions & options,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ *this->_stubobj ()->servant_orb_var ()->orb_core ()->object_adapter ()
+ );
+ servant_upcall.prepare_for_upcall (
+ this->_object_key (),
+ "reregister_server",
+ ACE_TRY_ENV
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_ImplementationRepository::Administration_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:ImplementationRepository/Administration:1.0"
+ )
+ )->reregister_server (
+ server,
+ options,
+ ACE_TRY_ENV
+ );
+ return;
+}
+
+void POA_ImplementationRepository::_tao_thru_poa_collocated_Administration::remove_server (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ *this->_stubobj ()->servant_orb_var ()->orb_core ()->object_adapter ()
+ );
+ servant_upcall.prepare_for_upcall (
+ this->_object_key (),
+ "remove_server",
+ ACE_TRY_ENV
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_ImplementationRepository::Administration_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:ImplementationRepository/Administration:1.0"
+ )
+ )->remove_server (
+ server,
+ ACE_TRY_ENV
+ );
+ return;
+}
+
+void POA_ImplementationRepository::_tao_thru_poa_collocated_Administration::shutdown_server (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ *this->_stubobj ()->servant_orb_var ()->orb_core ()->object_adapter ()
+ );
+ servant_upcall.prepare_for_upcall (
+ this->_object_key (),
+ "shutdown_server",
+ ACE_TRY_ENV
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_ImplementationRepository::Administration_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:ImplementationRepository/Administration:1.0"
+ )
+ )->shutdown_server (
+ server,
+ ACE_TRY_ENV
+ );
+ return;
+}
+
+char * POA_ImplementationRepository::_tao_thru_poa_collocated_Administration::server_is_running (
+ const char * server,
+ const char * addr,
+ ImplementationRepository::ServerObject_ptr server_object,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ))
+{
+ CORBA::String_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ *this->_stubobj ()->servant_orb_var ()->orb_core ()->object_adapter ()
+ );
+ servant_upcall.prepare_for_upcall (
+ this->_object_key (),
+ "server_is_running",
+ ACE_TRY_ENV
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_ImplementationRepository::Administration_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:ImplementationRepository/Administration:1.0"
+ )
+ )->server_is_running (
+ server,
+ addr,
+ server_object,
+ ACE_TRY_ENV
+ );
+
+}
+
+void POA_ImplementationRepository::_tao_thru_poa_collocated_Administration::server_is_shutting_down (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ *this->_stubobj ()->servant_orb_var ()->orb_core ()->object_adapter ()
+ );
+ servant_upcall.prepare_for_upcall (
+ this->_object_key (),
+ "server_is_shutting_down",
+ ACE_TRY_ENV
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_ImplementationRepository::Administration_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:ImplementationRepository/Administration:1.0"
+ )
+ )->server_is_shutting_down (
+ server,
+ ACE_TRY_ENV
+ );
+ return;
+}
+
+void POA_ImplementationRepository::_tao_thru_poa_collocated_Administration::find (
+ const char * server,
+ ImplementationRepository::ServerInformation_out info,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ *this->_stubobj ()->servant_orb_var ()->orb_core ()->object_adapter ()
+ );
+ servant_upcall.prepare_for_upcall (
+ this->_object_key (),
+ "find",
+ ACE_TRY_ENV
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_ImplementationRepository::Administration_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:ImplementationRepository/Administration:1.0"
+ )
+ )->find (
+ server,
+ info,
+ ACE_TRY_ENV
+ );
+ return;
+}
+
+void POA_ImplementationRepository::_tao_thru_poa_collocated_Administration::list (
+ CORBA::ULong how_many,
+ ImplementationRepository::ServerInformationList_out server_list,
+ ImplementationRepository::ServerInformationIterator_out server_iterator,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ *this->_stubobj ()->servant_orb_var ()->orb_core ()->object_adapter ()
+ );
+ servant_upcall.prepare_for_upcall (
+ this->_object_key (),
+ "list",
+ ACE_TRY_ENV
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_ImplementationRepository::Administration_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:ImplementationRepository/Administration:1.0"
+ )
+ )->list (
+ how_many,
+ server_list,
+ server_iterator,
+ ACE_TRY_ENV
+ );
+ return;
+}
+
+
+
+class TAO_ImplementationRepository_ServerInformationIterator_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 3:08:22 */
+/* 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_ImplementationRepository_ServerInformationIterator_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_ImplementationRepository_ServerInformationIterator_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 0,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 0,
+ 14, 14, 0, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 0,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 0, 14, 14, 14, 14, 0, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14,
+#else
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 14, 14, 14, 14, 14, 0, 14, 0, 14, 14,
+ 0, 14, 14, 14, 14, 14, 14, 14, 14, 14,
+ 0, 14, 14, 14, 14, 14, 0, 14, 14, 14,
+ 14, 0, 14, 14, 14, 14, 14, 14,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_ImplementationRepository_ServerInformationIterator_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 4,
+ MIN_WORD_LENGTH = 5,
+ MAX_WORD_LENGTH = 13,
+ MIN_HASH_VALUE = 5,
+ MAX_HASH_VALUE = 13,
+ HASH_VALUE_RANGE = 9,
+ DUPLICATES = 0
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},{"",0},
+ {"_is_a", &POA_ImplementationRepository::ServerInformationIterator::_is_a_skel},
+ {"next_n", &POA_ImplementationRepository::ServerInformationIterator::next_n_skel},
+ {"destroy", &POA_ImplementationRepository::ServerInformationIterator::destroy_skel},
+ {"",0},{"",0},{"",0},{"",0},{"",0},
+ {"_non_existent", &POA_ImplementationRepository::ServerInformationIterator::_non_existent_skel},
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ const char *s = wordlist[key].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[key];
+ }
+ }
+ return 0;
+}
+/* ending time is 3:08:22 */
+static TAO_ImplementationRepository_ServerInformationIterator_Perfect_Hash_OpTable tao_ImplementationRepository_ServerInformationIterator_optable;
+
+ImplementationRepository::ServerInformationIterator_ptr _TAO_collocation_POA_ImplementationRepository_ServerInformationIterator_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:
+ {
+ ImplementationRepository::ServerInformationIterator_ptr retval = 0;
+ ACE_NEW_RETURN (
+ retval,
+ POA_ImplementationRepository::_tao_thru_poa_collocated_ServerInformationIterator (stub),
+ 0
+ );
+ return retval;
+ }
+ case TAO_ORB_Core::DIRECT:
+ break;
+ default:
+ break;
+ }
+ return 0;
+}
+
+int _TAO_collocation_POA_ImplementationRepository_ServerInformationIterator_Stub_Factory_Initializer (long dummy)
+{
+ ACE_UNUSED_ARG (dummy);
+
+ _TAO_collocation_ImplementationRepository_ServerInformationIterator_Stub_Factory_function_pointer =
+ _TAO_collocation_POA_ImplementationRepository_ServerInformationIterator_Stub_Factory;
+
+ return 0;
+}
+
+static int _TAO_collocation_POA_ImplementationRepository_ServerInformationIterator_Stub_Factory_Initializer_Scarecrow =
+ _TAO_collocation_POA_ImplementationRepository_ServerInformationIterator_Stub_Factory_Initializer (ACE_reinterpret_cast (long, _TAO_collocation_POA_ImplementationRepository_ServerInformationIterator_Stub_Factory_Initializer));
+
+// skeleton constructor
+POA_ImplementationRepository::ServerInformationIterator::ServerInformationIterator (void)
+{
+ this->optable_ = &tao_ImplementationRepository_ServerInformationIterator_optable;
+}
+
+// copy ctor
+POA_ImplementationRepository::ServerInformationIterator::ServerInformationIterator (const ServerInformationIterator& rhs)
+ : TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_ImplementationRepository::ServerInformationIterator::~ServerInformationIterator (void)
+{
+}
+
+void POA_ImplementationRepository::ServerInformationIterator::next_n_skel (
+ CORBA::ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void * /* context */,
+ CORBA::Environment &ACE_TRY_ENV
+)
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_ImplementationRepository::ServerInformationIterator *_tao_impl = (POA_ImplementationRepository::ServerInformationIterator *)_tao_object_reference;
+
+ CORBA::Boolean _tao_retval = 0;
+ CORBA::ULong how_many;
+ ImplementationRepository::ServerInformationList_var server_list;
+ if (!(
+ (_tao_in >> how_many)
+ ))
+ ACE_THROW (CORBA::MARSHAL () );
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ TAO_ServerRequestInterceptor_Adapter
+ _tao_vfr (_tao_server_request.orb ()->_get_server_interceptor (ACE_TRY_ENV));
+ ACE_CHECK;
+ PortableInterceptor::Cookies _tao_cookies;
+ CORBA::NVList_var _tao_interceptor_args;
+ CORBA::Object_var _tao_objref;
+ if (_tao_vfr.valid ())
+ {
+ _tao_server_request.orb ()->create_list (0, _tao_interceptor_args.inout (), ACE_TRY_ENV);
+ ACE_CHECK;
+
+ _tao_objref = _tao_server_request.objref (ACE_TRY_ENV);
+ ACE_CHECK;
+ }
+
+ ACE_TRY
+ {
+ _tao_vfr.preinvoke (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "next_n",
+ _tao_server_request.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ TAO_INTERCEPTOR_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_retval = _tao_impl->next_n (
+ how_many,
+ server_list.out (),
+ ACE_TRY_ENV
+ );
+
+ TAO_INTERCEPTOR_CHECK;
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ _tao_vfr.postinvoke (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "next_n",
+ _tao_server_request.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ TAO_INTERCEPTOR_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ _tao_vfr.exception_occurred (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "next_n",
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ ACE_RETHROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply (ACE_TRY_ENV);
+ ACE_CHECK;
+ ACE_CHECK;
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(
+ (_tao_out << CORBA::Any::from_boolean (_tao_retval)) &&
+ (_tao_out << server_list.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL () );
+
+}
+
+void POA_ImplementationRepository::ServerInformationIterator::destroy_skel (
+ CORBA::ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void * /* context */,
+ CORBA::Environment &ACE_TRY_ENV
+)
+{
+ POA_ImplementationRepository::ServerInformationIterator *_tao_impl = (POA_ImplementationRepository::ServerInformationIterator *)_tao_object_reference;
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ TAO_ServerRequestInterceptor_Adapter
+ _tao_vfr (_tao_server_request.orb ()->_get_server_interceptor (ACE_TRY_ENV));
+ ACE_CHECK;
+ PortableInterceptor::Cookies _tao_cookies;
+ CORBA::NVList_var _tao_interceptor_args;
+ CORBA::Object_var _tao_objref;
+ if (_tao_vfr.valid ())
+ {
+ _tao_server_request.orb ()->create_list (0, _tao_interceptor_args.inout (), ACE_TRY_ENV);
+ ACE_CHECK;
+
+ _tao_objref = _tao_server_request.objref (ACE_TRY_ENV);
+ ACE_CHECK;
+ }
+
+ ACE_TRY
+ {
+ _tao_vfr.preinvoke (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "destroy",
+ _tao_server_request.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ TAO_INTERCEPTOR_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->destroy (
+ ACE_TRY_ENV
+ );
+
+ TAO_INTERCEPTOR_CHECK;
+
+#if defined (TAO_HAS_INTERCEPTORS)
+ _tao_vfr.postinvoke (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "destroy",
+ _tao_server_request.service_info (),
+ _tao_interceptor_args.inout (),
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ TAO_INTERCEPTOR_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ _tao_vfr.exception_occurred (
+ _tao_server_request.request_id (),
+ 1,
+ _tao_objref.in (),
+ "destroy",
+ _tao_cookies,
+ ACE_TRY_ENV
+ );
+ ACE_RETHROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply (ACE_TRY_ENV);
+ ACE_CHECK;
+}
+
+void POA_ImplementationRepository::ServerInformationIterator::_is_a_skel (
+ CORBA::ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* context */,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_ImplementationRepository::ServerInformationIterator *_tao_impl = (POA_ImplementationRepository::ServerInformationIterator *) _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_ImplementationRepository::ServerInformationIterator::_non_existent_skel (
+ CORBA::ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* context */,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+{
+ POA_ImplementationRepository::ServerInformationIterator *_tao_impl = (POA_ImplementationRepository::ServerInformationIterator *) _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_ImplementationRepository::ServerInformationIterator::_is_a (
+ const char* value,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+{
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:ImplementationRepository/ServerInformationIterator:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, CORBA::_tc_Object->id (ACE_TRY_ENV))))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_ImplementationRepository::ServerInformationIterator::_downcast (
+ const char* logical_type_id
+ )
+{
+if (ACE_OS::strcmp (logical_type_id, "IDL:ImplementationRepository/ServerInformationIterator:1.0") == 0)
+ return ACE_static_cast (POA_ImplementationRepository::ServerInformationIterator_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_ImplementationRepository::ServerInformationIterator::_dispatch (CORBA::ServerRequest &req, void *context, CORBA::Environment &ACE_TRY_ENV)
+{
+ TAO_Skeleton skel; // pointer to skeleton for operation
+ const char *opname = req.operation (); // retrieve operation name
+ // find the skeleton corresponding to this opname
+ if (this->_find (opname, skel, req.operation_length ()) == -1)
+ {
+ ACE_ERROR ((LM_ERROR, "Bad operation <%s>\n", opname));
+ ACE_THROW (CORBA_BAD_OPERATION ());
+ }
+ else
+ skel (req, this, context, ACE_TRY_ENV);
+}
+
+const char* POA_ImplementationRepository::ServerInformationIterator::_interface_repository_id (void) const
+{
+ return "IDL:ImplementationRepository/ServerInformationIterator:1.0";
+}
+
+ImplementationRepository::ServerInformationIterator*
+POA_ImplementationRepository::ServerInformationIterator::_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:
+ {
+ ImplementationRepository::ServerInformationIterator_ptr retval = 0;
+ ACE_NEW_RETURN (
+ retval,
+ POA_ImplementationRepository::_tao_thru_poa_collocated_ServerInformationIterator (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 ImplementationRepository::ServerInformationIterator::_unchecked_narrow (obj.in ());
+ }
+}
+
+POA_ImplementationRepository::_tao_thru_poa_collocated_ServerInformationIterator::_tao_thru_poa_collocated_ServerInformationIterator (
+ TAO_Stub *stub
+)
+ : ACE_NESTED_CLASS (ImplementationRepository,ServerInformationIterator) (),
+ CORBA_Object (stub, 0, 1)
+{
+}
+
+CORBA::Boolean POA_ImplementationRepository::_tao_thru_poa_collocated_ServerInformationIterator::_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 ()->object_adapter ()
+ );
+ servant_upcall.prepare_for_upcall (
+ this->_object_key (),
+ "_is_a",
+ ACE_TRY_ENV
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_ImplementationRepository::ServerInformationIterator_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:ImplementationRepository/ServerInformationIterator:1.0"
+ )
+ )->_is_a (logical_type_id, ACE_TRY_ENV);
+}
+
+
+CORBA::Boolean POA_ImplementationRepository::_tao_thru_poa_collocated_ServerInformationIterator::_non_existent(
+ CORBA_Environment &ACE_TRY_ENV
+ )
+
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ *this->_stubobj ()->servant_orb_var ()->orb_core ()->object_adapter ()
+ );
+ servant_upcall.prepare_for_upcall (
+ this->_object_key (),
+ "_non_existent",
+ ACE_TRY_ENV
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_ImplementationRepository::ServerInformationIterator_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:ImplementationRepository/ServerInformationIterator:1.0"
+ )
+ )->_non_existent (ACE_TRY_ENV);
+}
+
+
+CORBA::Boolean POA_ImplementationRepository::_tao_thru_poa_collocated_ServerInformationIterator::next_n (
+ CORBA::ULong how_many,
+ ImplementationRepository::ServerInformationList_out server_list,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::Boolean _tao_retval = 0;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ *this->_stubobj ()->servant_orb_var ()->orb_core ()->object_adapter ()
+ );
+ servant_upcall.prepare_for_upcall (
+ this->_object_key (),
+ "next_n",
+ ACE_TRY_ENV
+ );
+ ACE_CHECK_RETURN (_tao_retval);
+ return ACE_reinterpret_cast (
+ POA_ImplementationRepository::ServerInformationIterator_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:ImplementationRepository/ServerInformationIterator:1.0"
+ )
+ )->next_n (
+ how_many,
+ server_list,
+ ACE_TRY_ENV
+ );
+
+}
+
+void POA_ImplementationRepository::_tao_thru_poa_collocated_ServerInformationIterator::destroy (
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ *this->_stubobj ()->servant_orb_var ()->orb_core ()->object_adapter ()
+ );
+ servant_upcall.prepare_for_upcall (
+ this->_object_key (),
+ "destroy",
+ ACE_TRY_ENV
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_ImplementationRepository::ServerInformationIterator_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:ImplementationRepository/ServerInformationIterator:1.0"
+ )
+ )->destroy (
+ ACE_TRY_ENV
+ );
+ return;
+}
+
+
+
diff --git a/TAO/tao/ImplRepoS.h b/TAO/tao/ImplRepoS.h
new file mode 100644
index 00000000000..eadb85ab2d7
--- /dev/null
+++ b/TAO/tao/ImplRepoS.h
@@ -0,0 +1,914 @@
+/* -*- 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_IDL_IMPLREPOS_H_
+#define _TAO_IDL_IMPLREPOS_H_
+
+#include "tao/ImplRepoC.h"
+
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+
+#if defined(_MSC_VER)
+#if (_MSC_VER >= 1200)
+#pragma warning(push)
+#endif /* _MSC_VER >= 1200 */
+#pragma warning(disable:4250)
+#endif /* _MSC_VER */
+
+TAO_NAMESPACE POA_ImplementationRepository
+{
+ class ServerObject;
+ typedef ServerObject *ServerObject_ptr;
+ class TAO_Export ServerObject : public virtual PortableServer::ServantBase
+ {
+ protected:
+ ServerObject (void);
+
+ public:
+ ServerObject (const ServerObject& rhs);
+ virtual ~ServerObject (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 (
+ CORBA::ServerRequest &req,
+ void *obj,
+ void *context,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ );
+
+ static void _non_existent_skel (
+ CORBA::ServerRequest &req,
+ void *obj,
+ void *context,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ );
+
+ virtual void _dispatch (
+ CORBA::ServerRequest &_tao_req,
+ void *_tao_context,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ );
+
+ ImplementationRepository::ServerObject *_this (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ );
+
+ virtual const char* _interface_repository_id (void) const;
+
+ virtual void ping (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void ping_skel (
+ CORBA::ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_context,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ );
+
+ virtual void shutdown (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void shutdown_skel (
+ CORBA::ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_context,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ );
+
+
+ };
+
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_SERVEROBJECT___THRU_POA_COLLOCATED_SH_)
+#define _IMPLEMENTATIONREPOSITORY_SERVEROBJECT___THRU_POA_COLLOCATED_SH_
+
+ class TAO_Export _tao_thru_poa_collocated_ServerObject : public virtual ImplementationRepository::ServerObject
+ {
+ public:
+ _tao_thru_poa_collocated_ServerObject (
+ 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 void ping (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void shutdown (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ };
+
+
+#endif /* end #if !defined */
+
+
+#if defined (ACE_HAS_USING_KEYWORD)
+ // TIE class: Refer to CORBA v2.2, Section 20.34.4
+ template <class T>
+ class TAO_Export ServerObject_tie : public ServerObject
+ {
+ public:
+ ServerObject_tie (T &t);
+ // the T& ctor
+ ServerObject_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ ServerObject_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ ServerObject_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~ServerObject_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ CORBA::Environment &env =
+ TAO_default_environment ()
+ );
+ void ping (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void shutdown (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ ServerObject_tie (const ServerObject_tie &);
+ void operator= (const ServerObject_tie &);
+ };
+
+#endif /* ACE_HAS_USING_KEYWORD */
+
+ class Administration;
+ typedef Administration *Administration_ptr;
+ class TAO_Export Administration : public virtual PortableServer::ServantBase
+ {
+ protected:
+ Administration (void);
+
+ public:
+ Administration (const Administration& rhs);
+ virtual ~Administration (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 (
+ CORBA::ServerRequest &req,
+ void *obj,
+ void *context,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ );
+
+ static void _non_existent_skel (
+ CORBA::ServerRequest &req,
+ void *obj,
+ void *context,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ );
+
+ virtual void _dispatch (
+ CORBA::ServerRequest &_tao_req,
+ void *_tao_context,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ );
+
+ ImplementationRepository::Administration *_this (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ );
+
+ virtual const char* _interface_repository_id (void) const;
+
+ virtual void activate_server (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound,
+ ImplementationRepository::Administration::CannotActivate
+ )) = 0;
+
+ static void activate_server_skel (
+ CORBA::ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_context,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ );
+
+ virtual void register_server (
+ const char * server,
+ const ImplementationRepository::StartupOptions & options,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::AlreadyRegistered
+ )) = 0;
+
+ static void register_server_skel (
+ CORBA::ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_context,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ );
+
+ virtual void reregister_server (
+ const char * server,
+ const ImplementationRepository::StartupOptions & options,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void reregister_server_skel (
+ CORBA::ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_context,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ );
+
+ virtual void remove_server (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ )) = 0;
+
+ static void remove_server_skel (
+ CORBA::ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_context,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ );
+
+ virtual void shutdown_server (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ )) = 0;
+
+ static void shutdown_server_skel (
+ CORBA::ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_context,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ );
+
+ virtual char * server_is_running (
+ const char * server,
+ const char * addr,
+ ImplementationRepository::ServerObject_ptr server_object,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ )) = 0;
+
+ static void server_is_running_skel (
+ CORBA::ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_context,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ );
+
+ virtual void server_is_shutting_down (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ )) = 0;
+
+ static void server_is_shutting_down_skel (
+ CORBA::ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_context,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ );
+
+ virtual void find (
+ const char * server,
+ ImplementationRepository::ServerInformation_out info,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ )) = 0;
+
+ static void find_skel (
+ CORBA::ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_context,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ );
+
+ virtual void list (
+ CORBA::ULong how_many,
+ ImplementationRepository::ServerInformationList_out server_list,
+ ImplementationRepository::ServerInformationIterator_out server_iterator,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void list_skel (
+ CORBA::ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_context,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ );
+
+
+ };
+
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_ADMINISTRATION___THRU_POA_COLLOCATED_SH_)
+#define _IMPLEMENTATIONREPOSITORY_ADMINISTRATION___THRU_POA_COLLOCATED_SH_
+
+ class TAO_Export _tao_thru_poa_collocated_Administration : public virtual ImplementationRepository::Administration
+ {
+ public:
+ _tao_thru_poa_collocated_Administration (
+ 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 void activate_server (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound,
+ ImplementationRepository::Administration::CannotActivate
+ ));
+
+ virtual void register_server (
+ const char * server,
+ const ImplementationRepository::StartupOptions & options,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::AlreadyRegistered
+ ));
+
+ virtual void reregister_server (
+ const char * server,
+ const ImplementationRepository::StartupOptions & options,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void remove_server (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ));
+
+ virtual void shutdown_server (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ));
+
+ virtual char * server_is_running (
+ const char * server,
+ const char * addr,
+ ImplementationRepository::ServerObject_ptr server_object,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ));
+
+ virtual void server_is_shutting_down (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ));
+
+ virtual void find (
+ const char * server,
+ ImplementationRepository::ServerInformation_out info,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ));
+
+ virtual void list (
+ CORBA::ULong how_many,
+ ImplementationRepository::ServerInformationList_out server_list,
+ ImplementationRepository::ServerInformationIterator_out server_iterator,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ };
+
+
+#endif /* end #if !defined */
+
+
+#if defined (ACE_HAS_USING_KEYWORD)
+ // TIE class: Refer to CORBA v2.2, Section 20.34.4
+ template <class T>
+ class TAO_Export Administration_tie : public Administration
+ {
+ public:
+ Administration_tie (T &t);
+ // the T& ctor
+ Administration_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ Administration_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ Administration_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~Administration_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ CORBA::Environment &env =
+ TAO_default_environment ()
+ );
+ void activate_server (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound,
+ ImplementationRepository::Administration::CannotActivate
+ ));
+
+ void register_server (
+ const char * server,
+ const ImplementationRepository::StartupOptions & options,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::AlreadyRegistered
+ ));
+
+ void reregister_server (
+ const char * server,
+ const ImplementationRepository::StartupOptions & options,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void remove_server (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ));
+
+ void shutdown_server (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ));
+
+ char * server_is_running (
+ const char * server,
+ const char * addr,
+ ImplementationRepository::ServerObject_ptr server_object,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ));
+
+ void server_is_shutting_down (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ));
+
+ void find (
+ const char * server,
+ ImplementationRepository::ServerInformation_out info,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ));
+
+ void list (
+ CORBA::ULong how_many,
+ ImplementationRepository::ServerInformationList_out server_list,
+ ImplementationRepository::ServerInformationIterator_out server_iterator,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ Administration_tie (const Administration_tie &);
+ void operator= (const Administration_tie &);
+ };
+
+#endif /* ACE_HAS_USING_KEYWORD */
+
+ class ServerInformationIterator;
+ typedef ServerInformationIterator *ServerInformationIterator_ptr;
+ class TAO_Export ServerInformationIterator : public virtual PortableServer::ServantBase
+ {
+ protected:
+ ServerInformationIterator (void);
+
+ public:
+ ServerInformationIterator (const ServerInformationIterator& rhs);
+ virtual ~ServerInformationIterator (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 (
+ CORBA::ServerRequest &req,
+ void *obj,
+ void *context,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ );
+
+ static void _non_existent_skel (
+ CORBA::ServerRequest &req,
+ void *obj,
+ void *context,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ );
+
+ virtual void _dispatch (
+ CORBA::ServerRequest &_tao_req,
+ void *_tao_context,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ );
+
+ ImplementationRepository::ServerInformationIterator *_this (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ );
+
+ virtual const char* _interface_repository_id (void) const;
+
+ virtual CORBA::Boolean next_n (
+ CORBA::ULong how_many,
+ ImplementationRepository::ServerInformationList_out server_list,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void next_n_skel (
+ CORBA::ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_context,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ );
+
+ virtual void destroy (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void destroy_skel (
+ CORBA::ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_context,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ );
+
+
+ };
+
+
+#if !defined (_IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONITERATOR___THRU_POA_COLLOCATED_SH_)
+#define _IMPLEMENTATIONREPOSITORY_SERVERINFORMATIONITERATOR___THRU_POA_COLLOCATED_SH_
+
+ class TAO_Export _tao_thru_poa_collocated_ServerInformationIterator : public virtual ImplementationRepository::ServerInformationIterator
+ {
+ public:
+ _tao_thru_poa_collocated_ServerInformationIterator (
+ 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::Boolean next_n (
+ CORBA::ULong how_many,
+ ImplementationRepository::ServerInformationList_out server_list,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void destroy (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ };
+
+
+#endif /* end #if !defined */
+
+
+#if defined (ACE_HAS_USING_KEYWORD)
+ // TIE class: Refer to CORBA v2.2, Section 20.34.4
+ template <class T>
+ class TAO_Export ServerInformationIterator_tie : public ServerInformationIterator
+ {
+ public:
+ ServerInformationIterator_tie (T &t);
+ // the T& ctor
+ ServerInformationIterator_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ ServerInformationIterator_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ ServerInformationIterator_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~ServerInformationIterator_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ CORBA::Environment &env =
+ TAO_default_environment ()
+ );
+ CORBA::Boolean next_n (
+ CORBA::ULong how_many,
+ ImplementationRepository::ServerInformationList_out server_list,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ ServerInformationIterator_tie (const ServerInformationIterator_tie &);
+ void operator= (const ServerInformationIterator_tie &);
+ };
+
+#endif /* ACE_HAS_USING_KEYWORD */
+
+}
+TAO_NAMESPACE_CLOSE
+
+#include "ImplRepoS_T.h"
+
+#if defined (__ACE_INLINE__)
+#include "ImplRepoS.i"
+#endif /* defined INLINE */
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* ifndef */
diff --git a/TAO/tao/ImplRepoS.i b/TAO/tao/ImplRepoS.i
new file mode 100644
index 00000000000..d41d475fa1a
--- /dev/null
+++ b/TAO/tao/ImplRepoS.i
@@ -0,0 +1,9 @@
+/* -*- 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
+
diff --git a/TAO/tao/ImplRepoS_T.cpp b/TAO/tao/ImplRepoS_T.cpp
new file mode 100644
index 00000000000..341ff292dff
--- /dev/null
+++ b/TAO/tao/ImplRepoS_T.cpp
@@ -0,0 +1,20 @@
+/* -*- 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_IDL_IMPLREPOS_T_CPP_
+#define _TAO_IDL_IMPLREPOS_T_CPP_
+
+#include "ImplRepoS_T.h"
+
+#if !defined (__ACE_INLINE__)
+#include "ImplRepoS_T.i"
+#endif /* !defined INLINE */
+
+
+#endif /* ifndef */
diff --git a/TAO/tao/ImplRepoS_T.h b/TAO/tao/ImplRepoS_T.h
new file mode 100644
index 00000000000..fa1f0f82977
--- /dev/null
+++ b/TAO/tao/ImplRepoS_T.h
@@ -0,0 +1,39 @@
+/* -*- 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_IDL_IMPLREPOS_T_H_
+#define _TAO_IDL_IMPLREPOS_T_H_
+
+#if defined(_MSC_VER)
+#if (_MSC_VER >= 1200)
+#pragma warning(push)
+#endif /* _MSC_VER >= 1200 */
+#pragma warning(disable:4250)
+#endif /* _MSC_VER */
+
+
+#if defined (__ACE_INLINE__)
+#include "ImplRepoS_T.i"
+#endif /* defined INLINE */
+
+
+#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
+#include "ImplRepoS_T.cpp"
+#endif /* defined REQUIRED SOURCE */
+
+
+#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
+#pragma implementation ("ImplRepoS_T.cpp")
+#endif /* defined REQUIRED PRAGMA */
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* ifndef */
diff --git a/TAO/tao/ImplRepoS_T.i b/TAO/tao/ImplRepoS_T.i
new file mode 100644
index 00000000000..c9f070e9a57
--- /dev/null
+++ b/TAO/tao/ImplRepoS_T.i
@@ -0,0 +1,462 @@
+/* -*- 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
+
+
+#if defined (ACE_HAS_USING_KEYWORD)
+template <class T> ACE_INLINE
+POA_ImplementationRepository::ServerObject_tie<T>::ServerObject_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_ImplementationRepository::ServerObject_tie<T>::ServerObject_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_ImplementationRepository::ServerObject_tie<T>::ServerObject_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_ImplementationRepository::ServerObject_tie<T>::ServerObject_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_ImplementationRepository::ServerObject_tie<T>::~ServerObject_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_ImplementationRepository::ServerObject_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_ImplementationRepository::ServerObject_tie<T>::_tied_object (T &obj)
+{
+ if (this->rel_) delete this->ptr_;
+ this->ptr_ = &obj;
+ this->rel_ = 0;
+}
+
+template <class T> ACE_INLINE void
+POA_ImplementationRepository::ServerObject_tie<T>::_tied_object (T *obj, CORBA::Boolean release)
+{
+ if (this->rel_) delete this->ptr_;
+ this->ptr_ = obj;
+ this->rel_ = release;
+}
+
+template <class T> ACE_INLINE CORBA::Boolean
+POA_ImplementationRepository::ServerObject_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_ImplementationRepository::ServerObject_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_ImplementationRepository::ServerObject_tie<T>::_default_POA (CORBA::Environment &env)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->ServerObject::_default_POA (env);
+}
+
+template <class T> ACE_INLINE
+void POA_ImplementationRepository::ServerObject_tie<T>::ping (
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->ping (
+ ACE_TRY_ENV
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_ImplementationRepository::ServerObject_tie<T>::shutdown (
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->shutdown (
+ ACE_TRY_ENV
+ );
+}
+
+#endif /* ACE_HAS_USING_KEYWORD */
+
+#if defined (ACE_HAS_USING_KEYWORD)
+template <class T> ACE_INLINE
+POA_ImplementationRepository::Administration_tie<T>::Administration_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_ImplementationRepository::Administration_tie<T>::Administration_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_ImplementationRepository::Administration_tie<T>::Administration_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_ImplementationRepository::Administration_tie<T>::Administration_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_ImplementationRepository::Administration_tie<T>::~Administration_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_ImplementationRepository::Administration_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_ImplementationRepository::Administration_tie<T>::_tied_object (T &obj)
+{
+ if (this->rel_) delete this->ptr_;
+ this->ptr_ = &obj;
+ this->rel_ = 0;
+}
+
+template <class T> ACE_INLINE void
+POA_ImplementationRepository::Administration_tie<T>::_tied_object (T *obj, CORBA::Boolean release)
+{
+ if (this->rel_) delete this->ptr_;
+ this->ptr_ = obj;
+ this->rel_ = release;
+}
+
+template <class T> ACE_INLINE CORBA::Boolean
+POA_ImplementationRepository::Administration_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_ImplementationRepository::Administration_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_ImplementationRepository::Administration_tie<T>::_default_POA (CORBA::Environment &env)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->Administration::_default_POA (env);
+}
+
+template <class T> ACE_INLINE
+void POA_ImplementationRepository::Administration_tie<T>::activate_server (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound,
+ ImplementationRepository::Administration::CannotActivate
+ ))
+{
+ this->ptr_->activate_server (
+ server,
+ ACE_TRY_ENV
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_ImplementationRepository::Administration_tie<T>::register_server (
+ const char * server,
+ const ImplementationRepository::StartupOptions & options,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::AlreadyRegistered
+ ))
+{
+ this->ptr_->register_server (
+ server,
+ options,
+ ACE_TRY_ENV
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_ImplementationRepository::Administration_tie<T>::reregister_server (
+ const char * server,
+ const ImplementationRepository::StartupOptions & options,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->reregister_server (
+ server,
+ options,
+ ACE_TRY_ENV
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_ImplementationRepository::Administration_tie<T>::remove_server (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ))
+{
+ this->ptr_->remove_server (
+ server,
+ ACE_TRY_ENV
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_ImplementationRepository::Administration_tie<T>::shutdown_server (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ))
+{
+ this->ptr_->shutdown_server (
+ server,
+ ACE_TRY_ENV
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_ImplementationRepository::Administration_tie<T>::server_is_running (
+ const char * server,
+ const char * addr,
+ ImplementationRepository::ServerObject_ptr server_object,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ))
+{
+ return this->ptr_->server_is_running (
+ server,
+ addr,
+ server_object,
+ ACE_TRY_ENV
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_ImplementationRepository::Administration_tie<T>::server_is_shutting_down (
+ const char * server,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ))
+{
+ this->ptr_->server_is_shutting_down (
+ server,
+ ACE_TRY_ENV
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_ImplementationRepository::Administration_tie<T>::find (
+ const char * server,
+ ImplementationRepository::ServerInformation_out info,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException,
+ ImplementationRepository::Administration::NotFound
+ ))
+{
+ this->ptr_->find (
+ server,
+ info,
+ ACE_TRY_ENV
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_ImplementationRepository::Administration_tie<T>::list (
+ CORBA::ULong how_many,
+ ImplementationRepository::ServerInformationList_out server_list,
+ ImplementationRepository::ServerInformationIterator_out server_iterator,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->list (
+ how_many,
+ server_list,
+ server_iterator,
+ ACE_TRY_ENV
+ );
+}
+
+#endif /* ACE_HAS_USING_KEYWORD */
+
+#if defined (ACE_HAS_USING_KEYWORD)
+template <class T> ACE_INLINE
+POA_ImplementationRepository::ServerInformationIterator_tie<T>::ServerInformationIterator_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_ImplementationRepository::ServerInformationIterator_tie<T>::ServerInformationIterator_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_ImplementationRepository::ServerInformationIterator_tie<T>::ServerInformationIterator_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_ImplementationRepository::ServerInformationIterator_tie<T>::ServerInformationIterator_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_ImplementationRepository::ServerInformationIterator_tie<T>::~ServerInformationIterator_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_ImplementationRepository::ServerInformationIterator_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_ImplementationRepository::ServerInformationIterator_tie<T>::_tied_object (T &obj)
+{
+ if (this->rel_) delete this->ptr_;
+ this->ptr_ = &obj;
+ this->rel_ = 0;
+}
+
+template <class T> ACE_INLINE void
+POA_ImplementationRepository::ServerInformationIterator_tie<T>::_tied_object (T *obj, CORBA::Boolean release)
+{
+ if (this->rel_) delete this->ptr_;
+ this->ptr_ = obj;
+ this->rel_ = release;
+}
+
+template <class T> ACE_INLINE CORBA::Boolean
+POA_ImplementationRepository::ServerInformationIterator_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_ImplementationRepository::ServerInformationIterator_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_ImplementationRepository::ServerInformationIterator_tie<T>::_default_POA (CORBA::Environment &env)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->ServerInformationIterator::_default_POA (env);
+}
+
+template <class T> ACE_INLINE
+CORBA::Boolean POA_ImplementationRepository::ServerInformationIterator_tie<T>::next_n (
+ CORBA::ULong how_many,
+ ImplementationRepository::ServerInformationList_out server_list,
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->next_n (
+ how_many,
+ server_list,
+ ACE_TRY_ENV
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_ImplementationRepository::ServerInformationIterator_tie<T>::destroy (
+ CORBA::Environment &ACE_TRY_ENV
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_TRY_ENV
+ );
+}
+
+#endif /* ACE_HAS_USING_KEYWORD */