summaryrefslogtreecommitdiff
path: root/TAO/orbsvcs
diff options
context:
space:
mode:
authorjai <jai@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2002-04-27 01:17:04 +0000
committerjai <jai@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2002-04-27 01:17:04 +0000
commitea10a271cff7433b8de1f270ad77905dcfbb3c90 (patch)
treea16fc7dc3d045cd8197856049c2f7e2310aa7430 /TAO/orbsvcs
parent0a80489937c0a9858d53ed774fff025b26032438 (diff)
downloadATCD-ea10a271cff7433b8de1f270ad77905dcfbb3c90.tar.gz
Fri Apr 26 18:07:17 2002 Jaiganesh Balasubramanian <jai@doc.ece.uci.edu>
Diffstat (limited to 'TAO/orbsvcs')
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/AbstractInterfaceDef_i.cpp56
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/AbstractInterfaceDef_i.h78
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/AliasDef_i.cpp151
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/AliasDef_i.h100
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/ArrayDef_i.cpp283
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/ArrayDef_i.h147
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/AttributeDef_i.cpp572
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/AttributeDef_i.h150
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/ComponentDef_i.cpp383
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/ComponentDef_i.h288
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/ComponentRepository_i.cpp97
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/ComponentRepository_i.h105
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/ConstantDef_i.cpp290
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/ConstantDef_i.h131
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/ConsumesDef_i.cpp62
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/ConsumesDef_i.h90
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/Contained_i.cpp1182
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/Contained_i.h235
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/Container_i.cpp2760
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/Container_i.h459
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/EmitsDef_i.cpp60
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/EmitsDef_i.h90
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/EnumDef_i.cpp148
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/EnumDef_i.h100
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/EventDef_i.cpp89
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/EventDef_i.h106
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/ExceptionDef_i.cpp335
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/ExceptionDef_i.h123
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/FactoryDef_i.cpp62
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/FactoryDef_i.h90
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/FinderDef_i.cpp60
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/FinderDef_i.h90
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/FixedDef_i.cpp131
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/FixedDef_i.h132
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/HomeDef_i.cpp277
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/HomeDef_i.h222
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IDLType_i.cpp17
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IDLType_i.h75
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IFR_BaseS.cpp10497
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IFR_BaseS.h1697
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IFR_BaseS.i321
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IFR_BaseS_T.cpp32
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IFR_BaseS_T.h708
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IFR_BaseS_T.i1232
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IFR_BasicS.cpp24083
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IFR_BasicS.h6490
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IFR_BasicS.i5151
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IFR_BasicS_T.cpp32
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IFR_BasicS_T.h4400
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IFR_BasicS_T.i8163
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IFR_ComponentsS.cpp13818
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IFR_ComponentsS.h4190
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IFR_ComponentsS.i3711
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IFR_ComponentsS_T.cpp32
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IFR_ComponentsS_T.h2884
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IFR_ComponentsS_T.i5308
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IFR_ExtendedS.cpp9173
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IFR_ExtendedS.h1748
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IFR_ExtendedS.i936
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IFR_ExtendedS_T.cpp32
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IFR_ExtendedS_T.h983
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IFR_ExtendedS_T.i1749
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IFR_Service_Loader.cpp90
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IFR_Service_Loader.cpp~90
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IFR_Service_Loader.h67
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IFR_Service_Utils.cpp471
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IFR_Service_Utils.cpp~454
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IFR_Service_Utils.h105
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IFR_Service_Utils.h~169
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IFR_macro.h46
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IRObject_i.cpp28
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/IRObject_i.h89
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/InterfaceDef_i.cpp1396
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/InterfaceDef_i.h247
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/LocalInterfaceDef_i.cpp55
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/LocalInterfaceDef_i.h78
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/ModuleDef_i.cpp97
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/ModuleDef_i.h91
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/NativeDef_i.cpp56
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/NativeDef_i.h78
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/OperationDef_i.cpp785
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/OperationDef_i.h207
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/Options.cpp125
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/Options.h82
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/PrimaryKeyDef_i.cpp98
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/PrimaryKeyDef_i.h112
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/PrimitiveDef_i.cpp132
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/PrimitiveDef_i.h99
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/ProvidesDef_i.cpp78
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/ProvidesDef_i.h98
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/PublishesDef_i.cpp62
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/PublishesDef_i.h90
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/Repository_i.cpp860
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/Repository_i.h290
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/SequenceDef_i.cpp286
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/SequenceDef_i.h150
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/Servant_Factory.cpp1492
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/Servant_Factory.h79
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/Servant_Locator.cpp66
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/Servant_Locator.h74
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/StringDef_i.cpp113
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/StringDef_i.h111
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/StructDef_i.cpp278
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/StructDef_i.h112
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/TypedefDef_i.cpp73
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/TypedefDef_i.h74
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/UnionDef_i.cpp470
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/UnionDef_i.h154
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/UsesDef_i.cpp93
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/UsesDef_i.h108
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/ValueBoxDef_i.cpp153
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/ValueBoxDef_i.h100
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/ValueDef_i.cpp493
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/ValueDef_i.h346
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/ValueMemberDef_i.cpp150
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/ValueMemberDef_i.h142
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/WstringDef_i.cpp113
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/WstringDef_i.h111
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/concrete_classes.h54
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/ifr_service_export.h34
-rw-r--r--TAO/orbsvcs/orbsvcs/IFRService/tmplinst.cpp250
121 files changed, 129700 insertions, 0 deletions
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/AbstractInterfaceDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/AbstractInterfaceDef_i.cpp
new file mode 100644
index 00000000000..e572cb5d162
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/AbstractInterfaceDef_i.cpp
@@ -0,0 +1,56 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "AbstractInterfaceDef_i.h"
+#include "Repository_i.h"
+
+ACE_RCSID(IFR_Service, AbstractInterfaceDef_i, "$Id$")
+
+TAO_AbstractInterfaceDef_i::TAO_AbstractInterfaceDef_i (
+ TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key
+ )
+ : TAO_IRObject_i (repo, section_key),
+ TAO_Container_i (repo, section_key),
+ TAO_Contained_i (repo, section_key),
+ TAO_IDLType_i (repo, section_key),
+ TAO_InterfaceDef_i (repo, section_key)
+{
+}
+
+TAO_AbstractInterfaceDef_i::~TAO_AbstractInterfaceDef_i (void)
+{
+}
+
+CORBA::DefinitionKind
+TAO_AbstractInterfaceDef_i::def_kind (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::dk_AbstractInterface;
+}
+
+CORBA::Boolean
+TAO_AbstractInterfaceDef_i::is_a (const char *interface_id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->is_a_i (interface_id
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA::Boolean
+TAO_AbstractInterfaceDef_i::is_a_i (const char *interface_id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ if (ACE_OS::strcmp (interface_id, "IDL:omg.org/CORBA/AbstractBase:1.0") == 0)
+ {
+ return 1;
+ }
+
+ return this->TAO_InterfaceDef_i::is_a_i (interface_id
+ ACE_ENV_ARG_PARAMETER);
+}
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/AbstractInterfaceDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/AbstractInterfaceDef_i.h
new file mode 100644
index 00000000000..695fadaf07f
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/AbstractInterfaceDef_i.h
@@ -0,0 +1,78 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// AbstractInterfaceDef_i.h
+//
+// = DESCRIPTION
+// AbstractInterfaceDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_ABSTRACTINTERFACEDEF_I_H
+#define TAO_ABSTRACTINTERFACEDEF_I_H
+
+#include "InterfaceDef_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_IFRService_Export TAO_AbstractInterfaceDef_i : public virtual TAO_InterfaceDef_i
+{
+ // = TITLE
+ // TAO_AbstractInterfaceDef_i
+ //
+ // = DESCRIPTION
+ // Represents an abstract interface definition.
+ //
+public:
+ TAO_AbstractInterfaceDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor
+
+ virtual ~TAO_AbstractInterfaceDef_i (void);
+ // Destructor
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Return our definition kind.
+
+ virtual CORBA::Boolean is_a (
+ const char *interface_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA::Boolean is_a_i (
+ const char *interface_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_ABSTRACTINTERFACEDEF_I_H */
+
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/AliasDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/AliasDef_i.cpp
new file mode 100644
index 00000000000..9188ace6df3
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/AliasDef_i.cpp
@@ -0,0 +1,151 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "AliasDef_i.h"
+#include "Repository_i.h"
+#include "Servant_Factory.h"
+#include "ace/Auto_Ptr.h"
+
+ACE_RCSID(IFR_Service, AliasDef_i, "$Id$")
+
+TAO_AliasDef_i::TAO_AliasDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key)
+ : TAO_IRObject_i (repo, section_key),
+ TAO_Contained_i (repo, section_key),
+ TAO_IDLType_i (repo, section_key),
+ TAO_TypedefDef_i (repo, section_key)
+{
+}
+
+TAO_AliasDef_i::~TAO_AliasDef_i (void)
+{
+}
+
+CORBA::DefinitionKind
+TAO_AliasDef_i::def_kind (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::dk_Alias;
+}
+
+CORBA::TypeCode_ptr
+TAO_AliasDef_i::type (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::TypeCode_ptr
+TAO_AliasDef_i::type_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString id;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "id",
+ id);
+
+ ACE_TString name;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "name",
+ name);
+
+ ACE_TString original_type;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "original_type",
+ original_type);
+
+ ACE_Configuration_Section_Key ot_key;
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ original_type,
+ ot_key,
+ 0);
+
+ TAO_IDLType_i *impl =
+ this->repo_->servant_factory ()->create_idltype (ot_key
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA::TypeCode::_nil ());
+
+ auto_ptr<TAO_IDLType_i> safety (impl);
+
+ CORBA::TypeCode_var tc = impl->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->repo_->tc_factory ()->create_alias_tc (id.c_str (),
+ name.c_str (),
+ tc.in ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_IDLType_ptr
+TAO_AliasDef_i::original_type_def (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA_IDLType::_nil ());
+
+ return this->original_type_def_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_IDLType_ptr
+TAO_AliasDef_i::original_type_def_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString original_type;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "original_type",
+ original_type);
+
+ ACE_Configuration_Section_Key ot_key;
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ original_type,
+ ot_key,
+ 0);
+
+ u_int kind = 0;
+ this->repo_->config ()->get_integer_value (ot_key,
+ "def_kind",
+ kind);
+
+ CORBA::DefinitionKind def_kind =
+ ACE_static_cast (CORBA::DefinitionKind, kind);
+
+ CORBA::Object_var obj =
+ this->repo_->servant_factory ()->create_objref (def_kind,
+ original_type.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_IDLType::_nil ());
+
+ return CORBA_IDLType::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_AliasDef_i::original_type_def (CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->original_type_def_i (original_type_def
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_AliasDef_i::original_type_def_i (CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ PortableServer::ObjectId_var oid =
+ this->repo_->ir_poa ()->reference_to_id (original_type_def
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ CORBA::String_var original_type =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ this->repo_->config ()->set_string_value (this->section_key_,
+ "original_type",
+ original_type.in ());
+}
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/AliasDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/AliasDef_i.h
new file mode 100644
index 00000000000..03444d28d72
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/AliasDef_i.h
@@ -0,0 +1,100 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// AliasDef_i.h
+//
+// = DESCRIPTION
+// AliasDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_ALIASDEF_I_H
+#define TAO_ALIASDEF_I_H
+
+#include "TypedefDef_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_IFRService_Export TAO_AliasDef_i : public virtual TAO_TypedefDef_i
+{
+public:
+ // = TITLE
+ // TAO_AliasDef_i
+ //
+ // = DESCRIPTION
+ // Represents an OMG IDL typedef that aliases another definition.
+ //
+public:
+ TAO_AliasDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor
+
+ virtual ~TAO_AliasDef_i (void);
+ // Destructor
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Return our definition kind.
+
+ virtual CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From IDLType_i's pure virtual function.
+
+ virtual CORBA::TypeCode_ptr type_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From IDLType_i's pure virtual function.
+
+ virtual CORBA_IDLType_ptr original_type_def (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_IDLType_ptr original_type_def_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void original_type_def (
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void original_type_def_i (
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_ALIASDEF_I_H */
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/ArrayDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/ArrayDef_i.cpp
new file mode 100644
index 00000000000..eb2709dbf92
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/ArrayDef_i.cpp
@@ -0,0 +1,283 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "ArrayDef_i.h"
+#include "Repository_i.h"
+#include "Servant_Factory.h"
+#include "ace/Auto_Ptr.h"
+
+ACE_RCSID(IFR_Service, ArrayDef_i, "$Id$")
+
+TAO_ArrayDef_i::TAO_ArrayDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key)
+ : TAO_IRObject_i (repo, section_key),
+ TAO_IDLType_i (repo, section_key)
+{
+}
+
+TAO_ArrayDef_i::~TAO_ArrayDef_i (void)
+{
+}
+
+CORBA::DefinitionKind
+TAO_ArrayDef_i::def_kind (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::dk_Array;
+}
+
+void
+TAO_ArrayDef_i::destroy (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+void
+TAO_ArrayDef_i::destroy_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Only if it is (w)string, fixed, array or sequence.
+ this->destroy_element_type (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ ACE_TString name;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "name",
+ name);
+
+ this->repo_->config ()->remove_section (this->repo_->arrays_key (),
+ name.c_str (),
+ 0);
+}
+
+CORBA::TypeCode_ptr
+TAO_ArrayDef_i::type (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::TypeCode_ptr
+TAO_ArrayDef_i::type_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA::TypeCode_var element_typecode =
+ this->element_type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA::TypeCode::_nil ());
+
+ CORBA::ULong length = this->length_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->repo_->tc_factory ()->create_array_tc (
+ length,
+ element_typecode.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+CORBA::ULong
+TAO_ArrayDef_i::length (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->length_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::ULong
+TAO_ArrayDef_i::length_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ u_int length = 0;
+ this->repo_->config ()->get_integer_value (this->section_key_,
+ "length",
+ length);
+
+ return ACE_static_cast (CORBA::ULong, length);
+}
+
+void
+TAO_ArrayDef_i::length (CORBA::ULong length
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->length_i (length
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ArrayDef_i::length_i (CORBA::ULong length
+ ACE_ENV_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ this->repo_->config ()->set_integer_value (this->section_key_,
+ "length",
+ length);
+}
+
+CORBA::TypeCode_ptr
+TAO_ArrayDef_i::element_type (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->element_type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::TypeCode_ptr
+TAO_ArrayDef_i::element_type_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString element_path;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "element_path",
+ element_path);
+
+ ACE_Configuration_Section_Key element_key;
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ element_path,
+ element_key,
+ 0);
+
+ TAO_IDLType_i *impl =
+ this->repo_->servant_factory ()->create_idltype (element_key
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA::TypeCode::_nil ());
+
+ auto_ptr<TAO_IDLType_i> safety (impl);
+
+ return impl->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_IDLType_ptr
+TAO_ArrayDef_i::element_type_def (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA_IDLType::_nil ());
+
+ return this->element_type_def_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_IDLType_ptr
+TAO_ArrayDef_i::element_type_def_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString element_path;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "element_path",
+ element_path);
+
+ ACE_Configuration_Section_Key element_key;
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ element_path,
+ element_key,
+ 0);
+
+ u_int kind = 0;
+ this->repo_->config ()->get_integer_value (element_key,
+ "def_kind",
+ kind);
+
+ CORBA::DefinitionKind def_kind =
+ ACE_static_cast (CORBA::DefinitionKind, kind);
+
+ CORBA::Object_var obj =
+ this->repo_->servant_factory ()->create_objref (def_kind,
+ element_path.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_IDLType::_nil ());
+
+ return CORBA_IDLType::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ArrayDef_i::element_type_def (CORBA_IDLType_ptr element_type_def
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->element_type_def_i (element_type_def
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ArrayDef_i::element_type_def_i (CORBA_IDLType_ptr element_type_def
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ this->destroy_element_type (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ PortableServer::ObjectId_var oid =
+ this->repo_->ir_poa ()->reference_to_id (element_type_def
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ CORBA::String_var new_element_path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ this->repo_->config ()->set_string_value (this->section_key_,
+ "element_path",
+ new_element_path.in ());
+}
+
+void
+TAO_ArrayDef_i::destroy_element_type (
+ ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString element_path;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "element_path",
+ element_path);
+
+ ACE_Configuration_Section_Key element_key;
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ element_path,
+ element_key,
+ 0);
+
+ u_int kind = 0;
+ this->repo_->config ()->get_integer_value (element_key,
+ "def_kind",
+ kind);
+
+ CORBA::DefinitionKind def_kind =
+ ACE_static_cast (CORBA::DefinitionKind, kind);
+
+ switch (def_kind)
+ {
+ // These exist only as our elements, so the type should
+ // be destroyed when we are destroyed or our element type
+ // is mutated.
+ case CORBA::dk_String:
+ case CORBA::dk_Wstring:
+ case CORBA::dk_Fixed:
+ case CORBA::dk_Array:
+ case CORBA::dk_Sequence:
+ {
+ TAO_IDLType_i *impl =
+ this->repo_->servant_factory ()->create_idltype (element_key
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ auto_ptr<TAO_IDLType_i> safety (impl);
+
+ impl->destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+ break;
+ }
+ default:
+ break;
+ }
+}
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/ArrayDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/ArrayDef_i.h
new file mode 100644
index 00000000000..9cbe147dd4a
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/ArrayDef_i.h
@@ -0,0 +1,147 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// ArrayDef_i.h
+//
+// = DESCRIPTION
+// ArrayDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_ARRAYDEF_I_H
+#define TAO_ARRAYDEF_I_H
+
+#include "IDLType_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_IFRService_Export TAO_ArrayDef_i : public virtual TAO_IDLType_i
+{
+ // = TITLE
+ // TAO_ArrayDef_i
+ //
+ // = DESCRIPTION
+ // Represents an IDL array type.
+ //
+public:
+ TAO_ArrayDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor
+
+ virtual ~TAO_ArrayDef_i (void);
+ // Destructor
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Return our definition kind.
+
+ virtual void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Remove the repository entry.
+
+ virtual void destroy_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::TypeCode_ptr type_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::ULong length (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA::ULong length_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void length (
+ CORBA::ULong length
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void length_i (
+ CORBA::ULong length
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::TypeCode_ptr element_type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA::TypeCode_ptr element_type_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_IDLType_ptr element_type_def (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_IDLType_ptr element_type_def_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void element_type_def (
+ CORBA_IDLType_ptr element_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void element_type_def_i (
+ CORBA_IDLType_ptr element_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+private:
+ void destroy_element_type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Destroys an anonymous non-primitive element type.
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_ARRAYDEF_I_H */
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/AttributeDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/AttributeDef_i.cpp
new file mode 100644
index 00000000000..4bf09e2fcf8
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/AttributeDef_i.cpp
@@ -0,0 +1,572 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "AttributeDef_i.h"
+#include "Repository_i.h"
+#include "IDLType_i.h"
+#include "ExceptionDef_i.h"
+#include "Servant_Factory.h"
+#include "ace/Auto_Ptr.h"
+
+ACE_RCSID(IFR_Service, AttributeDef_i, "$Id$")
+
+TAO_AttributeDef_i::TAO_AttributeDef_i (
+ TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key
+ )
+ : TAO_IRObject_i (repo, section_key),
+ TAO_Contained_i (repo, section_key)
+{
+}
+
+TAO_AttributeDef_i::~TAO_AttributeDef_i (void)
+{
+}
+
+CORBA::DefinitionKind
+TAO_AttributeDef_i::def_kind (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::dk_Attribute;
+}
+
+CORBA_Contained::Description *
+TAO_AttributeDef_i::describe (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->describe_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_Contained::Description *
+TAO_AttributeDef_i::describe_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA_Contained::Description *desc_ptr = 0;
+ ACE_NEW_THROW_EX (desc_ptr,
+ CORBA_Contained::Description,
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ CORBA_Contained::Description_var retval = desc_ptr;
+
+ retval->kind = this->def_kind (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ retval->value <<= this->make_description (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return retval._retn ();
+}
+
+CORBA::TypeCode_ptr
+TAO_AttributeDef_i::type (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::TypeCode_ptr
+TAO_AttributeDef_i::type_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString type_path;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "type_path",
+ type_path);
+
+ ACE_Configuration_Section_Key type_key;
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ type_path,
+ type_key,
+ 0);
+
+ TAO_IDLType_i *impl =
+ this->repo_->servant_factory ()->create_idltype (type_key
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA::TypeCode::_nil ());
+
+ auto_ptr<TAO_IDLType_i> safety (impl);
+
+ return impl->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_IDLType_ptr
+TAO_AttributeDef_i::type_def (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA_IDLType::_nil ());
+
+ return this->type_def_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_IDLType_ptr
+TAO_AttributeDef_i::type_def_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString type_path;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "type_path",
+ type_path);
+
+ ACE_Configuration_Section_Key type_key;
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ type_path,
+ type_key,
+ 0);
+
+ u_int kind = 0;
+ this->repo_->config ()->get_integer_value (type_key,
+ "def_kind",
+ kind);
+
+ CORBA::DefinitionKind def_kind =
+ ACE_static_cast (CORBA::DefinitionKind, kind);
+
+ CORBA::Object_var obj =
+ this->repo_->servant_factory ()->create_objref (def_kind,
+ type_path.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_IDLType::_nil ());
+
+ CORBA_IDLType_var retval = CORBA_IDLType::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_IDLType::_nil ());
+
+ return retval._retn ();
+}
+
+void
+TAO_AttributeDef_i::type_def (CORBA_IDLType_ptr type_def
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->type_def_i (type_def
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_AttributeDef_i::type_def_i (CORBA_IDLType_ptr type_def
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ PortableServer::ObjectId_var oid =
+ this->repo_->ir_poa ()->reference_to_id (type_def
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ CORBA::String_var type_path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ this->repo_->config ()->set_string_value (this->section_key_,
+ "type_path",
+ type_path.in ());
+}
+
+CORBA::AttributeMode
+TAO_AttributeDef_i::mode (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA::ATTR_NORMAL);
+
+ return this->mode_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::AttributeMode
+TAO_AttributeDef_i::mode_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ u_int mode = 0;
+ this->repo_->config ()->get_integer_value (this->section_key_,
+ "mode",
+ mode);
+
+ return ACE_static_cast (CORBA::AttributeMode, mode);
+}
+
+void
+TAO_AttributeDef_i::mode (CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->mode_i (mode
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_AttributeDef_i::mode_i (CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ this->repo_->config ()->set_integer_value (this->section_key_,
+ "mode",
+ mode);
+}
+
+CORBA_AttributeDescription
+TAO_AttributeDef_i::make_description (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA_AttributeDescription ad;
+
+ ad.name = this->name_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (ad);
+
+ ad.id = this->id_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (ad);
+
+ ACE_TString container_id;
+
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "container_id",
+ container_id);
+
+ ad.defined_in = container_id.c_str ();
+
+ ad.version = this->version_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (ad);
+
+ ad.type = this->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (ad);
+
+ ad.mode = this->mode_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (ad);
+/*
+ ACE_Unbounded_Queue<ACE_Configuration_Section_Key> key_queue;
+ int index = 0;
+ int status;
+ ACE_Configuration::VALUETYPE type;
+ ACE_TString field_name;
+ CORBA::ULong i = 0;
+
+ // 'get' exceptions
+
+ ACE_Configuration_Section_Key get_excepts_key;
+ status =
+ this->repo_->config ()->open_section (this->section_key_,
+ "get_excepts",
+ 0,
+ get_excepts_key);
+
+ // This section may not have been created.
+ if (status == 0)
+ {
+ while (this->repo_->config ()->enumerate_values (get_excepts_key,
+ index,
+ field_name,
+ type)
+ == 0)
+ {
+ ACE_TString get_except_path;
+ this->repo_->config ()->get_string_value (get_excepts_key,
+ field_name.c_str (),
+ get_except_path);
+
+ ACE_Configuration_Section_Key get_except_key;
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ get_except_path,
+ get_except_key,
+ 0);
+
+ key_queue.enqueue_tail (get_except_key);
+ ++index;
+ }
+ }
+
+ CORBA_ExcDescriptionSeq get_ed_seq (index);
+ get_ed_seq.length (index);
+
+ for (i = 0; i < (CORBA::ULong) index; ++i)
+ {
+ ACE_Configuration_Section_Key key;
+ key_queue.dequeue_head (key);
+
+ CORBA_ExceptionDescription get_ed;
+
+ ACE_TString name;
+ this->repo_->config ()->get_string_value (key,
+ "name",
+ name);
+
+ get_ed.name = name.c_str ();
+
+ ACE_TString id;
+ this->repo_->config ()->get_string_value (key,
+ "id",
+ id);
+
+ get_ed.id = id.c_str ();
+
+ ACE_TString container_id;
+ this->repo_->config ()->get_string_value (key,
+ "container_id",
+ container_id);
+
+ get_ed.defined_in = container_id.c_str ();
+
+ ACE_TString version;
+ this->repo_->config ()->get_string_value (key,
+ "version",
+ version);
+
+ get_ed.version = version.c_str ();
+
+ TAO_ExceptionDef_i impl (this->repo_,
+ key);
+
+ get_ed.type = impl.type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (ad);
+
+ get_ed_seq[i] = get_ed;
+ }
+
+ ad.get_exceptions = get_ed_seq;
+ index = 0;
+
+ // 'put' exceptions
+
+ ACE_Configuration_Section_Key put_excepts_key;
+ status =
+ this->repo_->config ()->open_section (this->section_key_,
+ "put_excepts",
+ 0,
+ put_excepts_key);
+
+ // This section may not have been created.
+ if (status == 0)
+ {
+ while (this->repo_->config ()->enumerate_values (put_excepts_key,
+ index,
+ field_name,
+ type)
+ == 0)
+ {
+ ACE_TString put_except_path;
+ this->repo_->config ()->get_string_value (put_excepts_key,
+ field_name.c_str (),
+ put_except_path);
+
+ ACE_Configuration_Section_Key put_except_key;
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ put_except_path,
+ put_except_key,
+ 0);
+
+ key_queue.enqueue_tail (put_except_key);
+ ++index;
+ }
+ }
+
+ CORBA_ExcDescriptionSeq put_ed_seq (index);
+ put_ed_seq.length (index);
+
+ for (i = 0; i < (CORBA::ULong) index; ++i)
+ {
+ ACE_Configuration_Section_Key key;
+ key_queue.dequeue_head (key);
+
+ CORBA_ExceptionDescription put_ed;
+
+ ACE_TString name;
+ this->repo_->config ()->get_string_value (key,
+ "name",
+ name);
+
+ put_ed.name = name.c_str ();
+
+ ACE_TString id;
+ this->repo_->config ()->get_string_value (key,
+ "id",
+ id);
+
+ put_ed.id = id.c_str ();
+
+ ACE_TString container_id;
+ this->repo_->config ()->get_string_value (key,
+ "container_id",
+ container_id);
+
+ put_ed.defined_in = container_id.c_str ();
+
+ ACE_TString version;
+ this->repo_->config ()->get_string_value (key,
+ "version",
+ version);
+
+ put_ed.version = version.c_str ();
+
+ TAO_ExceptionDef_i impl (this->repo_,
+ key);
+
+ put_ed.type = impl.type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (ad);
+
+ put_ed_seq[i] = put_ed;
+ }
+
+ ad.put_exceptions = put_ed_seq;
+*/
+ return ad;
+}
+
+CORBA_ExceptionDefSeq *
+TAO_AttributeDef_i::get_exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_Unbounded_Queue<ACE_TString> path_queue;
+ int index = 0;
+ ACE_Configuration::VALUETYPE type;
+ ACE_TString field_name;
+
+ ACE_Configuration_Section_Key get_excepts_key;
+ int status =
+ this->repo_->config ()->open_section (this->section_key_,
+ "get_excepts",
+ 0,
+ get_excepts_key);
+
+ // This section may not have been created.
+ if (status == 0)
+ {
+ ACE_TString get_except_path;
+ ACE_Configuration_Section_Key dummy;
+
+ while (this->repo_->config ()->enumerate_values (get_excepts_key,
+ index++,
+ field_name,
+ type)
+ == 0)
+ {
+ this->repo_->config ()->get_string_value (get_excepts_key,
+ field_name.c_str (),
+ get_except_path);
+
+ // This exception may have been destroyed
+ status =
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ get_except_path,
+ dummy,
+ 0);
+
+ if (status == 0)
+ {
+ path_queue.enqueue_tail (get_except_path);
+ }
+ }
+ }
+
+ size_t size = path_queue.size ();
+
+ CORBA_ExceptionDefSeq *get_ed_seq = 0;
+ ACE_NEW_THROW_EX (get_ed_seq,
+ CORBA_ExceptionDefSeq (size),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ get_ed_seq->length (size);
+
+ CORBA_ExceptionDefSeq_var retval = get_ed_seq;
+
+ for (CORBA::ULong i = 0; i < size; ++i)
+ {
+ ACE_TString path;
+ path_queue.dequeue_head (path);
+
+ CORBA::Object_var obj =
+ this->repo_->servant_factory ()->create_objref (CORBA::dk_Exception,
+ path.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ retval[i] = CORBA_ExceptionDef::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+ }
+
+ return retval._retn ();
+}
+
+CORBA_ExceptionDefSeq *
+TAO_AttributeDef_i::put_exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_Unbounded_Queue<ACE_TString> path_queue;
+ int index = 0;
+ ACE_Configuration::VALUETYPE type;
+ ACE_TString field_name;
+
+ ACE_Configuration_Section_Key put_excepts_key;
+ int status =
+ this->repo_->config ()->open_section (this->section_key_,
+ "put_excepts",
+ 0,
+ put_excepts_key);
+
+ // This section may not have been created.
+ if (status == 0)
+ {
+ ACE_TString put_except_path;
+ ACE_Configuration_Section_Key dummy;
+
+ while (this->repo_->config ()->enumerate_values (put_excepts_key,
+ index++,
+ field_name,
+ type)
+ == 0)
+ {
+ this->repo_->config ()->get_string_value (put_excepts_key,
+ field_name.c_str (),
+ put_except_path);
+
+ // This exception may have been destroyed
+ status =
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ put_except_path,
+ dummy,
+ 0);
+
+ if (status == 0)
+ {
+ path_queue.enqueue_tail (put_except_path);
+ }
+ }
+ }
+
+ size_t size = path_queue.size ();
+
+ CORBA_ExceptionDefSeq *put_ed_seq = 0;
+ ACE_NEW_THROW_EX (put_ed_seq,
+ CORBA_ExceptionDefSeq (size),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ put_ed_seq->length (size);
+
+ CORBA_ExceptionDefSeq_var retval = put_ed_seq;
+
+ for (CORBA::ULong i = 0; i < size; ++i)
+ {
+ ACE_TString path;
+ path_queue.dequeue_head (path);
+
+ CORBA::Object_var obj =
+ this->repo_->servant_factory ()->create_objref (CORBA::dk_Exception,
+ path.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ retval[i] = CORBA_ExceptionDef::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+ }
+
+ return retval._retn ();
+}
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/AttributeDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/AttributeDef_i.h
new file mode 100644
index 00000000000..f564056a4d7
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/AttributeDef_i.h
@@ -0,0 +1,150 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// AttributeDef_i.h
+//
+// = DESCRIPTION
+// AttributeDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_ATTRIBUTEDEF_I_H
+#define TAO_ATTRIBUTEDEF_I_H
+
+#include "Contained_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_IFRService_Export TAO_AttributeDef_i : public virtual TAO_Contained_i
+{
+ // = TITLE
+ // TAO_AttributeDef_i
+ //
+ // = DESCRIPTION
+ // Represents the information that describes an attribute
+ // of an interface.
+ //
+public:
+ TAO_AttributeDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor
+
+ virtual ~TAO_AttributeDef_i (void);
+ // Destructor
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Return our definition kind.
+
+ virtual CORBA_Contained::Description *describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+
+ virtual CORBA_Contained::Description *describe_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+
+ virtual CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA::TypeCode_ptr type_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_IDLType_ptr type_def (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_IDLType_ptr type_def_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void type_def (
+ CORBA_IDLType_ptr type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void type_def_i (
+ CORBA_IDLType_ptr type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::AttributeMode mode (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA::AttributeMode mode_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void mode (
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void mode_i (
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_AttributeDescription make_description (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Common code for InterfaceDef to call in
+ // making its own description.
+
+ // These two are called by Contained::move().
+ CORBA_ExceptionDefSeq *get_exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_ExceptionDefSeq *put_exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_ATTRIBUTEDEF_I_H */
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/ComponentDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/ComponentDef_i.cpp
new file mode 100644
index 00000000000..404cbceb9d2
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/ComponentDef_i.cpp
@@ -0,0 +1,383 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "Repository_i.h"
+#include "ComponentDef_i.h"
+
+ACE_RCSID(IFR_Service, ComponentDef_i, "$Id$")
+
+TAO_ComponentDef_i::TAO_ComponentDef_i (
+ TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key
+ )
+ : TAO_IRObject_i (repo, section_key),
+ TAO_Container_i (repo, section_key),
+ TAO_Contained_i (repo, section_key),
+ TAO_IDLType_i (repo, section_key),
+ TAO_InterfaceDef_i (repo, section_key)
+{
+}
+
+TAO_ComponentDef_i::~TAO_ComponentDef_i (void)
+{
+}
+
+CORBA::DefinitionKind
+TAO_ComponentDef_i::def_kind (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::dk_Component;
+}
+
+void
+TAO_ComponentDef_i::destroy (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+void
+TAO_ComponentDef_i::destroy_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+}
+
+CORBA_Contained::Description *
+TAO_ComponentDef_i::describe (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->describe_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_Contained::Description *
+TAO_ComponentDef_i::describe_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+CORBA::TypeCode_ptr
+TAO_ComponentDef_i::type (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::TypeCode_ptr
+TAO_ComponentDef_i::type_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+CORBA_InterfaceDefSeq *
+TAO_ComponentDef_i::supported_interfaces (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->supported_interfaces_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_InterfaceDefSeq *
+TAO_ComponentDef_i::supported_interfaces_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+void
+TAO_ComponentDef_i::supported_interfaces (
+ const CORBA_InterfaceDefSeq &supported_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->supported_interfaces_i (supported_interfaces
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ComponentDef_i::supported_interfaces_i (
+ const CORBA_InterfaceDefSeq & /* supported_interfaces */
+ ACE_ENV_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+}
+
+IR::ComponentDef_ptr
+TAO_ComponentDef_i::base_component (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (IR::ComponentDef::_nil ());
+
+ return this->base_component_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+IR::ComponentDef_ptr
+TAO_ComponentDef_i::base_component_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+IR::ProvidesDefSeq *
+TAO_ComponentDef_i::provides_interfaces (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->provides_interfaces_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+IR::ProvidesDefSeq *
+TAO_ComponentDef_i::provides_interfaces_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+IR::UsesDefSeq *
+TAO_ComponentDef_i::uses_interfaces (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->uses_interfaces_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+IR::UsesDefSeq *
+TAO_ComponentDef_i::uses_interfaces_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+IR::EmitsDefSeq *
+TAO_ComponentDef_i::emits_events (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->emits_events_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+IR::EmitsDefSeq *
+TAO_ComponentDef_i::emits_events_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+IR::PublishesDefSeq *
+TAO_ComponentDef_i::publishes_events (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->publishes_events_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+IR::PublishesDefSeq *
+TAO_ComponentDef_i::publishes_events_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+IR::ConsumesDefSeq *
+TAO_ComponentDef_i::consumes_events (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->consumes_events_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+IR::ConsumesDefSeq *
+TAO_ComponentDef_i::consumes_events_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+CORBA::Boolean
+TAO_ComponentDef_i::is_basic (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+IR::ProvidesDef_ptr
+TAO_ComponentDef_i::create_provides (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_InterfaceDef_ptr interface_type
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD_RETURN (IR::ProvidesDef::_nil ());
+
+ return this->create_provides_i (id,
+ name,
+ version,
+ interface_type
+ ACE_ENV_ARG_PARAMETER);
+}
+
+IR::ProvidesDef_ptr
+TAO_ComponentDef_i::create_provides_i (
+ const char * /* id */,
+ const char * /* name */,
+ const char * /* version */,
+ CORBA_InterfaceDef_ptr /* interface_type */
+ ACE_ENV_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+IR::UsesDef_ptr
+TAO_ComponentDef_i::create_uses (const char *id,
+ const char *name,
+ const char *version,
+ CORBA_InterfaceDef_ptr interface_type,
+ CORBA::Boolean is_multiple
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD_RETURN (IR::UsesDef::_nil ());
+
+ return this->create_uses_i (id,
+ name,
+ version,
+ interface_type,
+ is_multiple
+ ACE_ENV_ARG_PARAMETER);
+}
+
+IR::UsesDef_ptr
+TAO_ComponentDef_i::create_uses_i (const char * /* id */,
+ const char * /* name */,
+ const char * /* version */,
+ CORBA_InterfaceDef_ptr /* interface_type */,
+ CORBA::Boolean /* is_multiple */
+ ACE_ENV_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+IR::EmitsDef_ptr
+TAO_ComponentDef_i::create_emits (const char *id,
+ const char *name,
+ const char *version,
+ CORBA_ValueDef_ptr value
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD_RETURN (IR::EmitsDef::_nil ());
+
+ return this->create_emits_i (id,
+ name,
+ version,
+ value
+ ACE_ENV_ARG_PARAMETER);
+}
+
+IR::EmitsDef_ptr
+TAO_ComponentDef_i::create_emits_i (const char * /* id */,
+ const char * /* name */,
+ const char * /* version */,
+ CORBA_ValueDef_ptr /* value */
+ ACE_ENV_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+IR::PublishesDef_ptr
+TAO_ComponentDef_i::create_publishes (const char *id,
+ const char *name,
+ const char *version,
+ CORBA_ValueDef_ptr value
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD_RETURN (IR::PublishesDef::_nil ());
+
+ return this->create_publishes_i (id,
+ name,
+ version,
+ value
+ ACE_ENV_ARG_PARAMETER);
+}
+
+IR::PublishesDef_ptr
+TAO_ComponentDef_i::create_publishes_i (const char * /* id */,
+ const char * /* name */,
+ const char * /* version */,
+ CORBA_ValueDef_ptr /* value */
+ ACE_ENV_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+IR::ConsumesDef_ptr
+TAO_ComponentDef_i::create_consumes (const char *id,
+ const char *name,
+ const char *version,
+ CORBA_ValueDef_ptr value
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD_RETURN (IR::ConsumesDef::_nil ());
+
+ return this->create_consumes_i (id,
+ name,
+ version,
+ value
+ ACE_ENV_ARG_PARAMETER);
+}
+
+IR::ConsumesDef_ptr
+TAO_ComponentDef_i::create_consumes_i (const char * /* id */,
+ const char * /* name */,
+ const char * /* version */,
+ CORBA_ValueDef_ptr /* value */
+ ACE_ENV_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/ComponentDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/ComponentDef_i.h
new file mode 100644
index 00000000000..1228478c8c2
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/ComponentDef_i.h
@@ -0,0 +1,288 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// ComponentDef_i.h
+//
+// = DESCRIPTION
+// ComponentDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_COMPONENTDEF_I_H
+#define TAO_COMPONENTDEF_I_H
+
+#include "InterfaceDef_i.h"
+#include "ifr_service_export.h"
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+
+#include "IFR_ComponentsS.h"
+
+#if defined(_MSC_VER)
+#if (_MSC_VER >= 1200)
+#pragma warning(push)
+#endif /* _MSC_VER >= 1200 */
+#pragma warning(disable:4250)
+#endif /* _MSC_VER */
+
+class TAO_IFRService_Export TAO_ComponentDef_i : public virtual TAO_InterfaceDef_i
+{
+ // = TITLE
+ // TAO_ComponentDef_i
+ //
+ // = DESCRIPTION
+ // Represents a component definition.
+ //
+public:
+ TAO_ComponentDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor
+
+ virtual ~TAO_ComponentDef_i (void);
+ // Destructor
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Return our definition kind.
+
+ virtual void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Remove the repository entry.
+
+ virtual void destroy_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Remove the repository entry.
+
+ virtual CORBA_Contained::Description *describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+
+ virtual CORBA_Contained::Description *describe_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+
+ virtual CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From IDLType_i's pure virtual function.
+
+ virtual CORBA::TypeCode_ptr type_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From IDLType_i's pure virtual function.
+
+ virtual CORBA_InterfaceDefSeq *supported_interfaces (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_InterfaceDefSeq *supported_interfaces_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void supported_interfaces (
+ const CORBA_InterfaceDefSeq &supported_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void supported_interfaces_i (
+ const CORBA_InterfaceDefSeq &supported_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual IR::ComponentDef_ptr base_component (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ IR::ComponentDef_ptr base_component_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual IR::ProvidesDefSeq *provides_interfaces (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ IR::ProvidesDefSeq *provides_interfaces_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual IR::UsesDefSeq *uses_interfaces (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ IR::UsesDefSeq *uses_interfaces_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual IR::EmitsDefSeq *emits_events (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ IR::EmitsDefSeq *emits_events_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual IR::PublishesDefSeq *publishes_events (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ IR::PublishesDefSeq *publishes_events_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual IR::ConsumesDefSeq *consumes_events (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ IR::ConsumesDefSeq *consumes_events_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean is_basic (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA::Boolean is_basic_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual IR::ProvidesDef_ptr create_provides (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_InterfaceDef_ptr interface_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ IR::ProvidesDef_ptr create_provides_i (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_InterfaceDef_ptr interface_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual IR::UsesDef_ptr create_uses (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_InterfaceDef_ptr interface_type,
+ CORBA::Boolean is_multiple
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ IR::UsesDef_ptr create_uses_i (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_InterfaceDef_ptr interface_type,
+ CORBA::Boolean is_multiple
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual IR::EmitsDef_ptr create_emits (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_ValueDef_ptr value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ IR::EmitsDef_ptr create_emits_i (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_ValueDef_ptr value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual IR::PublishesDef_ptr create_publishes (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_ValueDef_ptr value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ IR::PublishesDef_ptr create_publishes_i (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_ValueDef_ptr value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual IR::ConsumesDef_ptr create_consumes (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_ValueDef_ptr value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ IR::ConsumesDef_ptr create_consumes_i (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_ValueDef_ptr value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_COMPONENTDEF_I_H */
+
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/ComponentRepository_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/ComponentRepository_i.cpp
new file mode 100644
index 00000000000..cbaeaae6da6
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/ComponentRepository_i.cpp
@@ -0,0 +1,97 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "ComponentRepository_i.h"
+
+ACE_RCSID(IFR_Service, ComponentRepository_i, "$Id$")
+
+TAO_ComponentRepository_i::TAO_ComponentRepository_i (
+ CORBA::ORB_ptr orb,
+ PortableServer::POA_ptr poa,
+ ACE_Configuration *config
+ )
+ : TAO_IRObject_i (0, ACE_Configuration_Section_Key ()),
+ TAO_Container_i (0, ACE_Configuration_Section_Key ()),
+ TAO_Repository_i (orb, poa, config)
+{
+}
+
+TAO_ComponentRepository_i::~TAO_ComponentRepository_i (void)
+{
+}
+
+IR::ComponentDef_ptr
+TAO_ComponentRepository_i::create_component (
+ const char *id,
+ const char *name,
+ const char *version,
+ IR::ComponentDef_ptr base_component,
+ const CORBA_InterfaceDefSeq & supports_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD_RETURN (IR::ComponentDef::_nil ());
+
+ return this->create_component_i (id,
+ name,
+ version,
+ base_component,
+ supports_interfaces
+ ACE_ENV_ARG_PARAMETER);
+}
+
+IR::ComponentDef_ptr
+TAO_ComponentRepository_i::create_component_i (
+ const char * /* id */,
+ const char * /* name */,
+ const char * /* version */,
+ IR::ComponentDef_ptr /* base_component */,
+ const CORBA_InterfaceDefSeq & /* supports_interfaces */
+ ACE_ENV_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+IR::HomeDef_ptr
+TAO_ComponentRepository_i::create_home (
+ const char *id,
+ const char *name,
+ const char *version,
+ IR::HomeDef_ptr base_component,
+ IR::ComponentDef_ptr managed_component,
+ CORBA_ValueDef_ptr primary_key
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD_RETURN (IR::HomeDef::_nil ());
+
+ return this->create_home_i (id,
+ name,
+ version,
+ base_component,
+ managed_component,
+ primary_key
+ ACE_ENV_ARG_PARAMETER);
+}
+
+IR::HomeDef_ptr
+TAO_ComponentRepository_i::create_home_i (
+ const char * /* id */,
+ const char * /* name */,
+ const char * /* version */,
+ IR::HomeDef_ptr /* base_component */,
+ IR::ComponentDef_ptr /* managed_component */,
+ CORBA_ValueDef_ptr /* primary_key */
+ ACE_ENV_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/ComponentRepository_i.h b/TAO/orbsvcs/orbsvcs/IFRService/ComponentRepository_i.h
new file mode 100644
index 00000000000..b82a165939b
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/ComponentRepository_i.h
@@ -0,0 +1,105 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// ComponentRepository_i.h
+//
+// = DESCRIPTION
+// ComponentRepository servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_COMPONENTREPOSITORY_I_H
+#define TAO_COMPONENTREPOSITORY_I_H
+
+#include "Repository_i.h"
+#include "ifr_service_export.h"
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+
+#include "IFR_ComponentsS.h"
+
+#if defined(_MSC_VER)
+#if (_MSC_VER >= 1200)
+#pragma warning(push)
+#endif /* _MSC_VER >= 1200 */
+#pragma warning(disable:4250)
+#endif /* _MSC_VER */
+
+class TAO_IFRService_Export TAO_ComponentRepository_i : public TAO_Repository_i
+{
+ // = TITLE
+ // TAO_ComponentRepository_i
+ //
+ // = DESCRIPTION
+ // Provides global access to the Interface Repository,
+ // including access to information related to
+ // CORBA Components.
+ //
+public:
+ TAO_ComponentRepository_i (CORBA::ORB_ptr orb,
+ PortableServer::POA_ptr poa,
+ ACE_Configuration *config);
+ // Constructor.
+
+ virtual ~TAO_ComponentRepository_i (void);
+ // Destructor.
+
+ virtual IR::ComponentDef_ptr create_component (
+ const char *id,
+ const char *name,
+ const char *version,
+ IR::ComponentDef_ptr base_component,
+ const CORBA_InterfaceDefSeq & supports_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ IR::ComponentDef_ptr create_component_i (
+ const char *id,
+ const char *name,
+ const char *version,
+ IR::ComponentDef_ptr base_component,
+ const CORBA_InterfaceDefSeq & supports_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual IR::HomeDef_ptr create_home (
+ const char *id,
+ const char *name,
+ const char *version,
+ IR::HomeDef_ptr base_home,
+ IR::ComponentDef_ptr managed_component,
+ CORBA_ValueDef_ptr primary_key
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ IR::HomeDef_ptr create_home_i (
+ const char *id,
+ const char *name,
+ const char *version,
+ IR::HomeDef_ptr base_home,
+ IR::ComponentDef_ptr managed_component,
+ CORBA_ValueDef_ptr primary_key
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_COMPONENTREPOSITORY_I_H */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/ConstantDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/ConstantDef_i.cpp
new file mode 100644
index 00000000000..0126fafe09d
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/ConstantDef_i.cpp
@@ -0,0 +1,290 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "ConstantDef_i.h"
+#include "Repository_i.h"
+#include "IDLType_i.h"
+#include "Servant_Factory.h"
+#include "ace/Auto_Ptr.h"
+
+ACE_RCSID(IFR_Service, ConstantDef_i, "$Id$")
+
+TAO_ConstantDef_i::TAO_ConstantDef_i (
+ TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key
+ )
+ : TAO_IRObject_i (repo, section_key),
+ TAO_Contained_i (repo, section_key)
+{
+}
+
+TAO_ConstantDef_i::~TAO_ConstantDef_i (void)
+{
+}
+
+CORBA::DefinitionKind
+TAO_ConstantDef_i::def_kind (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::dk_Constant;
+}
+
+CORBA_Contained::Description *
+TAO_ConstantDef_i::describe (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->describe_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_Contained::Description *
+TAO_ConstantDef_i::describe_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA_Contained::Description *desc_ptr = 0;
+ ACE_NEW_THROW_EX (desc_ptr,
+ CORBA_Contained::Description,
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ CORBA_Contained::Description_var retval = desc_ptr;
+
+ retval->kind = this->def_kind (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA_ConstantDescription cd;
+
+ cd.name = this->name_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ cd.id = this->id_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ ACE_TString container_id;
+
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "container_id",
+ container_id);
+
+ cd.defined_in = container_id.c_str ();
+
+ cd.version = this->version_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ cd.type = this->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var val = this->value_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ cd.value = val.in ();
+
+ retval->value <<= cd;
+
+ return retval._retn ();
+}
+
+CORBA::TypeCode_ptr
+TAO_ConstantDef_i::type (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::TypeCode_ptr
+TAO_ConstantDef_i::type_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString type_path;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "type_path",
+ type_path);
+
+ ACE_Configuration_Section_Key type_key;
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ type_path,
+ type_key,
+ 0);
+
+ TAO_IDLType_i *impl =
+ this->repo_->servant_factory ()->create_idltype (type_key
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA::TypeCode::_nil ());
+
+ auto_ptr<TAO_IDLType_i> safety (impl);
+
+ return impl->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_IDLType_ptr
+TAO_ConstantDef_i::type_def (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA_IDLType::_nil ());
+
+ return this->type_def_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_IDLType_ptr
+TAO_ConstantDef_i::type_def_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString type_path;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "type_path",
+ type_path);
+
+ ACE_Configuration_Section_Key type_key;
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ type_path,
+ type_key,
+ 0);
+
+ u_int kind = 0;
+ this->repo_->config ()->get_integer_value (type_key,
+ "def_kind",
+ kind);
+
+ CORBA::DefinitionKind def_kind =
+ ACE_static_cast (CORBA::DefinitionKind, kind);
+
+ CORBA::Object_var obj =
+ this->repo_->servant_factory ()->create_objref (def_kind,
+ type_path.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_IDLType::_nil ());
+
+ return CORBA_IDLType::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ConstantDef_i::type_def (CORBA_IDLType_ptr type_def
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->type_def_i (type_def
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ConstantDef_i::type_def_i (CORBA_IDLType_ptr type_def
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ PortableServer::ObjectId_var oid =
+ this->repo_->ir_poa ()->reference_to_id (type_def
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ CORBA::String_var type_path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ this->repo_->config ()->set_string_value (this->section_key_,
+ "type_path",
+ type_path.in ());
+}
+
+CORBA::Any *
+TAO_ConstantDef_i::value (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->value_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::Any *
+TAO_ConstantDef_i::value_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA::TypeCode_var tc = this->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ void *ref = 0;
+ u_int length = 0;
+
+ this->repo_->config ()->get_binary_value (
+ this->section_key_,
+ "value",
+ ref,
+ length
+ );
+
+ char *data = ACE_static_cast (char *, ref);
+
+ ACE_Auto_Basic_Array_Ptr<char> safety (data);
+
+ ACE_Message_Block mb (data,
+ length);
+
+ mb.length (length);
+
+ CORBA::Any *retval = 0;
+ ACE_NEW_THROW_EX (retval,
+ CORBA::Any (tc.in (),
+ 0,
+ TAO_ENCAP_BYTE_ORDER,
+ &mb),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return retval;
+}
+
+void
+TAO_ConstantDef_i::value (const CORBA::Any &value
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->value_i (value
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ConstantDef_i::value_i (const CORBA::Any &value
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA::TypeCode_var my_tc = this->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ CORBA::TypeCode_var val_tc = value.type ();
+
+ if (!my_tc.in ()->equal (val_tc.in ()))
+ return;
+
+ ACE_Message_Block *mb = value._tao_get_cdr ();
+
+ CORBA::TCKind kind = val_tc->kind (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ switch (kind)
+ {
+ // The data for these types will be aligned to an 8-byte
+ // boundary, while the rd_ptr may not.
+ case CORBA::tk_double:
+ case CORBA::tk_ulonglong:
+ case CORBA::tk_longlong:
+ case CORBA::tk_longdouble:
+ mb->rd_ptr (ACE_ptr_align_binary (mb->rd_ptr (),
+ ACE_CDR::MAX_ALIGNMENT));
+ break;
+ default:
+ break;
+ }
+
+ mb->crunch ();
+
+ this->repo_->config ()->set_binary_value (this->section_key_,
+ "value",
+ mb->base (),
+ mb->length ());
+}
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/ConstantDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/ConstantDef_i.h
new file mode 100644
index 00000000000..0419041fd77
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/ConstantDef_i.h
@@ -0,0 +1,131 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// ConstantDef_i.h
+//
+// = DESCRIPTION
+// ConstantDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_CONSTANTDEF_I_H
+#define TAO_CONSTANTDEF_I_H
+
+#include "Contained_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_IFRService_Export TAO_ConstantDef_i : public virtual TAO_Contained_i
+{
+ // = TITLE
+ // TAO_ConstantDef_i
+ //
+ // = DESCRIPTION
+ // Represents a named constant.
+ //
+public:
+ TAO_ConstantDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor
+
+ virtual ~TAO_ConstantDef_i (void);
+ // Destructor
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Return our definition kind.
+
+ virtual CORBA_Contained::Description *describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+
+ virtual CORBA_Contained::Description *describe_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+
+ virtual CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA::TypeCode_ptr type_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_IDLType_ptr type_def (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_IDLType_ptr type_def_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void type_def (
+ CORBA_IDLType_ptr type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void type_def_i (
+ CORBA_IDLType_ptr type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any *value (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA::Any *value_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void value (
+ const CORBA::Any &value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void value_i (
+ const CORBA::Any &value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_CONSTANTDEF_I_H */
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/ConsumesDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/ConsumesDef_i.cpp
new file mode 100644
index 00000000000..e03833001b3
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/ConsumesDef_i.cpp
@@ -0,0 +1,62 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "Repository_i.h"
+#include "ConsumesDef_i.h"
+
+ACE_RCSID(IFR_Service, ConsumesDef_i, "$Id$")
+
+TAO_ConsumesDef_i::TAO_ConsumesDef_i (
+ TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key
+ )
+ : TAO_IRObject_i (repo, section_key),
+ TAO_Contained_i (repo, section_key),
+ TAO_EventDef_i (repo, section_key)
+{
+}
+
+TAO_ConsumesDef_i::~TAO_ConsumesDef_i (void)
+{
+}
+
+CORBA::DefinitionKind
+TAO_ConsumesDef_i::def_kind (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::dk_Consumes;
+}
+
+void
+TAO_ConsumesDef_i::destroy (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+void
+TAO_ConsumesDef_i::destroy_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+}
+
+CORBA_Contained::Description *
+TAO_ConsumesDef_i::describe (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->describe_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_Contained::Description *
+TAO_ConsumesDef_i::describe_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/ConsumesDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/ConsumesDef_i.h
new file mode 100644
index 00000000000..b6211f10edb
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/ConsumesDef_i.h
@@ -0,0 +1,90 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// ConsumesDef_i.h
+//
+// = DESCRIPTION
+// ConsumesDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_CONSUMESDEF_I_H
+#define TAO_CONSUMESDEF_I_H
+
+#include "EventDef_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_IFRService_Export TAO_ConsumesDef_i : public virtual TAO_EventDef_i
+{
+ // = TITLE
+ // TAO_ConsumesDef_i
+ //
+ // = DESCRIPTION
+ // Represents the definition of an event that is consumed
+ // by a component.
+ //
+public:
+ TAO_ConsumesDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor
+
+ virtual ~TAO_ConsumesDef_i (void);
+ // Destructor
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Return our definition kind.
+
+ virtual void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Remove the repository entry.
+
+ virtual void destroy_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_Contained::Description *describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+
+ virtual CORBA_Contained::Description *describe_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_CONSUMESDEF_I_H */
+
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/Contained_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/Contained_i.cpp
new file mode 100644
index 00000000000..a4cf9266e73
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/Contained_i.cpp
@@ -0,0 +1,1182 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "concrete_classes.h"
+#include "Servant_Factory.h"
+#include "ace/Auto_Ptr.h"
+
+ACE_RCSID(IFR_Service, Contained_i, "$Id$")
+
+TAO_Contained_i::TAO_Contained_i (
+ TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key
+ )
+ : TAO_IRObject_i (repo, section_key)
+{
+}
+
+TAO_Contained_i::~TAO_Contained_i (void)
+{
+}
+
+void
+TAO_Contained_i::destroy (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+void
+TAO_Contained_i::destroy_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString id;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "id",
+ id);
+
+ // We'll get the last segment of this below.
+ ACE_TString path;
+ this->repo_->config ()->get_string_value (this->repo_->repo_ids_key (),
+ id.c_str (),
+ path);
+
+ // Remove the repo id.
+ this->repo_->config ()->remove_value (this->repo_->repo_ids_key (),
+ id.c_str ());
+
+ // Remove the database entry.
+ ACE_TString container_id;
+ ACE_Configuration_Section_Key parent_key;
+
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "container_id",
+ container_id);
+
+ if (container_id == "")
+ {
+ parent_key = this->repo_->root_key ();
+ }
+ else
+ {
+ ACE_TString parent_path;
+ this->repo_->config ()->get_string_value (this->repo_->repo_ids_key (),
+ container_id.c_str (),
+ parent_path);
+
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ parent_path,
+ parent_key,
+ 0);
+ }
+
+ ACE_Configuration_Section_Key defns_key;
+ this->repo_->config ()->open_section (parent_key,
+ "defns",
+ 0,
+ defns_key);
+
+ ACE_TString last_seg = path.substr (path.rfind ('\\') + 1);
+ this->repo_->config ()->remove_section (defns_key,
+ last_seg.c_str (),
+ 1);
+}
+
+char *
+TAO_Contained_i::id (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->id_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+char *
+TAO_Contained_i::id_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString retval;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "id",
+ retval);
+
+ return CORBA::string_dup (retval.c_str ());
+}
+
+void
+TAO_Contained_i::id (const char *id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->id_i (id
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_Contained_i::id_i (const char *id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString tmp;
+ if (this->repo_->config ()->get_string_value (
+ this->repo_->repo_ids_key (),
+ id,
+ tmp
+ )
+ == 0)
+ {
+ // Repository id already exists.
+ ACE_THROW (CORBA::BAD_PARAM (2, CORBA::COMPLETED_NO));
+ }
+
+ // Get the old id.
+ ACE_TString old_id;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "id",
+ old_id);
+
+ ACE_TString path;
+
+ // Fetch our path.
+ this->repo_->config ()->get_string_value (this->repo_->repo_ids_key (),
+ old_id.c_str (),
+ path);
+
+ // Remove the old id.
+ this->repo_->config ()->remove_value (this->repo_->repo_ids_key (),
+ old_id.c_str ());
+
+ // Save our path under the new id.
+ this->repo_->config ()->set_string_value (this->repo_->repo_ids_key (),
+ id,
+ path.c_str ());
+
+ // Store the new id locally as well.
+ this->repo_->config ()->set_string_value (this->section_key_,
+ "id",
+ id);
+}
+
+char *
+TAO_Contained_i::name (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->name_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+char *
+TAO_Contained_i::name_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString retval;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "name",
+ retval);
+
+ return CORBA::string_dup (retval.c_str ());
+}
+
+char *
+TAO_Contained_i::version (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->version_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+char *
+TAO_Contained_i::version_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString retval;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "version",
+ retval);
+
+ return CORBA::string_dup (retval.c_str ());
+}
+
+void
+TAO_Contained_i::name (const char *name
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->name_i (name
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_Contained_i::name_i (const char *name
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Check if name already exists in this container.
+ CORBA::Boolean exists = this->name_exists (name
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ if (exists)
+ {
+ ACE_THROW (CORBA::BAD_PARAM (3, CORBA::COMPLETED_NO));
+ }
+
+ // Reset the local name.
+ this->repo_->config ()->set_string_value (this->section_key_,
+ "name",
+ name);
+
+ // Update the absolute name.
+ ACE_TString absolute_name;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "absolute_name",
+ absolute_name);
+
+ absolute_name = absolute_name.substr (0, absolute_name.rfind (':') + 1);
+ absolute_name += name;
+
+ this->repo_->config ()->set_string_value (this->section_key_,
+ "absolute_name",
+ absolute_name);
+
+ this->contents_name_update (absolute_name,
+ this->section_key_);
+}
+
+void
+TAO_Contained_i::version (const char *version
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->version_i (version
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_Contained_i::version_i (const char *version
+ ACE_ENV_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ this->repo_->config ()->set_string_value (this->section_key_,
+ "version",
+ version);
+}
+
+CORBA_Container_ptr
+TAO_Contained_i::defined_in (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA_Container::_nil ());
+
+ return this->defined_in_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_Container_ptr
+TAO_Contained_i::defined_in_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString container_id;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "container_id",
+ container_id);
+
+ if (container_id == "")
+ // The repository itself it our container.
+ return this->repo_->repo_objref (); // already duplicated.
+
+ ACE_TString container_path;
+ this->repo_->config ()->get_string_value (this->repo_->repo_ids_key (),
+ container_id.c_str (),
+ container_path);
+
+ ACE_Configuration_Section_Key container_key;
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ container_path,
+ container_key);
+
+ u_int kind = 0;
+ this->repo_->config ()->get_integer_value (container_key,
+ "def_kind",
+ kind);
+
+ CORBA::DefinitionKind def_kind =
+ ACE_static_cast (CORBA::DefinitionKind, kind);
+
+ CORBA::Object_var obj =
+ this->repo_->servant_factory ()->create_objref (def_kind,
+ container_path.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_Container::_nil ());
+
+ CORBA_Container_var retval = CORBA_Container::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_Container::_nil ());
+
+ return retval._retn ();
+}
+
+char *
+TAO_Contained_i::absolute_name (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->absolute_name_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+char *
+TAO_Contained_i::absolute_name_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString absolute_name;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "absolute_name",
+ absolute_name);
+
+ return CORBA::string_dup (absolute_name.c_str ());
+}
+
+CORBA_Repository_ptr
+TAO_Contained_i::containing_repository (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA_Repository::_nil ());
+
+ return this->containing_repository_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_Repository_ptr
+TAO_Contained_i::containing_repository_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->repo_->repo_objref ();
+}
+
+void
+TAO_Contained_i::move (CORBA_Container_ptr new_container,
+ const char *new_name,
+ const char *new_version
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->move_i (new_container,
+ new_name,
+ new_version,
+ 1
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA::Boolean
+TAO_Contained_i::name_exists (const char *name
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString container_id;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "container_id",
+ container_id);
+
+ if (container_id == "")
+ {
+ return this->repo_->name_exists (name
+ ACE_ENV_ARG_PARAMETER);
+ }
+
+ ACE_TString container_path;
+ this->repo_->config ()->get_string_value (this->repo_->repo_ids_key (),
+ container_id.c_str (),
+ container_path);
+
+ ACE_Configuration_Section_Key container_key;
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ container_path,
+ container_key,
+ 0);
+
+ ACE_Configuration_Section_Key defns_key;
+ this->repo_->config ()->open_section (container_key,
+ "defns",
+ 0,
+ defns_key);
+
+ ACE_TString section_name;
+ int index = 0;
+
+ while (this->repo_->config ()->enumerate_sections (defns_key,
+ index++,
+ section_name)
+ == 0)
+ {
+ ACE_Configuration_Section_Key defn_key;
+ this->repo_->config ()->open_section (defns_key,
+ section_name.c_str (),
+ 0,
+ defn_key);
+
+ ACE_TString defn_name;
+ this->repo_->config ()->get_string_value (defn_key,
+ "name",
+ defn_name);
+
+ if (defn_name == name)
+ return 1;
+ }
+
+ return 0;
+}
+
+void
+TAO_Contained_i::contents_name_update (ACE_TString stem,
+ ACE_Configuration_Section_Key key)
+{
+ ACE_Configuration_Section_Key defns_key;
+ if (this->repo_->config ()->open_section (key,
+ "defns",
+ 0,
+ defns_key)
+ != 0)
+ {
+ return;
+ }
+
+ int index = 0;
+ ACE_TString sub_section;
+ while (this->repo_->config ()->enumerate_sections (defns_key,
+ index++,
+ sub_section)
+ == 0)
+ {
+ ACE_Configuration_Section_Key defn_key;
+
+ this->repo_->config ()->open_section (defns_key,
+ sub_section.c_str (),
+ 0,
+ defn_key);
+
+ ACE_TString name;
+ this->repo_->config ()->get_string_value (defn_key,
+ "name",
+ name);
+
+ ACE_TString absolute_name = stem + "::" + name;
+ this->repo_->config ()->set_string_value (defn_key,
+ "absolute_name",
+ absolute_name);
+
+ this->contents_name_update (absolute_name,
+ defn_key);
+ }
+}
+
+void
+TAO_Contained_i::move_i (CORBA_Container_ptr new_container,
+ const char *new_name,
+ const char *new_version,
+ CORBA::Boolean cleanup
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA_Repository_var my_repo =
+ this->containing_repository_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ CORBA::DefinitionKind container_dk =
+ new_container->def_kind (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ ACE_Configuration_Section_Key container_key;
+ TAO_Container_i *container_impl = 0;
+
+ // Check that we're not trying to move to a different repository,
+ // and set the container impl, used in each switch case below.
+ if (container_dk == CORBA::dk_Repository)
+ {
+ if (my_repo.in () != new_container)
+ {
+ ACE_THROW (CORBA::BAD_PARAM (4, CORBA::COMPLETED_NO));
+ }
+
+ container_key = this->repo_->root_key ();
+
+ container_impl = this->repo_;
+ }
+ else
+ {
+ PortableServer::ObjectId_var oid =
+ this->repo_->ir_poa ()->reference_to_id (new_container
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ CORBA::String_var container_path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ container_path.in (),
+ container_key,
+ 0);
+
+ TAO_Contained_i *impl =
+ this->repo_->servant_factory ()->create_contained (container_key
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ auto_ptr<TAO_Contained_i> safety (impl);
+
+ CORBA_Repository_var your_repo =
+ impl->containing_repository_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ if (my_repo.in () != your_repo.in ())
+ {
+ ACE_THROW (CORBA::BAD_PARAM (4, CORBA::COMPLETED_NO));
+ }
+
+ container_impl =
+ this->repo_->servant_factory ()->create_container (container_key
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+ }
+
+ CORBA::DefinitionKind my_dk = this->def_kind (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ CORBA::String_var id = this->id_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ // If an exception is thrown, this must be restored.
+ ACE_TString my_path;
+ this->repo_->config ()->get_string_value (this->repo_->repo_ids_key (),
+ id.in (),
+ my_path);
+
+ // Remove the repo id, because the create_* function call will add it
+ // again with a different path value.
+ this->repo_->config ()->remove_value (this->repo_->repo_ids_key (),
+ id.in ());
+
+ ACE_TRY
+ {
+ // Call the appropriate create function.
+ switch (my_dk)
+ {
+ case CORBA::dk_Enum:
+ {
+ TAO_EnumDef_i impl (this->repo_,
+ this->section_key_);
+
+ CORBA_EnumMemberSeq_var members = impl.members_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (container_dk == CORBA::dk_Struct
+ || container_dk == CORBA::dk_Union
+ || container_dk == CORBA::dk_Exception)
+ {
+ this->move_pre_process (new_container,
+ my_path.c_str (),
+ new_name
+ ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+
+ CORBA_EnumDef_var new_defn =
+ container_impl->create_enum_i (id.in (),
+ new_name,
+ new_version,
+ members.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ break;
+ }
+ case CORBA::dk_Alias:
+ {
+ TAO_AliasDef_i impl (this->repo_,
+ this->section_key_);
+
+ CORBA_IDLType_var otype = impl.original_type_def_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ container_impl->create_alias_i (id.in (),
+ new_name,
+ new_version,
+ otype.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ break;
+ }
+ case CORBA::dk_Native:
+ {
+ container_impl->create_native_i (id.in (),
+ new_name,
+ new_version
+ ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ break;
+ }
+ case CORBA::dk_ValueBox:
+ {
+ TAO_ValueBoxDef_i impl (this->repo_,
+ this->section_key_);
+
+ CORBA_IDLType_var otype = impl.original_type_def_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ container_impl->create_value_box_i (id.in (),
+ new_name,
+ new_version,
+ otype.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ break;
+ }
+ case CORBA::dk_Struct:
+ {
+ TAO_StructDef_i impl (this->repo_,
+ this->section_key_);
+
+ CORBA_StructMemberSeq_var members = impl.members_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (container_dk == CORBA::dk_Struct
+ || container_dk == CORBA::dk_Union
+ || container_dk == CORBA::dk_Exception)
+ {
+ this->move_pre_process (new_container,
+ my_path.c_str (),
+ new_name
+ ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+
+ CORBA_StructDef_var new_defn =
+ container_impl->create_struct_i (id.in (),
+ new_name,
+ new_version,
+ members.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ this->move_contents (new_defn.in ()
+ ACE_ENV_ARG_PARAMETER);
+
+ break;
+ }
+ case CORBA::dk_Union:
+ {
+ TAO_UnionDef_i impl (this->repo_,
+ this->section_key_);
+
+ CORBA_IDLType_var disc_type =
+ impl.discriminator_type_def_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ CORBA_UnionMemberSeq_var members = impl.members_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (container_dk == CORBA::dk_Struct
+ || container_dk == CORBA::dk_Union
+ || container_dk == CORBA::dk_Exception)
+ {
+ this->move_pre_process (new_container,
+ my_path.c_str (),
+ new_name
+ ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+
+ CORBA_UnionDef_var new_defn =
+ container_impl->create_union_i (id.in (),
+ new_name,
+ new_version,
+ disc_type.in (),
+ members.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ this->move_contents (new_defn.in ()
+ ACE_ENV_ARG_PARAMETER);
+
+ break;
+ }
+ case CORBA::dk_Module:
+ {
+ CORBA_ModuleDef_var new_defn =
+ container_impl->create_module_i (id.in (),
+ new_name,
+ new_version
+ ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ this->move_contents (new_defn.in ()
+ ACE_ENV_ARG_PARAMETER);
+
+ break;
+ }
+ case CORBA::dk_Exception:
+ {
+ TAO_ExceptionDef_i impl (this->repo_,
+ this->section_key_);
+
+ CORBA_StructMemberSeq_var members = impl.members_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ CORBA_ExceptionDef_var new_defn =
+ container_impl->create_exception_i (id.in (),
+ new_name,
+ new_version,
+ members.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ this->move_contents (new_defn.in ()
+ ACE_ENV_ARG_PARAMETER);
+
+ break;
+ }
+ case CORBA::dk_Interface:
+ {
+ TAO_InterfaceDef_i impl (this->repo_,
+ this->section_key_);
+
+ CORBA_InterfaceDefSeq_var bases =
+ impl.base_interfaces_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ CORBA_InterfaceDef_var new_defn =
+ container_impl->create_interface_i (id.in (),
+ new_name,
+ new_version,
+ bases.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ this->move_contents (new_defn.in ()
+ ACE_ENV_ARG_PARAMETER);
+
+ break;
+ }
+ case CORBA::dk_Constant:
+ {
+ TAO_ConstantDef_i impl (this->repo_,
+ this->section_key_);
+
+ CORBA_IDLType_var type_def = impl.type_def_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ CORBA::Any_var value = impl.value_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ container_impl->create_constant_i (id.in (),
+ new_name,
+ new_version,
+ type_def.in (),
+ value.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ break;
+ }
+ case CORBA::dk_Attribute:
+ {
+ TAO_AttributeDef_i impl (this->repo_,
+ this->section_key_);
+
+ CORBA_IDLType_var type_def = impl.type_def_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ CORBA::AttributeMode mode = impl.mode_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (container_dk == CORBA::dk_Interface)
+ {
+ TAO_InterfaceDef_i idef (this->repo_,
+ container_key);
+
+ idef.create_attribute_i (id.in (),
+ new_name,
+ new_version,
+ type_def.in (),
+ mode
+ ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ break;
+ }
+ else if (container_dk == CORBA::dk_Value)
+ {
+ TAO_ValueDef_i vdef (this->repo_,
+ container_key);
+
+ vdef.create_attribute_i (id.in (),
+ new_name,
+ new_version,
+ type_def.in (),
+ mode
+ ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ break;
+ }
+ else
+ {
+ ACE_THROW (CORBA::BAD_PARAM (4, CORBA::COMPLETED_NO));
+ }
+ }
+ case CORBA::dk_Operation:
+ {
+ TAO_OperationDef_i impl (this->repo_,
+ this->section_key_);
+
+ CORBA_IDLType_var result = impl.result_def_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ CORBA::OperationMode mode = impl.mode_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ CORBA_ParDescriptionSeq_var params = impl.params_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ CORBA_ExceptionDefSeq_var exceptions =
+ impl.exceptions_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ CORBA_ContextIdSeq_var contexts = impl.contexts_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (container_dk == CORBA::dk_Interface)
+ {
+ TAO_InterfaceDef_i idef (this->repo_,
+ container_key);
+
+ idef.create_operation_i (id.in (),
+ new_name,
+ new_version,
+ result.in (),
+ mode,
+ params.in (),
+ exceptions.in (),
+ contexts.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ break;
+ }
+ else if (container_dk == CORBA::dk_Value)
+ {
+ TAO_ValueDef_i vdef (this->repo_,
+ container_key);
+
+ vdef.create_operation_i (id.in (),
+ new_name,
+ new_version,
+ result.in (),
+ mode,
+ params.in (),
+ exceptions.in (),
+ contexts.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ break;
+ }
+ else
+ {
+ ACE_THROW (CORBA::BAD_PARAM (4, CORBA::COMPLETED_NO));
+ }
+ }
+ case CORBA::dk_Value:
+ case CORBA::dk_Home:
+ case CORBA::dk_Component:
+ case CORBA::dk_Factory:
+ case CORBA::dk_Finder:
+ case CORBA::dk_PrimaryKey:
+ case CORBA::dk_Provides:
+ case CORBA::dk_Uses:
+ case CORBA::dk_Emits:
+ case CORBA::dk_Publishes:
+ case CORBA::dk_Consumes:
+ case CORBA::dk_ValueMember:
+ // TODO
+ default:
+ break;
+ }
+ }
+ ACE_CATCHANY
+ {
+ // If the move was not successful, we must restore this.
+ this->repo_->config ()->set_string_value (
+ this->repo_->repo_ids_key (),
+ id.in (),
+ my_path.c_str ()
+ );
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+
+ if (cleanup)
+ {
+ // Remove the old database entry.
+ ACE_TString container_id;
+ ACE_Configuration_Section_Key parent_key;
+
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "container_id",
+ container_id);
+
+ if (container_id == "")
+ {
+ parent_key = this->repo_->root_key ();
+ }
+ else
+ {
+ ACE_TString parent_path;
+ this->repo_->config ()->get_string_value (this->repo_->repo_ids_key (),
+ container_id.c_str (),
+ parent_path);
+
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ parent_path,
+ parent_key,
+ 0);
+ }
+
+ ACE_Configuration_Section_Key defns_key;
+ this->repo_->config ()->open_section (parent_key,
+ "defns",
+ 0,
+ defns_key);
+
+ ACE_TString last_seg = my_path.substr (my_path.rfind ('\\') + 1);
+ this->repo_->config ()->remove_section (defns_key,
+ last_seg.c_str (),
+ 1);
+ }
+
+ if (container_dk != CORBA::dk_Repository)
+ delete container_impl;
+}
+
+void
+TAO_Contained_i::move_pre_process (CORBA_Container_ptr container,
+ const char *contained_path,
+ const char *name
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ PortableServer::ObjectId_var container_oid =
+ this->repo_->ir_poa ()->reference_to_id (container
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ CORBA::String_var container_path =
+ PortableServer::ObjectId_to_string (container_oid.in ());
+
+ ACE_Configuration_Section_Key container_key;
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ container_path.in (),
+ container_key,
+ 0);
+
+ ACE_Configuration_Section_Key refs_key;
+ this->repo_->config ()->open_section (container_key,
+ "refs",
+ 0,
+ refs_key);
+
+ int index = 0;
+ ACE_TString section_name;
+ while (this->repo_->config ()->enumerate_sections (refs_key,
+ index++,
+ section_name)
+ == 0)
+ {
+ ACE_Configuration_Section_Key ref_key;
+ this->repo_->config ()->open_section (refs_key,
+ section_name.c_str (),
+ 0,
+ ref_key);
+
+ ACE_TString ref_name;
+ this->repo_->config ()->get_string_value (ref_key,
+ "name",
+ ref_name);
+
+ ACE_TString path;
+ this->repo_->config ()->get_string_value (ref_key,
+ "path",
+ path);
+
+ if (ref_name == name && path == contained_path)
+ {
+ ref_name += this->repo_->extension ();
+ this->repo_->config ()->set_string_value (ref_key,
+ "name",
+ ref_name);
+
+ break;
+ }
+ }
+}
+
+void
+TAO_Contained_i::move_contents (CORBA_Container_ptr new_container
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString name;
+ ACE_TString version;
+
+ ACE_Configuration_Section_Key defns_key;
+ int status =
+ this->repo_->config ()->open_section (this->section_key_,
+ "defns",
+ 0,
+ defns_key);
+
+ if (status == 0)
+ {
+ u_int count = 0;
+ this->repo_->config ()->get_integer_value (defns_key,
+ "count",
+ count);
+
+ for (u_int i = 0; i < count; ++i)
+ {
+ ACE_Configuration_Section_Key defn_key;
+ CORBA::String_var section_name = this->int_to_string (i);
+ status =
+ this->repo_->config ()->open_section (defns_key,
+ section_name.in (),
+ 0,
+ defn_key);
+
+ if (status == 0)
+ {
+ this->repo_->config ()->get_string_value (defn_key,
+ "name",
+ name);
+
+ this->repo_->config ()->get_string_value (defn_key,
+ "version",
+ version);
+
+ TAO_Contained_i *impl =
+ this->repo_->servant_factory ()->create_contained (
+ defn_key
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+
+ auto_ptr<TAO_Contained_i> safety (impl);
+
+ impl->move_i (new_container,
+ name.c_str (),
+ version.c_str (),
+ 0
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+ }
+ }
+ }
+
+ CORBA::DefinitionKind kind = this->def_kind (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ // Specific to InterfaceDef_i and ValueDef_i
+ if (kind == CORBA::dk_Interface || kind == CORBA::dk_Value)
+ {
+ int index = 0;
+ ACE_TString section_name;
+
+ // Attributes
+ ACE_Configuration_Section_Key attrs_key;
+ int status =
+ this->repo_->config ()->open_section (this->section_key_,
+ "attrs",
+ 0,
+ attrs_key);
+
+ if (status == 0)
+ {
+ while (this->repo_->config ()->enumerate_sections (attrs_key,
+ index++,
+ section_name)
+ == 0)
+ {
+ ACE_Configuration_Section_Key attr_key;
+ this->repo_->config ()->open_section (attrs_key,
+ section_name.c_str (),
+ 0,
+ attr_key);
+
+ this->repo_->config ()->get_string_value (attr_key,
+ "name",
+ name);
+
+ this->repo_->config ()->get_string_value (attr_key,
+ "version",
+ version);
+
+ TAO_AttributeDef_i impl (this->repo_,
+ attr_key);
+
+ impl.move_i (new_container,
+ name.c_str (),
+ version.c_str (),
+ 0
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+ }
+ }
+
+ index = 0;
+
+ // Operations
+ ACE_Configuration_Section_Key ops_key;
+ status =
+ this->repo_->config ()->open_section (this->section_key_,
+ "ops",
+ 0,
+ ops_key);
+
+ if (status == 0)
+ {
+ while (this->repo_->config ()->enumerate_sections (ops_key,
+ index++,
+ section_name)
+ == 0)
+ {
+ ACE_Configuration_Section_Key op_key;
+ this->repo_->config ()->open_section (ops_key,
+ section_name.c_str (),
+ 0,
+ op_key);
+
+ this->repo_->config ()->get_string_value (op_key,
+ "name",
+ name);
+
+ this->repo_->config ()->get_string_value (op_key,
+ "version",
+ version);
+
+ TAO_OperationDef_i impl (this->repo_,
+ op_key);
+
+ impl.move_i (new_container,
+ name.c_str (),
+ version.c_str (),
+ 0
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+ }
+ }
+ }
+}
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/Contained_i.h b/TAO/orbsvcs/orbsvcs/IFRService/Contained_i.h
new file mode 100644
index 00000000000..a1a89d05b1a
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/Contained_i.h
@@ -0,0 +1,235 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// Contained_i.h
+//
+// = DESCRIPTION
+// Contained servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_CONTAINED_I_H
+#define TAO_CONTAINED_I_H
+
+#include "IRObject_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_IFRService_Export TAO_Contained_i : public virtual TAO_IRObject_i
+{
+ // = TITLE
+ // TAO_Contained_i
+ //
+ // = DESCRIPTION
+ // Abstract base class for all IR objects that are contained
+ // by other IR objects.
+ //
+public:
+ TAO_Contained_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor.
+
+ virtual ~TAO_Contained_i (void);
+ // Destructor.
+
+ virtual void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Remove the repository entry.
+
+ virtual void destroy_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char *id (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ char *id_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void id (
+ const char *id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void id_i (
+ const char *id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char *name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ char *name_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void name (
+ const char *name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void name_i (
+ const char *name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char *version (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ char *version_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void version (
+ const char *version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void version_i (
+ const char *version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_Container_ptr defined_in (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_Container_ptr defined_in_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char *absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ char *absolute_name_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_Repository_ptr containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_Repository_ptr containing_repository_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_Contained::Description *describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException)) = 0;
+ // Pure virtual.
+
+ virtual CORBA_Contained::Description *describe_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException)) = 0;
+ // Pure virtual.
+
+ virtual void move (
+ CORBA_Container_ptr new_container,
+ const char *new_name,
+ const char *new_version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+protected:
+ void move_i (
+ CORBA_Container_ptr new_container,
+ const char *new_name,
+ const char *new_version,
+ CORBA::Boolean cleanup
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Engine for move() with an extra 'cleanup'
+ // parameter. Since a section removal can be
+ // recursive, this need be done only at the top
+ // level.
+
+private:
+ CORBA::Boolean name_exists (
+ const char *name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Check if <name> already exists in our container
+
+ void contents_name_update (
+ ACE_TString stem,
+ ACE_Configuration_Section_Key key
+ );
+ // Recursively update the scoped name of our contents.
+
+ void move_pre_process (
+ CORBA_Container_ptr container,
+ const char *contained_path,
+ const char *name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Mangle the names of references that are also
+ // defined in the scope, so a name clash will
+ // not occur when create_* is called. Create_*
+ // unmangles the names.
+
+ void move_contents (
+ CORBA_Container_ptr new_container
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Recursively calls move_i for definitions,
+ // as well as operations and attributes if
+ // applicable.
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_CONTAINED_I_H */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/Container_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/Container_i.cpp
new file mode 100644
index 00000000000..88e98631ddf
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/Container_i.cpp
@@ -0,0 +1,2760 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "Repository_i.h"
+#include "InterfaceDef_i.h"
+#include "Servant_Factory.h"
+#include "ace/Auto_Ptr.h"
+
+ACE_RCSID(IFR_Service, Container_i, "$Id$")
+
+TAO_Container_i::TAO_Container_i (
+ TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key
+ )
+ : TAO_IRObject_i (repo, section_key)
+{
+}
+
+TAO_Container_i::~TAO_Container_i (void)
+{
+}
+
+void
+TAO_Container_i::destroy (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+void
+TAO_Container_i::destroy_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ int index = 0;
+ int status;
+ ACE_TString section_name;
+
+ // Destroy and/or remove references.
+
+ ACE_Configuration_Section_Key refs_key;
+ status =
+ this->repo_->config ()->open_section (this->section_key_,
+ "refs",
+ 0,
+ refs_key);
+
+ // This section may not have been created.
+ if (status == 0)
+ {
+ while (this->repo_->config ()->enumerate_sections (refs_key,
+ index++,
+ section_name)
+ == 0)
+ {
+ ACE_Configuration_Section_Key member_key;
+ this->repo_->config ()->open_section (refs_key,
+ section_name.c_str (),
+ 0,
+ member_key);
+
+ ACE_TString path;
+ this->repo_->config ()->get_string_value (member_key,
+ "path",
+ path);
+
+ ACE_Configuration_Section_Key entry_key;
+ status =
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ path,
+ entry_key,
+ 0);
+
+ // This entry may already have been destroyed.
+ if (status == 0)
+ {
+ TAO_IDLType_i *impl =
+ this->repo_->servant_factory ()->create_idltype (entry_key
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ auto_ptr<TAO_IDLType_i> safety (impl);
+
+ CORBA::DefinitionKind def_kind = impl->def_kind (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ switch (def_kind)
+ {
+ // These anonymous types were defined in IDL inside this
+ // struct and have no 'contained-in' info of their own,
+ // so they must be destroyed here.
+ case CORBA::dk_String:
+ case CORBA::dk_Wstring:
+ case CORBA::dk_Fixed:
+ case CORBA::dk_Array:
+ case CORBA::dk_Sequence:
+ impl->destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+ break;
+ default:
+ // No other types can be defined in this section of the struct.
+ break;
+ }
+ }
+ }
+
+ this->repo_->config ()->remove_section (this->section_key_,
+ "refs",
+ 1);
+ }
+
+ ACE_TString id;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "id",
+ id);
+
+ ACE_TString my_path;
+ this->repo_->config ()->get_string_value (this->repo_->repo_ids_key (),
+ id.c_str (),
+ my_path);
+
+ // Destroy definitions.
+
+ ACE_Configuration_Section_Key defns_key;
+ status =
+ this->repo_->config ()->open_section (this->section_key_,
+ "defns",
+ 0,
+ defns_key);
+
+ // This section may not have been created.
+ if (status == 0)
+ {
+ index = 0;
+ while (this->repo_->config ()->enumerate_sections (defns_key,
+ index++,
+ section_name)
+ == 0)
+ {
+ ACE_Configuration_Section_Key defn_key;
+ this->repo_->config ()->open_section (defns_key,
+ section_name.c_str (),
+ 0,
+ defn_key);
+
+ TAO_Contained_i *impl =
+ this->repo_->servant_factory ()->create_contained (defn_key
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ auto_ptr<TAO_Contained_i> safety (impl);
+
+ impl->destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+ }
+
+ this->repo_->config ()->remove_section (this->section_key_,
+ "defns",
+ 1);
+ }
+}
+
+CORBA_Contained_ptr
+TAO_Container_i::lookup (const char *search_name
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->lookup_i (search_name
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_Contained_ptr
+TAO_Container_i::lookup_i (const char *search_name
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_Configuration_Section_Key iter_key;
+ ACE_Configuration_Section_Key work_key;
+ ACE_TString work_string;
+ ACE_TString section_name;
+ int status = 0;
+ int index = 0;
+ int pos = 0;
+ int so_far_so_good = 0;
+ u_int kind = 0;
+ CORBA::DefinitionKind def_kind = CORBA::dk_none;
+
+
+ if (ACE_OS::strncmp (search_name, "::", 2) == 0)
+ {
+ // We were given an absolute scoped name.
+ work_string = search_name + 2;
+ iter_key = this->repo_->root_key ();
+ }
+ else
+ {
+ // We were given a relative scoped name.
+ work_string = search_name;
+ iter_key = this->section_key_;
+ }
+
+ while (1)
+ {
+ pos = work_string.find ("::");
+ so_far_so_good = 0;
+
+ ACE_Configuration_Section_Key defns_key;
+ status =
+ this->repo_->config ()->open_section (iter_key,
+ "defns",
+ 0,
+ defns_key);
+ if (status == 0)
+ {
+ index = 0;
+ while (this->repo_->config ()->enumerate_sections (defns_key,
+ index++,
+ section_name)
+ == 0)
+ {
+ this->repo_->config ()->open_section (defns_key,
+ section_name.c_str (),
+ 0,
+ work_key);
+
+ ACE_TString defn_name;
+ this->repo_->config ()->get_string_value (work_key,
+ "name",
+ defn_name);
+
+ if (defn_name == work_string.substr (0, pos))
+ {
+ iter_key = work_key;
+ so_far_so_good = 1;
+ break;
+ }
+ }
+ }
+
+ if (so_far_so_good)
+ {
+ if (pos != ACE_TString::npos)
+ {
+ work_string = work_string.substr (pos + 2);
+ continue;
+ }
+ else
+ break;
+ }
+ else
+ {
+ // Check for attributes and operations, but only if we
+ // are on the last segment of the scoped name.
+ if (pos == ACE_TString::npos)
+ {
+ this->repo_->config ()->get_integer_value (iter_key,
+ "def_kind",
+ kind);
+
+ def_kind = ACE_static_cast (CORBA::DefinitionKind, kind);
+
+ if (def_kind == CORBA::dk_Interface
+ || def_kind == CORBA::dk_Value)
+ {
+ ACE_Configuration_Section_Key attrs_key;
+ status =
+ this->repo_->config ()->open_section (iter_key,
+ "attrs",
+ 0,
+ attrs_key);
+
+ if (status == 0)
+ {
+ index = 0;
+ while (this->repo_->config ()->enumerate_sections (
+ attrs_key,
+ index++,
+ section_name
+ )
+ == 0)
+ {
+ this->repo_->config ()->open_section (
+ attrs_key,
+ section_name.c_str (),
+ 0,
+ work_key
+ );
+
+ ACE_TString attr_name;
+ this->repo_->config ()->get_string_value (
+ work_key,
+ "name",
+ attr_name
+ );
+
+ // If we're here, working name has only one segment.
+ if (attr_name == work_string)
+ {
+ so_far_so_good = 1;
+ break;
+ }
+ }
+ }
+
+ if (so_far_so_good)
+ break;
+ else
+ {
+ ACE_Configuration_Section_Key ops_key;
+ status =
+ this->repo_->config ()->open_section (iter_key,
+ "ops",
+ 0,
+ ops_key);
+
+ if (status == 0)
+ {
+ index = 0;
+ while (this->repo_->config ()->enumerate_sections (
+ ops_key,
+ index++,
+ section_name
+ )
+ == 0)
+ {
+ this->repo_->config ()->open_section (
+ ops_key,
+ section_name.c_str (),
+ 0,
+ work_key
+ );
+
+ ACE_TString op_name;
+ this->repo_->config ()->get_string_value (
+ work_key,
+ "name",
+ op_name
+ );
+
+ // If we're here, name has only one segment.
+ if (op_name == work_string)
+ {
+ so_far_so_good = 1;
+ break;
+ }
+ }
+
+ if (so_far_so_good)
+ break;
+ }
+ }
+ }
+ }
+ }
+
+ return CORBA_Contained::_nil ();
+ }
+
+ this->repo_->config ()->get_integer_value (work_key,
+ "def_kind",
+ kind);
+
+ ACE_TString id;
+ this->repo_->config ()->get_string_value (work_key,
+ "id",
+ id);
+
+ ACE_TString path;
+ this->repo_->config ()->get_string_value (this->repo_->repo_ids_key (),
+ id.c_str (),
+ path);
+
+ def_kind = ACE_static_cast (CORBA::DefinitionKind, kind);
+
+ CORBA::Object_var obj =
+ this->repo_->servant_factory ()->create_objref (def_kind,
+ path.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_Contained::_nil ());
+
+ return CORBA_Contained::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_ContainedSeq *
+TAO_Container_i::contents (CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->contents_i (limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_ContainedSeq *
+TAO_Container_i::contents_i (CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ if (limit_type == CORBA::dk_none)
+ return 0;
+
+ ACE_Unbounded_Queue<CORBA::DefinitionKind> kind_queue;
+ ACE_Unbounded_Queue<ACE_TString> path_queue;
+
+ // Definitions
+
+ ACE_Configuration_Section_Key defns_key;
+ this->repo_->config ()->open_section (this->section_key_,
+ "defns",
+ 0,
+ defns_key);
+
+ u_int count = 0;
+ this->repo_->config ()->get_integer_value (defns_key,
+ "count",
+ count);
+
+ for (u_int i = 0; i < count; ++i)
+ {
+ CORBA::String_var section_name = this->int_to_string (i);
+ ACE_Configuration_Section_Key defn_key;
+ int status =
+ this->repo_->config ()->open_section (defns_key,
+ section_name.in (),
+ 0,
+ defn_key);
+
+ if (status == 0)
+ {
+ u_int kind = 0;
+ this->repo_->config ()->get_integer_value (defn_key,
+ "def_kind",
+ kind);
+
+ CORBA::DefinitionKind def_kind =
+ ACE_static_cast (CORBA::DefinitionKind, kind);
+
+ if (limit_type == CORBA::dk_all
+ || limit_type == def_kind)
+ {
+ kind_queue.enqueue_tail (def_kind);
+
+ ACE_TString id;
+ this->repo_->config ()->get_string_value (defn_key,
+ "id",
+ id);
+
+ ACE_TString path;
+ this->repo_->config ()->get_string_value (
+ this->repo_->repo_ids_key (),
+ id.c_str (),
+ path
+ );
+
+ path_queue.enqueue_tail (path);
+ }
+ }
+ }
+
+ // Base interfaces
+
+ CORBA::DefinitionKind def_kind = this->def_kind (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (def_kind == CORBA::dk_Interface)
+ {
+ if (limit_type == CORBA::dk_Operation
+ || limit_type == CORBA::dk_Attribute
+ || limit_type == CORBA::dk_all)
+ {
+ TAO_InterfaceDef_i iface (this->repo_,
+ this->section_key_);
+
+ iface.interface_contents (kind_queue,
+ path_queue,
+ limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+ }
+ }
+
+ size_t size = kind_queue.size ();
+
+ CORBA_ContainedSeq *contents = 0;
+ ACE_NEW_THROW_EX (contents,
+ CORBA_ContainedSeq (size),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ CORBA_ContainedSeq_var retval = contents;
+
+ retval->length (size);
+
+ for (size_t j = 0; j < size; j++)
+ {
+ CORBA::DefinitionKind next_kind;
+ kind_queue.dequeue_head (next_kind);
+
+ ACE_TString next_path;
+ path_queue.dequeue_head (next_path);
+
+ CORBA::Object_var obj =
+ this->repo_->servant_factory ()->create_objref (next_kind,
+ next_path.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA_Contained_var next_cont =
+ CORBA_Contained::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ retval[j] = next_cont._retn ();
+ }
+
+ return retval._retn ();
+}
+
+CORBA_ContainedSeq *
+TAO_Container_i::lookup_name (const char *search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->lookup_name_i (search_name,
+ levels_to_search,
+ limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_ContainedSeq *
+TAO_Container_i::lookup_name_i (const char *search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_Unbounded_Queue<CORBA::DefinitionKind> kind_queue;
+ ACE_Unbounded_Queue<ACE_TString> path_queue;
+
+ this->lookup_name_recursive (kind_queue,
+ path_queue,
+ search_name,
+ levels_to_search,
+ limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER);
+
+ size_t size = kind_queue.size ();
+
+ CORBA_ContainedSeq *holder;
+ ACE_NEW_THROW_EX (holder,
+ CORBA_ContainedSeq (size),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ CORBA_ContainedSeq_var retval = holder;
+ retval->length (size);
+
+ for (size_t i = 0; i < size; i++)
+ {
+ CORBA::DefinitionKind next_kind;
+ kind_queue.dequeue_head (next_kind);
+
+ ACE_TString next_path;
+ path_queue.dequeue_head (next_path);
+
+ CORBA::Object_var obj =
+ this->repo_->servant_factory ()->create_objref (next_kind,
+ next_path.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA_Contained_var next_cont =
+ CORBA_Contained::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ retval[i] = next_cont._retn ();
+ }
+
+ return retval._retn ();
+}
+
+CORBA_Container::DescriptionSeq *
+TAO_Container_i::describe_contents (CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited,
+ CORBA::Long max_returned_objs
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->describe_contents_i (limit_type,
+ exclude_inherited,
+ max_returned_objs
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_Container::DescriptionSeq *
+TAO_Container_i::describe_contents_i (CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited,
+ CORBA::Long max_returned_objs
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA_ContainedSeq_var contents = this->contents_i (limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::ULong length = contents->length ();
+ CORBA::ULong ret_len = 0;
+
+ if (max_returned_objs == -1)
+ ret_len = length;
+ else
+ ret_len = length < ACE_static_cast (CORBA::ULong, max_returned_objs)
+ ? length
+ : max_returned_objs;
+
+ CORBA_Container::DescriptionSeq *desc_seq;
+ ACE_NEW_THROW_EX (desc_seq,
+ CORBA_Container::DescriptionSeq (ret_len),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ desc_seq->length (ret_len);
+
+ CORBA_Container::DescriptionSeq_var retval = desc_seq;
+
+ CORBA_Contained::Description_var desc;
+
+ ACE_Configuration_Section_Key contained_key;
+ PortableServer::ObjectId_var oid;
+ CORBA::String_var contained_path;
+ TAO_Contained_i *impl = 0;
+
+ for (CORBA::ULong i = 0; i < ret_len; i++)
+ {
+ oid = this->repo_->ir_poa ()->reference_to_id (contents[i]
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ contained_path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ contained_path.in (),
+ contained_key,
+ 0);
+
+ impl =
+ this->repo_->servant_factory ()->create_contained (contained_key
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_Contained_i> safety (impl);
+
+ desc = impl->describe_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ retval[i].contained_object =
+ CORBA_Contained::_duplicate (contents[i]);
+
+ retval[i].kind = desc->kind;
+
+ retval[i].value = desc->value;
+ }
+
+ return retval._retn ();
+}
+
+CORBA_ModuleDef_ptr
+TAO_Container_i::create_module (const char *id,
+ const char *name,
+ const char *version
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD_RETURN (CORBA_ModuleDef::_nil ());
+
+ return this->create_module_i (id,
+ name,
+ version
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_ModuleDef_ptr
+TAO_Container_i::create_module_i (const char *id,
+ const char *name,
+ const char *version
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA::Boolean legal_op = this->valid_container (CORBA::dk_Module
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_ModuleDef::_nil ());
+
+ if (!legal_op)
+ return CORBA_ModuleDef::_nil ();
+
+ CORBA::Boolean bad_params = this->pre_exist (id,
+ name
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_ModuleDef::_nil ());
+
+ if (bad_params)
+ return CORBA_ModuleDef::_nil ();
+
+ ACE_Configuration_Section_Key defns_key;
+
+ // Create/open section for members defined in this scope.
+ this->repo_->config ()->open_section (this->section_key_,
+ "defns",
+ 1,
+ defns_key);
+
+ // Common to all IR objects created in CORBA_Container.
+ ACE_Configuration_Section_Key new_key;
+ ACE_TString path = this->create_common (defns_key,
+ new_key,
+ id,
+ name,
+ version,
+ "defns\\",
+ CORBA::dk_Module);
+
+ // For anonymous members.
+ ACE_Configuration_Section_Key refs_key;
+ this->repo_->config ()->open_section (new_key,
+ "refs",
+ 1,
+ refs_key);
+
+ // Create the object reference.
+ CORBA::Object_var obj =
+ this->repo_->servant_factory ()->create_objref (CORBA::dk_Module,
+ path.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_ModuleDef::_nil ());
+
+ return CORBA_ModuleDef::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_ConstantDef_ptr
+TAO_Container_i::create_constant (const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any &value
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD_RETURN (CORBA_ConstantDef::_nil ());
+
+ return this->create_constant_i (id,
+ name,
+ version,
+ type,
+ value
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_ConstantDef_ptr
+TAO_Container_i::create_constant_i (const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any &value
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA::Boolean legal_op = this->valid_container (CORBA::dk_Constant
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_ConstantDef::_nil ());
+
+ if (!legal_op)
+ return CORBA_ConstantDef::_nil ();
+
+ CORBA::Boolean bad_params = this->pre_exist (id,
+ name
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_ConstantDef::_nil ());
+
+ if (bad_params)
+ return CORBA_ConstantDef::_nil ();
+
+ // Create/open section for members defined in this scope.
+ ACE_Configuration_Section_Key defns_key;
+ this->repo_->config ()->open_section (this->section_key_,
+ "defns",
+ 1,
+ defns_key);
+
+ // Common to all IR objects created in CORBA_Container.
+ ACE_Configuration_Section_Key new_key;
+ ACE_TString path = this->create_common (defns_key,
+ new_key,
+ id,
+ name,
+ version,
+ "defns\\",
+ CORBA::dk_Constant);
+
+
+ // Get the path to our type and store it.
+ PortableServer::ObjectId_var oid =
+ this->repo_->ir_poa ()->reference_to_id (type
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_ConstantDef::_nil ());
+
+ CORBA::String_var type_path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ this->repo_->config ()->set_string_value (new_key,
+ "type_path",
+ type_path.in ());
+
+ // Store the value.
+ ACE_Message_Block *mb = value._tao_get_cdr ();
+
+ CORBA::TypeCode_var val_tc = value.type ();
+
+ CORBA::TCKind kind = val_tc->kind (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_ConstantDef::_nil ());
+
+ switch (kind)
+ {
+ // The data for these types will be aligned to an 8-byte
+ // boundary, while the rd_ptr may not.
+ case CORBA::tk_double:
+ case CORBA::tk_ulonglong:
+ case CORBA::tk_longlong:
+ case CORBA::tk_longdouble:
+ mb->rd_ptr (ACE_ptr_align_binary (mb->rd_ptr (),
+ ACE_CDR::MAX_ALIGNMENT));
+ break;
+ default:
+ break;
+ }
+
+ // Align the read pointer with the base, so mb->length()
+ // will be meaningful.
+ mb->crunch ();
+
+ this->repo_->config ()->set_binary_value (new_key,
+ "value",
+ mb->base (),
+ mb->length ());
+
+ // Create the object reference.
+ CORBA::Object_var obj =
+ this->repo_->servant_factory ()->create_objref (CORBA::dk_Constant,
+ path.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_ConstantDef::_nil ());
+
+ return CORBA_ConstantDef::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_StructDef_ptr
+TAO_Container_i::create_struct (const char *id,
+ const char *name,
+ const char *version,
+ const CORBA_StructMemberSeq &members
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD_RETURN (CORBA_StructDef::_nil ());
+
+ return this->create_struct_i (id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_StructDef_ptr
+TAO_Container_i::create_struct_i (const char *id,
+ const char *name,
+ const char *version,
+ const CORBA_StructMemberSeq &members
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA::Boolean legal_op = this->valid_container (CORBA::dk_Struct
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_StructDef::_nil ());
+
+ if (!legal_op)
+ return CORBA_StructDef::_nil ();
+
+ CORBA::Boolean bad_params = this->pre_exist (id,
+ name
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_StructDef::_nil ());
+
+ if (bad_params)
+ return CORBA_StructDef::_nil ();
+
+ // Create/open section for members defined in this scope.
+ ACE_Configuration_Section_Key defns_key;
+ this->repo_->config ()->open_section (this->section_key_,
+ "defns",
+ 1,
+ defns_key);
+
+ // Common to all IR objects created in CORBA_Container.
+ ACE_Configuration_Section_Key new_key;
+ ACE_TString path = this->create_common (defns_key,
+ new_key,
+ id,
+ name,
+ version,
+ "defns\\",
+ CORBA::dk_Struct);
+
+ // Open a section for the struct's members.
+ ACE_Configuration_Section_Key refs_key;
+ this->repo_->config ()->open_section (new_key,
+ "refs",
+ 1,
+ refs_key);
+
+ CORBA::ULong count = members.length ();
+ this->repo_->config ()->set_integer_value (refs_key,
+ "count",
+ count);
+
+ // Create a section for each member. We just store the
+ // member name and the path to its database entry.
+ for (CORBA::ULong i = 0; i < count; i++)
+ {
+ ACE_Configuration_Section_Key member_key;
+ CORBA::String_var section_name = this->int_to_string (i);
+
+ this->repo_->config ()->open_section (refs_key,
+ section_name.in (),
+ 1,
+ member_key);
+
+ this->repo_->config ()->set_string_value (member_key,
+ "name",
+ members[i].name.in ());
+
+ PortableServer::ObjectId_var oid =
+ this->repo_->ir_poa ()->reference_to_id (members[i].type_def.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_StructDef::_nil ());
+
+ CORBA::String_var member_path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ this->repo_->config ()->set_string_value (member_key,
+ "path",
+ member_path.in ());
+ }
+
+ CORBA::DefinitionKind def_kind = this->def_kind (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_StructDef::_nil ());
+
+ if (def_kind == CORBA::dk_Struct
+ || def_kind == CORBA::dk_Union
+ || def_kind == CORBA::dk_Exception)
+ {
+ this->update_refs (path.c_str (),
+ name);
+ }
+
+ // Create the object reference.
+ CORBA::Object_var obj =
+ this->repo_->servant_factory ()->create_objref (CORBA::dk_Struct,
+ path.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_StructDef::_nil ());
+
+ return CORBA_StructDef::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_UnionDef_ptr
+TAO_Container_i::create_union (const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq &members
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD_RETURN (CORBA_UnionDef::_nil ());
+
+ return this->create_union_i (id,
+ name,
+ version,
+ discriminator_type,
+ members
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_UnionDef_ptr
+TAO_Container_i::create_union_i (const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq &members
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA::Boolean legal_op = this->valid_container (CORBA::dk_Union
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_UnionDef::_nil ());
+
+ if (!legal_op)
+ return CORBA_UnionDef::_nil ();
+
+ CORBA::Boolean bad_params = this->pre_exist (id,
+ name
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_UnionDef::_nil ());
+
+ if (bad_params)
+ return CORBA_UnionDef::_nil ();
+
+ // Create new section, or open if it already exists.
+ ACE_Configuration_Section_Key defns_key;
+ this->repo_->config ()->open_section (this->section_key_,
+ "defns",
+ 1,
+ defns_key);
+
+ // Common to all IR objects created in CORBA_Container.
+ ACE_Configuration_Section_Key new_key;
+ ACE_TString path = this->create_common (defns_key,
+ new_key,
+ id,
+ name,
+ version,
+ "defns\\",
+ CORBA::dk_Union);
+
+ // Add a field to hold the path to the discriminator type.
+ PortableServer::ObjectId_var oid =
+ this->repo_->ir_poa ()->reference_to_id (discriminator_type
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_UnionDef::_nil ());
+
+ CORBA::String_var disc_path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ this->repo_->config ()->set_string_value (new_key,
+ "disc_path",
+ disc_path.in ());
+
+ ACE_Configuration_Section_Key refs_key;
+
+ // For the union's members.
+ this->repo_->config ()->open_section (new_key,
+ "refs",
+ 1,
+ refs_key);
+
+ CORBA::ULong count = members.length ();
+ this->repo_->config ()->set_integer_value (refs_key,
+ "count",
+ count);
+
+ // Create a section for each member. We store the member
+ // name, its label value, and the path to its database entry.
+ for (CORBA::ULong i = 0; i < count; i++)
+ {
+ ACE_Configuration_Section_Key member_key;
+ CORBA::String_var section_name = this->int_to_string (i);
+ this->repo_->config ()->open_section (refs_key,
+ section_name.in (),
+ 1,
+ member_key);
+
+ this->repo_->config ()->set_string_value (member_key,
+ "name",
+ members[i].name.in ());
+
+ PortableServer::ObjectId_var oid =
+ this->repo_->ir_poa ()->reference_to_id (members[i].type_def.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_UnionDef::_nil ());
+
+ CORBA::String_var member_path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ this->repo_->config ()->set_string_value (member_key,
+ "path",
+ member_path.in ());
+
+ this->store_label (member_key,
+ members[i].label
+ ACE_ENV_ARG_PARAMETER);
+ }
+
+ CORBA::DefinitionKind def_kind = this->def_kind (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_UnionDef::_nil ());
+
+ if (def_kind == CORBA::dk_Struct
+ || def_kind == CORBA::dk_Union
+ || def_kind == CORBA::dk_Exception)
+ {
+ this->update_refs (path.c_str (),
+ name);
+ }
+
+ // Create the object reference.
+ CORBA::Object_var obj =
+ this->repo_->servant_factory ()->create_objref (CORBA::dk_Union,
+ path.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_UnionDef::_nil ());
+
+ return CORBA_UnionDef::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_EnumDef_ptr
+TAO_Container_i::create_enum (const char *id,
+ const char *name,
+ const char *version,
+ const CORBA_EnumMemberSeq &members
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD_RETURN (CORBA_EnumDef::_nil ());
+
+ return this->create_enum_i (id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_EnumDef_ptr
+TAO_Container_i::create_enum_i (const char *id,
+ const char *name,
+ const char *version,
+ const CORBA_EnumMemberSeq &members
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA::Boolean legal_op = this->valid_container (CORBA::dk_Enum
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_EnumDef::_nil ());
+
+ if (!legal_op)
+ return CORBA_EnumDef::_nil ();
+
+ CORBA::Boolean bad_params = this->pre_exist (id,
+ name
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_EnumDef::_nil ());
+
+ if (bad_params)
+ return CORBA_EnumDef::_nil ();
+
+ // Create new section, or open if it already exists.
+ ACE_Configuration_Section_Key defns_key;
+ this->repo_->config ()->open_section (this->section_key_,
+ "defns",
+ 1,
+ defns_key);
+
+ // Common to all IR objects created in CORBA_Container.
+ ACE_Configuration_Section_Key new_key;
+ ACE_TString path = this->create_common (defns_key,
+ new_key,
+ id,
+ name,
+ version,
+ "defns\\",
+ CORBA::dk_Enum);
+
+ // Store the member count of the enum.
+ CORBA::ULong count = members.length ();
+ this->repo_->config ()->set_integer_value (new_key,
+ "count",
+ count);
+
+ // Create a section for each member, named for
+ // its ordinal position in the enum,
+ for (CORBA::ULong i = 0; i < count; i++)
+ {
+ ACE_Configuration_Section_Key member_key;
+ CORBA::String_var section_name = this->int_to_string (i);
+ this->repo_->config ()->open_section (new_key,
+ section_name.in (),
+ 1,
+ member_key);
+
+ this->repo_->config ()->set_string_value (member_key,
+ "name",
+ members[i].in ());
+ }
+
+ CORBA::DefinitionKind def_kind = this->def_kind (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_EnumDef::_nil ());
+
+ if (def_kind == CORBA::dk_Struct
+ || def_kind == CORBA::dk_Union
+ || def_kind == CORBA::dk_Exception)
+ {
+ this->update_refs (path.c_str (),
+ name);
+ }
+
+ // Create the object reference.
+ CORBA::Object_var obj =
+ this->repo_->servant_factory ()->create_objref (CORBA::dk_Enum,
+ path.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_EnumDef::_nil ());
+
+ return CORBA_EnumDef::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_AliasDef_ptr
+TAO_Container_i::create_alias (const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD_RETURN (CORBA_AliasDef::_nil ());
+
+ return this->create_alias_i (id,
+ name,
+ version,
+ original_type
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_AliasDef_ptr
+TAO_Container_i::create_alias_i (const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA::Boolean legal_op = this->valid_container (CORBA::dk_Alias
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_AliasDef::_nil ());
+
+ if (!legal_op)
+ return CORBA_AliasDef::_nil ();
+
+ CORBA::Boolean bad_params = this->pre_exist (id,
+ name
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_AliasDef::_nil ());
+
+ if (bad_params)
+ return CORBA_AliasDef::_nil ();
+
+ // Create new section.
+ ACE_Configuration_Section_Key defns_key;
+ this->repo_->config ()->open_section (this->section_key_,
+ "defns",
+ 1,
+ defns_key);
+
+ // Common to all IR objects created in CORBA_Container.
+ ACE_Configuration_Section_Key new_key;
+ ACE_TString path = this->create_common (defns_key,
+ new_key,
+ id,
+ name,
+ version,
+ "defns\\",
+ CORBA::dk_Alias);
+
+ // Get the path to our original type and store it.
+ PortableServer::ObjectId_var oid =
+ this->repo_->ir_poa ()->reference_to_id (original_type
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_AliasDef::_nil ());
+
+ CORBA::String_var unalias_path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ this->repo_->config ()->set_string_value (new_key,
+ "original_type",
+ unalias_path.in ());
+
+ // Create the object reference.
+ CORBA::Object_var obj =
+ this->repo_->servant_factory ()->create_objref (CORBA::dk_Alias,
+ path.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_AliasDef::_nil ());
+
+ return CORBA_AliasDef::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_InterfaceDef_ptr
+TAO_Container_i::create_interface (const char *id,
+ const char *name,
+ const char *version,
+ const CORBA_InterfaceDefSeq &base_interfaces
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD_RETURN (CORBA_InterfaceDef::_nil ());
+
+ return this->create_interface_i (id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_InterfaceDef_ptr
+TAO_Container_i::create_interface_i (const char *id,
+ const char *name,
+ const char *version,
+ const CORBA_InterfaceDefSeq &base_interfaces
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA::Boolean legal_op = this->valid_container (CORBA::dk_Interface
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_InterfaceDef::_nil ());
+
+ if (!legal_op)
+ return CORBA_InterfaceDef::_nil ();
+
+ CORBA::Boolean bad_params = this->pre_exist (id,
+ name
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_InterfaceDef::_nil ());
+
+ if (bad_params)
+ return CORBA_InterfaceDef::_nil ();
+
+ // Create new section.
+ ACE_Configuration_Section_Key defns_key;
+ this->repo_->config ()->open_section (this->section_key_,
+ "defns",
+ 1,
+ defns_key);
+
+ // Common to all IR objects created in CORBA_Container.
+ ACE_Configuration_Section_Key new_key;
+ ACE_TString path = this->create_common (defns_key,
+ new_key,
+ id,
+ name,
+ version,
+ "defns\\",
+ CORBA::dk_Interface);
+
+ CORBA::ULong length = base_interfaces.length ();
+
+ if (length > 0)
+ {
+ // Open a section for the base interfaces.
+ ACE_Configuration_Section_Key inherited_key;
+
+ this->repo_->config ()->open_section (new_key,
+ "inherited",
+ 1,
+ inherited_key);
+
+ // Store the path to each base interface.
+ for (CORBA::ULong i = 0; i < length; i++)
+ {
+ PortableServer::ObjectId_var oid =
+ this->repo_->ir_poa ()->reference_to_id (base_interfaces[i]
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_InterfaceDef::_nil ());
+
+ CORBA::String_var inherited_path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ CORBA::String_var section_name = this->int_to_string (i);
+
+ this->repo_->config ()->set_string_value (inherited_key,
+ section_name.in (),
+ inherited_path.in ());
+ }
+ }
+
+ // Create the object reference.
+ CORBA::Object_var obj =
+ this->repo_->servant_factory ()->create_objref (CORBA::dk_Interface,
+ path.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_InterfaceDef::_nil ());
+
+ return CORBA_InterfaceDef::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_ValueDef_ptr
+TAO_Container_i::create_value (const char *id,
+ const char *name,
+ const char *version,
+ CORBA::Boolean is_custom,
+ CORBA::Boolean is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ CORBA::Boolean is_truncatable,
+ const CORBA_ValueDefSeq &abstract_base_values,
+ const CORBA_InterfaceDefSeq &supported_interfaces,
+ const CORBA_InitializerSeq &initializers
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD_RETURN (CORBA_ValueDef::_nil ());
+
+ return this->create_value_i (id,
+ name,
+ version,
+ is_custom,
+ is_abstract,
+ base_value,
+ is_truncatable,
+ abstract_base_values,
+ supported_interfaces,
+ initializers
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_ValueDef_ptr
+TAO_Container_i::create_value_i (const char * /* id */,
+ const char * /* name */,
+ const char * /* version */,
+ CORBA::Boolean /* is_custom */,
+ CORBA::Boolean /* is_abstract */,
+ CORBA_ValueDef_ptr /* base_value */,
+ CORBA::Boolean /* is_truncatable */,
+ const CORBA_ValueDefSeq & /* abstract_base_values */,
+ const CORBA_InterfaceDefSeq & /* supported_interfaces */,
+ const CORBA_InitializerSeq & /* initializers */
+ ACE_ENV_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+CORBA_ValueBoxDef_ptr
+TAO_Container_i::create_value_box (const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD_RETURN (CORBA_ValueBoxDef::_nil ());
+
+ return this->create_value_box_i (id,
+ name,
+ version,
+ original_type_def
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_ValueBoxDef_ptr
+TAO_Container_i::create_value_box_i (const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA::Boolean legal_op = this->valid_container (CORBA::dk_ValueBox
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_ValueBoxDef::_nil ());
+
+ if (!legal_op)
+ return CORBA_ValueBoxDef::_nil ();
+
+ CORBA::Boolean bad_params = this->pre_exist (id,
+ name
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_ValueBoxDef::_nil ());
+
+ if (bad_params)
+ return CORBA_ValueBoxDef::_nil ();
+
+ // Create new section.
+ ACE_Configuration_Section_Key defns_key;
+ this->repo_->config ()->open_section (this->section_key_,
+ "defns",
+ 1,
+ defns_key);
+
+ // Common to all IR objects created in CORBA_Container.
+ ACE_Configuration_Section_Key new_key;
+ ACE_TString path = this->create_common (defns_key,
+ new_key,
+ id,
+ name,
+ version,
+ "defns\\",
+ CORBA::dk_ValueBox);
+
+ // Get the path to our original type and store it.
+ PortableServer::ObjectId_var oid =
+ this->repo_->ir_poa ()->reference_to_id (original_type_def
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_ValueBoxDef::_nil ());
+
+ CORBA::String_var boxed_path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ this->repo_->config ()->set_string_value (new_key,
+ "boxed_type",
+ boxed_path.in ());
+
+ // Create the object reference.
+ CORBA::Object_var obj =
+ this->repo_->servant_factory ()->create_objref (CORBA::dk_ValueBox,
+ path.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_ValueBoxDef::_nil ());
+
+ return CORBA_ValueBoxDef::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_ExceptionDef_ptr
+TAO_Container_i::create_exception (const char *id,
+ const char *name,
+ const char *version,
+ const CORBA_StructMemberSeq &members
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD_RETURN (CORBA_ExceptionDef::_nil ());
+
+ return this->create_exception_i (id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_ExceptionDef_ptr
+TAO_Container_i::create_exception_i (const char *id,
+ const char *name,
+ const char *version,
+ const CORBA_StructMemberSeq &members
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA::Boolean legal_op = this->valid_container (CORBA::dk_Exception
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_ExceptionDef::_nil ());
+
+ if (!legal_op)
+ return CORBA_ExceptionDef::_nil ();
+
+ CORBA::Boolean bad_params = this->pre_exist (id,
+ name
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_ExceptionDef::_nil ());
+
+ if (bad_params)
+ return CORBA_ExceptionDef::_nil ();
+
+ // Create/open section for members defined in this scope.
+ ACE_Configuration_Section_Key defns_key;
+ this->repo_->config ()->open_section (this->section_key_,
+ "defns",
+ 1,
+ defns_key);
+
+ // Common to all IR objects created in CORBA_Container.
+ ACE_Configuration_Section_Key new_key;
+ ACE_TString path = this->create_common (defns_key,
+ new_key,
+ id,
+ name,
+ version,
+ "defns\\",
+ CORBA::dk_Exception);
+
+ ACE_Configuration_Section_Key refs_key;
+ this->repo_->config ()->open_section (new_key,
+ "refs",
+ 1,
+ refs_key);
+
+ CORBA::ULong count = members.length ();
+ this->repo_->config ()->set_integer_value (refs_key,
+ "count",
+ count);
+
+ // Create a section for each member. We just store the
+ // member name and the path to its database entry.
+ for (CORBA::ULong i = 0; i < count; i++)
+ {
+ ACE_Configuration_Section_Key member_key;
+ CORBA::String_var section_name = this->int_to_string (i);
+ this->repo_->config ()->open_section (refs_key,
+ section_name.in (),
+ 1,
+ member_key);
+
+ this->repo_->config ()->set_string_value (member_key,
+ "name",
+ members[i].name.in ());
+
+ PortableServer::ObjectId_var oid =
+ this->repo_->ir_poa ()->reference_to_id (members[i].type_def.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_ExceptionDef::_nil ());
+
+ CORBA::String_var member_path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ this->repo_->config ()->set_string_value (member_key,
+ "path",
+ member_path.in ());
+ }
+
+ // Create the object reference.
+ CORBA::Object_var obj =
+ this->repo_->servant_factory ()->create_objref (CORBA::dk_Exception,
+ path.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_ExceptionDef::_nil ());
+
+ return CORBA_ExceptionDef::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_NativeDef_ptr
+TAO_Container_i::create_native (const char *id,
+ const char *name,
+ const char *version
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD_RETURN (CORBA_NativeDef::_nil ());
+
+ return this->create_native_i (id,
+ name,
+ version
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_NativeDef_ptr
+TAO_Container_i::create_native_i (const char *id,
+ const char *name,
+ const char *version
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA::Boolean legal_op = this->valid_container (CORBA::dk_Native
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_NativeDef::_nil ());
+
+ if (!legal_op)
+ return CORBA_NativeDef::_nil ();
+
+ CORBA::Boolean bad_params = this->pre_exist (id,
+ name
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_NativeDef::_nil ());
+
+ if (bad_params)
+ return CORBA_NativeDef::_nil ();
+
+ // Create new section.
+ ACE_Configuration_Section_Key defns_key;
+ this->repo_->config ()->open_section (this->section_key_,
+ "defns",
+ 1,
+ defns_key);
+
+ // Common to all IR objects created in CORBA_Container.
+ ACE_Configuration_Section_Key new_key;
+ ACE_TString path = this->create_common (defns_key,
+ new_key,
+ id,
+ name,
+ version,
+ "defns\\",
+ CORBA::dk_Native);
+
+ // Create the object reference.
+ CORBA::Object_var obj =
+ this->repo_->servant_factory ()->create_objref (CORBA::dk_Native,
+ path.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_NativeDef::_nil ());
+
+ return CORBA_NativeDef::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_AbstractInterfaceDef_ptr
+TAO_Container_i::create_abstract_interface (
+ const char *id,
+ const char *name,
+ const char *version,
+ const CORBA_AbstractInterfaceDefSeq &base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD_RETURN (CORBA_AbstractInterfaceDef::_nil ());
+
+ return this->create_abstract_interface_i (id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_AbstractInterfaceDef_ptr
+TAO_Container_i::create_abstract_interface_i (
+ const char *id,
+ const char *name,
+ const char *version,
+ const CORBA_AbstractInterfaceDefSeq &base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA::Boolean legal_op = this->valid_container (
+ CORBA::dk_AbstractInterface
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (CORBA_AbstractInterfaceDef::_nil ());
+
+ if (!legal_op)
+ return CORBA_AbstractInterfaceDef::_nil ();
+
+ CORBA::Boolean bad_params = this->pre_exist (id,
+ name
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_AbstractInterfaceDef::_nil ());
+
+ if (bad_params)
+ return CORBA_AbstractInterfaceDef::_nil ();
+
+ // Create new section.
+ ACE_Configuration_Section_Key defns_key;
+ this->repo_->config ()->open_section (this->section_key_,
+ "defns",
+ 1,
+ defns_key);
+
+ // Common to all IR objects created in CORBA_Container.
+ ACE_Configuration_Section_Key new_key;
+ ACE_TString path = this->create_common (defns_key,
+ new_key,
+ id,
+ name,
+ version,
+ "defns\\",
+ CORBA::dk_AbstractInterface);
+
+ CORBA::ULong length = base_interfaces.length ();
+
+ if (length > 0)
+ {
+ // Open a section for the base interfaces.
+ ACE_Configuration_Section_Key inherited_key;
+
+ this->repo_->config ()->open_section (new_key,
+ "inherited",
+ 1,
+ inherited_key);
+
+ // Store the path to each base interface.
+ for (CORBA::ULong i = 0; i < length; i++)
+ {
+ PortableServer::ObjectId_var oid =
+ this->repo_->ir_poa ()->reference_to_id (base_interfaces[i]
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_AbstractInterfaceDef::_nil ());
+
+ CORBA::String_var inherited_path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ CORBA::String_var section_name = this->int_to_string (i);
+
+ this->repo_->config ()->set_string_value (inherited_key,
+ section_name.in (),
+ inherited_path.in ());
+ }
+ }
+
+ // Create the object reference.
+ CORBA::Object_var obj =
+ this->repo_->servant_factory ()->create_objref (CORBA::dk_AbstractInterface,
+ path.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_AbstractInterfaceDef::_nil ());
+
+ return CORBA_AbstractInterfaceDef::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_LocalInterfaceDef_ptr
+TAO_Container_i::create_local_interface (
+ const char *id,
+ const char *name,
+ const char *version,
+ const CORBA_InterfaceDefSeq &base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD_RETURN (CORBA_LocalInterfaceDef::_nil ());
+
+ return this->create_local_interface_i (id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_LocalInterfaceDef_ptr
+TAO_Container_i::create_local_interface_i (
+ const char *id,
+ const char *name,
+ const char *version,
+ const CORBA_InterfaceDefSeq &base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA::Boolean legal_op = this->valid_container (CORBA::dk_LocalInterface
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_LocalInterfaceDef::_nil ());
+
+ if (!legal_op)
+ return CORBA_LocalInterfaceDef::_nil ();
+
+ CORBA::Boolean bad_params = this->pre_exist (id,
+ name
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_LocalInterfaceDef::_nil ());
+
+ if (bad_params)
+ return CORBA_LocalInterfaceDef::_nil ();
+
+ // Create new section.
+ ACE_Configuration_Section_Key defns_key;
+ this->repo_->config ()->open_section (this->section_key_,
+ "defns",
+ 1,
+ defns_key);
+
+ // Common to all IR objects created in CORBA_Container.
+ ACE_Configuration_Section_Key new_key;
+ ACE_TString path = this->create_common (defns_key,
+ new_key,
+ id,
+ name,
+ version,
+ "defns\\",
+ CORBA::dk_LocalInterface);
+
+ CORBA::ULong length = base_interfaces.length ();
+
+ if (length > 0)
+ {
+ // Open a section for the base interfaces.
+ ACE_Configuration_Section_Key inherited_key;
+
+ this->repo_->config ()->open_section (new_key,
+ "inherited",
+ 1,
+ inherited_key);
+
+ // Store the path to each base interface.
+ for (CORBA::ULong i = 0; i < length; i++)
+ {
+ PortableServer::ObjectId_var oid =
+ this->repo_->ir_poa ()->reference_to_id (base_interfaces[i]
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_LocalInterfaceDef::_nil ());
+
+ CORBA::String_var inherited_path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ CORBA::String_var section_name = this->int_to_string (i);
+
+ this->repo_->config ()->set_string_value (inherited_key,
+ section_name.in (),
+ inherited_path.in ());
+ }
+ }
+
+ // Create the object reference.
+ CORBA::Object_var obj =
+ this->repo_->servant_factory ()->create_objref (CORBA::dk_LocalInterface,
+ path.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_LocalInterfaceDef::_nil ());
+
+ return CORBA_LocalInterfaceDef::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA::Boolean
+TAO_Container_i::name_exists (const char *name
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ int index = 0;
+ ACE_TString section_name;
+
+ // Check the members defined elsewhere.
+ ACE_Configuration_Section_Key refs_key;
+
+ if (this->repo_->config ()->open_section (this->section_key_,
+ "refs",
+ 0,
+ refs_key)
+ == 0)
+ {
+ while (this->repo_->config ()->enumerate_sections (refs_key,
+ index++,
+ section_name)
+ == 0)
+ {
+ ACE_Configuration_Section_Key member_key;
+ this->repo_->config ()->open_section (refs_key,
+ section_name.c_str (),
+ 0,
+ member_key);
+
+ ACE_TString member_name;
+ this->repo_->config ()->get_string_value (member_key,
+ "name",
+ member_name);
+
+ if (member_name == name)
+ {
+ ACE_THROW_RETURN (CORBA::BAD_PARAM (3,
+ CORBA::COMPLETED_NO),
+ 1);
+ }
+ }
+ }
+
+ // Check the members defined in this scope.
+ ACE_Configuration_Section_Key defns_key;
+ if (this->repo_->config ()->open_section (this->section_key_,
+ "defns",
+ 0,
+ defns_key)
+ == 0)
+ {
+ index = 0;
+
+ while (this->repo_->config ()->enumerate_sections (defns_key,
+ index++,
+ section_name)
+ == 0)
+ {
+ ACE_Configuration_Section_Key defn_key;
+ this->repo_->config ()->open_section (defns_key,
+ section_name.c_str (),
+ 0,
+ defn_key);
+
+ ACE_TString defn_name;
+ this->repo_->config ()->get_string_value (defn_key,
+ "name",
+ defn_name);
+
+ if (defn_name == name)
+ {
+ ACE_THROW_RETURN (CORBA::BAD_PARAM (3,
+ CORBA::COMPLETED_NO),
+ 1);
+ }
+ }
+ }
+
+ // If we are an interface, check the inherited members.
+ CORBA::DefinitionKind def_kind = this->def_kind (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (1);
+
+ if (def_kind == CORBA::dk_Interface)
+ {
+ ACE_Configuration_Section_Key inherited_key;
+ int status =
+ this->repo_->config ()->open_section (this->section_key_,
+ "inherited",
+ 0,
+ inherited_key);
+
+ // This section may not have been created.
+ if (status == 0)
+ {
+ int index = 0;
+ ACE_TString path;
+ ACE_Configuration::VALUETYPE type;
+
+ while (this->repo_->config ()->enumerate_values (inherited_key,
+ index++,
+ path,
+ type)
+ == 0)
+ {
+ ACE_Configuration_Section_Key base_key;
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ path,
+ base_key,
+ 0);
+
+ ACE_TString base_name;
+ this->repo_->config ()->get_string_value (base_key,
+ "name",
+ base_name);
+
+ if (base_name == name)
+ {
+ ACE_THROW_RETURN (CORBA::BAD_PARAM (5,
+ CORBA::COMPLETED_NO),
+ 1);
+ }
+ }
+ }
+ }
+
+ return 0;
+}
+
+void
+TAO_Container_i::lookup_name_recursive (
+ ACE_Unbounded_Queue<CORBA::DefinitionKind> &kind_queue,
+ ACE_Unbounded_Queue<ACE_TString> &path_queue,
+ const char *search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_Configuration_Section_Key defns_key;
+ int status =
+ this->repo_->config ()->open_section (this->section_key_,
+ "defns",
+ 0,
+ defns_key);
+
+ if (status == 0)
+ {
+ int index = 0;
+ ACE_TString section_name;
+ while (this->repo_->config ()->enumerate_sections (defns_key,
+ index++,
+ section_name)
+ == 0)
+ {
+ ACE_Configuration_Section_Key defn_key;
+ this->repo_->config ()->open_section (defns_key,
+ section_name.c_str (),
+ 0,
+ defn_key);
+
+ u_int kind = 0;
+ this->repo_->config ()->get_integer_value (defn_key,
+ "def_kind",
+ kind);
+
+ CORBA::DefinitionKind def_kind =
+ ACE_static_cast (CORBA::DefinitionKind, kind);
+
+ if (limit_type == CORBA::dk_all || limit_type == def_kind)
+ {
+ ACE_TString name;
+ this->repo_->config ()->get_string_value (defn_key,
+ "name",
+ name);
+
+ if (!ACE_OS::strcmp (name.c_str (), search_name))
+ {
+ kind_queue.enqueue_tail (def_kind);
+
+ ACE_TString id;
+ this->repo_->config ()->get_string_value (defn_key,
+ "id",
+ id);
+
+ ACE_TString path;
+ this->repo_->config ()->get_string_value (
+ this->repo_->repo_ids_key (),
+ id.c_str (),
+ path
+ );
+
+ path_queue.enqueue_tail (path);
+ }
+ }
+
+ if (levels_to_search == -1 || levels_to_search > 1)
+ {
+ TAO_Container_i *impl =
+ this->repo_->servant_factory ()->create_container (
+ defn_key
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+
+ // This member may not be a container.
+ if (impl == 0)
+ continue;
+
+ auto_ptr<TAO_Container_i> safety (impl);
+
+ impl->lookup_name_recursive (kind_queue,
+ path_queue,
+ search_name,
+ levels_to_search == -1
+ ? -1
+ : levels_to_search - 1,
+ limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+ }
+ }
+ }
+
+ CORBA::DefinitionKind kind = this->def_kind (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ if (kind == CORBA::dk_Interface || kind == CORBA::dk_Value)
+ {
+ if (limit_type == CORBA::dk_all || limit_type == CORBA::dk_Attribute)
+ {
+ this->lookup_attr (kind_queue,
+ path_queue,
+ search_name,
+ exclude_inherited);
+ }
+
+ if (limit_type == CORBA::dk_all || limit_type == CORBA::dk_Operation)
+ {
+ this->lookup_op (kind_queue,
+ path_queue,
+ search_name,
+ exclude_inherited);
+ }
+ }
+}
+
+void
+TAO_Container_i:: lookup_attr (
+ ACE_Unbounded_Queue<CORBA::DefinitionKind> &kind_queue,
+ ACE_Unbounded_Queue<ACE_TString> &path_queue,
+ const char *search_name,
+ CORBA::Boolean exclude_inherited
+ )
+{
+ int index = 0;
+ ACE_TString section_name;
+
+ ACE_Configuration_Section_Key sub_key;
+ int status =
+ this->repo_->config ()->open_section (this->section_key_,
+ "attrs",
+ 0,
+ sub_key);
+
+ if (status == 0)
+ {
+ while (this->repo_->config ()->enumerate_sections (sub_key,
+ index++,
+ section_name)
+ == 0)
+ {
+ ACE_Configuration_Section_Key member_key;
+ this->repo_->config ()->open_section (sub_key,
+ section_name.c_str (),
+ 0,
+ member_key);
+
+ ACE_TString name;
+ this->repo_->config ()->get_string_value (member_key,
+ "name",
+ name);
+
+ if (name == search_name)
+ {
+ kind_queue.enqueue_tail (CORBA::dk_Attribute);
+
+ ACE_TString id;
+ this->repo_->config ()->get_string_value (member_key,
+ "id",
+ id);
+
+ ACE_TString path;
+ this->repo_->config ()->get_string_value (
+ this->repo_->repo_ids_key (),
+ id.c_str (),
+ path
+ );
+
+ path_queue.enqueue_tail (path);
+ }
+ }
+ }
+
+ if (exclude_inherited == 0)
+ {
+ ACE_Configuration_Section_Key bases_key;
+ status =
+ this->repo_->config ()->open_section (this->section_key_,
+ "inherited",
+ 0,
+ bases_key);
+
+ if (status == 0)
+ {
+ ACE_Configuration::VALUETYPE type;
+ index = 0;
+ while (this->repo_->config ()->enumerate_values (
+ bases_key,
+ index++,
+ section_name,
+ type
+ )
+ == 0)
+ {
+ ACE_TString path;
+ this->repo_->config ()->get_string_value (
+ bases_key,
+ section_name.c_str (),
+ path);
+
+ ACE_Configuration_Section_Key base_key;
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ path,
+ base_key,
+ 0);
+
+ TAO_InterfaceDef_i impl (this->repo_,
+ base_key);
+
+ impl.lookup_attr (kind_queue,
+ path_queue,
+ search_name,
+ exclude_inherited);
+ }
+ }
+ }
+}
+
+void
+TAO_Container_i::lookup_op (
+ ACE_Unbounded_Queue<CORBA::DefinitionKind> &kind_queue,
+ ACE_Unbounded_Queue<ACE_TString> &path_queue,
+ const char *search_name,
+ CORBA::Boolean exclude_inherited
+ )
+{
+ int index = 0;
+ ACE_TString section_name;
+
+ ACE_Configuration_Section_Key sub_key;
+ int status =
+ this->repo_->config ()->open_section (this->section_key_,
+ "ops",
+ 0,
+ sub_key);
+
+ if (status == 0)
+ {
+ while (this->repo_->config ()->enumerate_sections (sub_key,
+ index++,
+ section_name)
+ == 0)
+ {
+ ACE_Configuration_Section_Key member_key;
+ this->repo_->config ()->open_section (sub_key,
+ section_name.c_str (),
+ 0,
+ member_key);
+
+ ACE_TString name;
+ this->repo_->config ()->get_string_value (member_key,
+ "name",
+ name);
+
+ if (name == search_name)
+ {
+ kind_queue.enqueue_tail (CORBA::dk_Operation);
+
+ ACE_TString id;
+ this->repo_->config ()->get_string_value (member_key,
+ "id",
+ id);
+
+ ACE_TString path;
+ this->repo_->config ()->get_string_value (
+ this->repo_->repo_ids_key (),
+ id.c_str (),
+ path
+ );
+
+ path_queue.enqueue_tail (path);
+ }
+ }
+ }
+
+ if (exclude_inherited == 0)
+ {
+ ACE_Configuration_Section_Key bases_key;
+ status =
+ this->repo_->config ()->open_section (this->section_key_,
+ "inherited",
+ 0,
+ bases_key);
+
+ if (status == 0)
+ {
+ ACE_Configuration::VALUETYPE type;
+ index = 0;
+ while (this->repo_->config ()->enumerate_values (
+ bases_key,
+ index++,
+ section_name,
+ type
+ )
+ == 0)
+ {
+ ACE_TString path;
+ this->repo_->config ()->get_string_value (
+ bases_key,
+ section_name.c_str (),
+ path);
+
+ ACE_Configuration_Section_Key base_key;
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ path,
+ base_key,
+ 0);
+
+ TAO_InterfaceDef_i impl (this->repo_,
+ base_key);
+
+ impl.lookup_attr (kind_queue,
+ path_queue,
+ search_name,
+ exclude_inherited);
+ }
+ }
+ }
+}
+
+CORBA::Boolean
+TAO_Container_i::id_exists (const char *id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // The repo id must not already exist.
+ ACE_TString holder;
+ if (this->repo_->config ()->get_string_value (this->repo_->repo_ids_key (),
+ id,
+ holder)
+ == 0)
+ {
+ ACE_THROW_RETURN (CORBA::BAD_PARAM (2,
+ CORBA::COMPLETED_NO),
+ 1);
+ }
+
+ return 0;
+}
+
+
+CORBA::Boolean
+TAO_Container_i::pre_exist (const char *id,
+ const char *name
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA::Boolean exist = this->id_exists (id ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (1);
+
+ if (exist)
+ return 1;
+
+ return name_exists (name ACE_ENV_ARG_PARAMETER);
+}
+
+ACE_TString
+TAO_Container_i::create_common (
+ ACE_Configuration_Section_Key sub_key,
+ ACE_Configuration_Section_Key &new_key,
+ const char *id,
+ const char *name,
+ const char *version,
+ const char *sub_section,
+ CORBA::DefinitionKind def_kind
+ )
+{
+ u_int defn_count = 0;
+
+ // If we have a count, it gets set, if not, it stays 0.
+ this->repo_->config ()->get_integer_value (sub_key,
+ "count",
+ defn_count);
+
+ CORBA::String_var section_name = this->int_to_string (defn_count);
+ this->repo_->config ()->open_section (sub_key,
+ section_name.in (),
+ 1,
+ new_key);
+
+ // Increment the count.
+ this->repo_->config ()->set_integer_value (sub_key,
+ "count",
+ defn_count + 1);
+
+ this->repo_->config ()->get_integer_value (sub_key,
+ "count",
+ defn_count);
+
+ // Set the name attribute.
+ this->repo_->config ()->set_string_value (new_key,
+ "name",
+ name);
+
+ // Set the id attribute.
+ this->repo_->config ()->set_string_value (new_key,
+ "id",
+ id);
+
+ // Set the version attribute.
+ this->repo_->config ()->set_string_value (new_key,
+ "version",
+ version);
+
+ // Set the definition kind.
+ this->repo_->config ()->set_integer_value (new_key,
+ "def_kind",
+ def_kind);
+
+ // Get the container's absolute name, append the new name,
+ // and set it in the new section.
+ ACE_TString absolute_name;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "absolute_name",
+ absolute_name);
+
+ absolute_name += "::";
+ absolute_name += name;
+
+ this->repo_->config ()->set_string_value (new_key,
+ "absolute_name",
+ absolute_name);
+
+ // Get the container's path.
+ ACE_TString container_id;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "id",
+ container_id);
+
+ this->repo_->config ()->set_string_value (new_key,
+ "container_id",
+ container_id);
+
+ ACE_TString path;
+ if (container_id == "") // This Container is the Repository.
+ {
+ path = "";
+ }
+ else
+ {
+ this->repo_->config ()->get_string_value (this->repo_->repo_ids_key (),
+ container_id.c_str (),
+ path);
+
+ path += '\\';
+ }
+
+ path += sub_section;
+ path += section_name.in ();
+
+ // Store our path under our global repo id for fast lookup.
+ this->repo_->config ()->set_string_value (this->repo_->repo_ids_key (),
+ id,
+ path);
+
+ return path;
+}
+
+CORBA::Boolean
+TAO_Container_i::valid_container (const CORBA::DefinitionKind op_kind
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA::DefinitionKind my_kind = this->def_kind (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ int error_flag = 0;
+
+ switch (my_kind)
+ {
+ case CORBA::dk_Repository:
+ case CORBA::dk_Module:
+ break;
+ case CORBA::dk_Exception:
+ case CORBA::dk_Struct:
+ case CORBA::dk_Union:
+ switch (op_kind)
+ {
+ case CORBA::dk_Struct:
+ case CORBA::dk_Union:
+ case CORBA::dk_Enum:
+ break;
+ default:
+ error_flag = 1;
+ break;
+ }
+ break;
+ case CORBA::dk_Value:
+ case CORBA::dk_Interface:
+ case CORBA::dk_AbstractInterface:
+ case CORBA::dk_LocalInterface:
+ case CORBA::dk_Home:
+ switch (op_kind)
+ {
+ case CORBA::dk_Module:
+ case CORBA::dk_Interface:
+ case CORBA::dk_Value:
+ error_flag = 1;
+ break;
+ default:
+ break;
+ }
+ break;
+ case CORBA::dk_Component:
+ error_flag = 1;
+ break;
+ default:
+ break;
+ }
+
+ if (error_flag == 1)
+ {
+ ACE_THROW_RETURN (CORBA::BAD_PARAM (4,
+ CORBA::COMPLETED_NO),
+ 0);
+ }
+
+ return 1;
+}
+
+void
+TAO_Container_i::store_label (ACE_Configuration_Section_Key key,
+ const CORBA::Any &value
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA::TypeCode_var tc = value.type ();
+
+ CORBA::TCKind kind = tc->kind (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ TAO_InputCDR cdr (value._tao_get_cdr (),
+ value._tao_byte_order ());
+
+ u_int result = 0;
+ int default_label = 0;
+
+ switch (kind)
+ {
+ case CORBA::tk_octet:
+ default_label = 1;
+ break;
+ case CORBA::tk_char:
+ {
+ CORBA::Char x;
+ cdr.read_char (x);
+ result = ACE_static_cast (u_int, x);
+ break;
+ }
+ case CORBA::tk_wchar:
+ {
+ CORBA::WChar x;
+ cdr.read_wchar (x);
+ result = ACE_static_cast (u_int, x);
+ break;
+ }
+ case CORBA::tk_boolean:
+ {
+ CORBA::Boolean x;
+ cdr.read_boolean (x);
+ result = ACE_static_cast (u_int, x);
+ break;
+ }
+ case CORBA::tk_short:
+ {
+ CORBA::Short x;
+ cdr.read_short (x);
+ result = ACE_static_cast (u_int, x);
+ break;
+ }
+ case CORBA::tk_ushort:
+ {
+ CORBA::UShort x;
+ cdr.read_ushort (x);
+ result = ACE_static_cast (u_int, x);
+ break;
+ }
+ case CORBA::tk_long:
+ {
+ CORBA::Long x;
+ cdr.read_long (x);
+ result = ACE_static_cast (u_int, x);
+ break;
+ }
+ case CORBA::tk_ulong:
+ {
+ CORBA::ULong x;
+ cdr.read_ulong (x);
+ result = ACE_static_cast (u_int, x);
+ break;
+ }
+#if !defined (ACE_LACKS_LONGLONG_T)
+ case CORBA::tk_longlong:
+ {
+ CORBA::LongLong x;
+ cdr.read_longlong (x);
+ // We could lose data here.
+ result = ACE_static_cast (u_int, x);
+ break;
+ }
+#endif /* ACE_LACKS_LONGLONG_T */
+ case CORBA::tk_ulonglong:
+ {
+ CORBA::ULongLong x;
+ cdr.read_ulonglong (x);
+ // We could lose data here.
+ result = ACE_static_cast (u_int, x);
+ break;
+ }
+ case CORBA::tk_enum:
+ {
+ CORBA::ULong x;
+ cdr.read_ulong (x);
+ result = ACE_static_cast (u_int, x);
+ break;
+ }
+ default:
+ break;
+ }
+
+ if (default_label == 1)
+ {
+ this->repo_->config ()->set_string_value (key,
+ "label",
+ "default");
+ }
+ else
+ {
+ this->repo_->config ()->set_integer_value (key,
+ "label",
+ result);
+ }
+}
+
+void
+TAO_Container_i::update_refs (const char *path,
+ const char *name)
+{
+ ACE_Configuration_Section_Key refs_key;
+ this->repo_->config ()->open_section (this->section_key_,
+ "refs",
+ 1,
+ refs_key);
+
+ u_int count = 0;
+ this->repo_->config ()->get_integer_value (refs_key,
+ "count",
+ count);
+
+ int index = 0;
+ ACE_TString section_name;
+ while (this->repo_->config ()->enumerate_sections (refs_key,
+ index++,
+ section_name)
+ == 0)
+ {
+ ACE_Configuration_Section_Key ref_key;
+ this->repo_->config ()->open_section (refs_key,
+ section_name.c_str (),
+ 0,
+ ref_key);
+
+ ACE_TString ref_name;
+ this->repo_->config ()->get_string_value (ref_key,
+ "name",
+ ref_name);
+
+ // If one of the names has been mangled by move(), fix it.
+ if (ref_name.find (this->repo_->extension ()) != ACE_TString::npos)
+ {
+ this->repo_->config ()->set_string_value (ref_key,
+ "name",
+ name);
+
+ this->repo_->config ()->set_string_value (ref_key,
+ "path",
+ path);
+
+ return;
+ }
+ }
+
+ // Add a new reference.
+ ACE_Configuration_Section_Key new_key;
+ CORBA::String_var new_section_name = this->int_to_string (count);
+ this->repo_->config ()->open_section (refs_key,
+ new_section_name.in (),
+ 1,
+ new_key);
+
+ this->repo_->config ()->set_string_value (new_key,
+ "name",
+ name);
+
+ this->repo_->config ()->set_string_value (new_key,
+ "path",
+ path);
+
+ this->repo_->config ()->set_integer_value (refs_key,
+ "count",
+ count + 1);
+}
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/Container_i.h b/TAO/orbsvcs/orbsvcs/IFRService/Container_i.h
new file mode 100644
index 00000000000..6f2c042fe84
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/Container_i.h
@@ -0,0 +1,459 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// Container_i.h
+//
+// = DESCRIPTION
+// Container servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_CONTAINER_I_H
+#define TAO_CONTAINER_I_H
+
+#include "IRObject_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_Repository_i;
+
+class TAO_IFRService_Export TAO_Container_i : public virtual TAO_IRObject_i
+{
+ // = TITLE
+ // TAO_Container_i
+ //
+ // = DESCRIPTION
+ // Abstract base class used to form a containment hierarchy
+ // in the Interface Repository, by containing objects
+ // derived from the Contained interface.
+ //
+public:
+ TAO_Container_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor.
+
+ virtual ~TAO_Container_i (void);
+ // Destructor.
+
+ virtual void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Remove our contents.
+
+ virtual void destroy_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_Contained_ptr lookup (
+ const char *search_name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_Contained_ptr lookup_i (
+ const char *search_name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_ContainedSeq *contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_ContainedSeq *contents_i (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_ContainedSeq *lookup_name (
+ const char *search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_ContainedSeq *lookup_name_i (
+ const char *search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_Container::DescriptionSeq *describe_contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited,
+ CORBA::Long max_returned_objs
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_Container::DescriptionSeq *describe_contents_i (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited,
+ CORBA::Long max_returned_objs
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_ModuleDef_ptr create_module (
+ const char *id,
+ const char *name,
+ const char *version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_ModuleDef_ptr create_module_i (
+ const char *id,
+ const char *name,
+ const char *version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_ConstantDef_ptr create_constant (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_ConstantDef_ptr create_constant_i (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_StructDef_ptr create_struct (
+ const char *id,
+ const char *name,
+ const char *version,
+ const CORBA_StructMemberSeq &members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_StructDef_ptr create_struct_i (
+ const char *id,
+ const char *name,
+ const char *version,
+ const CORBA_StructMemberSeq &members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_UnionDef_ptr create_union (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq &members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_UnionDef_ptr create_union_i (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq &members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_EnumDef_ptr create_enum (
+ const char *id,
+ const char *name,
+ const char *version,
+ const CORBA_EnumMemberSeq &members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_EnumDef_ptr create_enum_i (
+ const char *id,
+ const char *name,
+ const char *version,
+ const CORBA_EnumMemberSeq &members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_AliasDef_ptr create_alias (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_AliasDef_ptr create_alias_i (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_InterfaceDef_ptr create_interface (
+ const char *id,
+ const char *name,
+ const char *version,
+ const CORBA_InterfaceDefSeq &base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_InterfaceDef_ptr create_interface_i (
+ const char *id,
+ const char *name,
+ const char *version,
+ const CORBA_InterfaceDefSeq &base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_ValueDef_ptr create_value (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA::Boolean is_custom,
+ CORBA::Boolean is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ CORBA::Boolean is_truncatable,
+ const CORBA_ValueDefSeq &abstract_base_values,
+ const CORBA_InterfaceDefSeq & supported_interfaces,
+ const CORBA_InitializerSeq &initializers
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_ValueDef_ptr create_value_i (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA::Boolean is_custom,
+ CORBA::Boolean is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ CORBA::Boolean is_truncatable,
+ const CORBA_ValueDefSeq &abstract_base_values,
+ const CORBA_InterfaceDefSeq & supported_interfaces,
+ const CORBA_InitializerSeq &initializers
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_ValueBoxDef_ptr create_value_box (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_ValueBoxDef_ptr create_value_box_i (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_ExceptionDef_ptr create_exception (
+ const char *id,
+ const char *name,
+ const char *version,
+ const CORBA_StructMemberSeq &members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_ExceptionDef_ptr create_exception_i (
+ const char *id,
+ const char *name,
+ const char *version,
+ const CORBA_StructMemberSeq &members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_NativeDef_ptr create_native (
+ const char *id,
+ const char *name,
+ const char *version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_NativeDef_ptr create_native_i (
+ const char *id,
+ const char *name,
+ const char *version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_AbstractInterfaceDef_ptr create_abstract_interface (
+ const char *id,
+ const char *name,
+ const char *version,
+ const CORBA_AbstractInterfaceDefSeq &base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_AbstractInterfaceDef_ptr create_abstract_interface_i (
+ const char *id,
+ const char *name,
+ const char *version,
+ const CORBA_AbstractInterfaceDefSeq &base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_LocalInterfaceDef_ptr create_local_interface (
+ const char *id,
+ const char *name,
+ const char *version,
+ const CORBA_InterfaceDefSeq &base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_LocalInterfaceDef_ptr create_local_interface_i (
+ const char *id,
+ const char *name,
+ const char *version,
+ const CORBA_InterfaceDefSeq &base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA::Boolean name_exists (
+ const char *name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Checks for local existence of <name>.
+
+protected:
+ void store_label (
+ ACE_Configuration_Section_Key key,
+ const CORBA::Any &value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Store a union member's label value.
+
+ CORBA::Boolean pre_exist (
+ const char *id,
+ const char *name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Bundles id_exists and name_exists together.
+
+ ACE_TString create_common (
+ ACE_Configuration_Section_Key sub_key,
+ ACE_Configuration_Section_Key &new_key,
+ const char *id,
+ const char *name,
+ const char *version,
+ const char *sub_section,
+ CORBA::DefinitionKind def_kind
+ );
+ // Code common to all the create_* methods.
+
+ void lookup_attr (
+ ACE_Unbounded_Queue<CORBA::DefinitionKind> &kind_queue,
+ ACE_Unbounded_Queue<ACE_TString> &path_queue,
+ const char *search_name,
+ CORBA::Boolean exclude_inherited
+ );
+
+ void lookup_op (
+ ACE_Unbounded_Queue<CORBA::DefinitionKind> &kind_queue,
+ ACE_Unbounded_Queue<ACE_TString> &path_queue,
+ const char *search_name,
+ CORBA::Boolean exclude_inherited
+ );
+
+private:
+ void lookup_name_recursive (
+ ACE_Unbounded_Queue<CORBA::DefinitionKind> &kind_queue,
+ ACE_Unbounded_Queue<ACE_TString> &path_queue,
+ const char *search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ CORBA::Boolean id_exists (
+ const char *id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Checks for global existence of the repo id.
+
+ CORBA::Boolean valid_container (
+ const CORBA::DefinitionKind op_kind
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Is this operation valid for this container type?
+
+ void update_refs (
+ const char *path,
+ const char *name
+ );
+ // Used with structs, unions and exceptions.
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_CONTAINER_I_H */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/EmitsDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/EmitsDef_i.cpp
new file mode 100644
index 00000000000..97ad175d7ad
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/EmitsDef_i.cpp
@@ -0,0 +1,60 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "Repository_i.h"
+#include "EmitsDef_i.h"
+
+ACE_RCSID(IFR_Service, EmitsDef_i, "$Id$")
+
+TAO_EmitsDef_i::TAO_EmitsDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key)
+ : TAO_IRObject_i (repo, section_key),
+ TAO_Contained_i (repo, section_key),
+ TAO_EventDef_i (repo, section_key)
+{
+}
+
+TAO_EmitsDef_i::~TAO_EmitsDef_i (void)
+{
+}
+
+CORBA::DefinitionKind
+TAO_EmitsDef_i::def_kind (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::dk_Emits;
+}
+
+void
+TAO_EmitsDef_i::destroy (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+void
+TAO_EmitsDef_i::destroy_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+}
+
+CORBA_Contained::Description *
+TAO_EmitsDef_i::describe (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->describe_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_Contained::Description *
+TAO_EmitsDef_i::describe_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/EmitsDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/EmitsDef_i.h
new file mode 100644
index 00000000000..d2ad56da6ae
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/EmitsDef_i.h
@@ -0,0 +1,90 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// EmitsDef_i.h
+//
+// = DESCRIPTION
+// EmitsDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_EMITSDEF_I_H
+#define TAO_EMITSDEF_I_H
+
+#include "EventDef_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_IFRService_Export TAO_EmitsDef_i : public virtual TAO_EventDef_i
+{
+ // = TITLE
+ // TAO_EmitsDef_i
+ //
+ // = DESCRIPTION
+ // Represents the definition of an event that is emitted
+ // by a component.
+ //
+public:
+ TAO_EmitsDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor
+
+ virtual ~TAO_EmitsDef_i (void);
+ // Destructor
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Return our definition kind.
+
+ virtual void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Remove the repository entry.
+
+ virtual void destroy_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_Contained::Description *describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+
+ virtual CORBA_Contained::Description *describe_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_EMITSDEF_I_H */
+
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/EnumDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/EnumDef_i.cpp
new file mode 100644
index 00000000000..288a13fdd66
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/EnumDef_i.cpp
@@ -0,0 +1,148 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "EnumDef_i.h"
+#include "Repository_i.h"
+#include "Servant_Factory.h"
+
+ACE_RCSID(IFR_Service, EnumDef_i, "$Id$")
+
+TAO_EnumDef_i::TAO_EnumDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key)
+ : TAO_IRObject_i (repo, section_key),
+ TAO_Contained_i (repo, section_key),
+ TAO_IDLType_i (repo, section_key),
+ TAO_TypedefDef_i (repo, section_key)
+{
+}
+
+TAO_EnumDef_i::~TAO_EnumDef_i (void)
+{
+}
+
+CORBA::DefinitionKind
+TAO_EnumDef_i::def_kind (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::dk_Enum;
+}
+
+CORBA::TypeCode_ptr
+TAO_EnumDef_i::type (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::TypeCode_ptr
+TAO_EnumDef_i::type_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString id;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "id",
+ id);
+
+ ACE_TString name;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "name",
+ name);
+
+ CORBA_EnumMemberSeq_var members = this->members_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->repo_->tc_factory ()->create_enum_tc (id.c_str (),
+ name.c_str (),
+ members.in ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_EnumMemberSeq *
+TAO_EnumDef_i::members (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->members_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_EnumMemberSeq *
+TAO_EnumDef_i::members_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ u_int count = 0;
+ this->repo_->config ()->get_integer_value (this->section_key_,
+ "count",
+ count);
+
+ CORBA_EnumMemberSeq *retval = 0;
+ ACE_NEW_THROW_EX (retval,
+ CORBA_EnumMemberSeq (count),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ retval->length (count);
+
+ for (u_int i = 0; i < count; i++)
+ {
+ ACE_Configuration_Section_Key member_key;
+ CORBA::String_var section_name = this->int_to_string (i);
+ this->repo_->config ()->open_section (this->section_key_,
+ section_name.in (),
+ 0,
+ member_key);
+
+ ACE_TString member_name;
+ this->repo_->config ()->get_string_value (member_key,
+ "name",
+ member_name);
+
+ (*retval)[i] = member_name.c_str ();
+ }
+
+ return retval;
+}
+
+void
+TAO_EnumDef_i::members (const CORBA_EnumMemberSeq &members
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->members_i (members
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_EnumDef_i::members_i (const CORBA_EnumMemberSeq &members
+ ACE_ENV_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ this->repo_->config ()->remove_section (this->section_key_,
+ "members",
+ 1);
+
+ CORBA::ULong count = members.length ();
+ this->repo_->config ()->set_integer_value (this->section_key_,
+ "count",
+ count);
+
+ for (CORBA::ULong i = 0; i < count; i ++)
+ {
+ ACE_Configuration_Section_Key member_key;
+ CORBA::String_var section_name = this->int_to_string (i);
+ this->repo_->config ()->open_section (this->section_key_,
+ section_name.in (),
+ 1,
+ member_key);
+
+ ACE_TString member_name (members[i]);
+ this->repo_->config ()->set_string_value (member_key,
+ "name",
+ member_name);
+ }
+}
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/EnumDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/EnumDef_i.h
new file mode 100644
index 00000000000..72a09ebf84b
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/EnumDef_i.h
@@ -0,0 +1,100 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// EnumDef_i.h
+//
+// = DESCRIPTION
+// EnumDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_ENUMDEF_I_H
+#define TAO_ENUMDEF_I_H
+
+#include "TypedefDef_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_IFRService_Export TAO_EnumDef_i : public virtual TAO_TypedefDef_i
+{
+public:
+ // = TITLE
+ // TAO_EnumDef_i
+ //
+ // = DESCRIPTION
+ // Represents an OMG IDL enumeration definition.
+ //
+public:
+ TAO_EnumDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor
+
+ virtual ~TAO_EnumDef_i (void);
+ // Destructor
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Return our definition kind.
+
+ virtual CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From IDLType_i's pure virtual function.
+
+ virtual CORBA::TypeCode_ptr type_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From IDLType_i's pure virtual function.
+
+ virtual CORBA_EnumMemberSeq *members (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_EnumMemberSeq *members_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void members (
+ const CORBA_EnumMemberSeq &members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void members_i (
+ const CORBA_EnumMemberSeq &members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_ENUMDEF_I_H */
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/EventDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/EventDef_i.cpp
new file mode 100644
index 00000000000..92500cea21e
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/EventDef_i.cpp
@@ -0,0 +1,89 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "Repository_i.h"
+#include "EventDef_i.h"
+
+ACE_RCSID(IFR_Service, EventDef_i, "$Id$")
+
+TAO_EventDef_i::TAO_EventDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key)
+ : TAO_IRObject_i (repo, section_key),
+ TAO_Contained_i (repo, section_key)
+{
+}
+
+TAO_EventDef_i::~TAO_EventDef_i (void)
+{
+}
+
+void
+TAO_EventDef_i::destroy (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+void
+TAO_EventDef_i::destroy_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+}
+
+CORBA_Contained::Description *
+TAO_EventDef_i::describe (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->describe_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_Contained::Description *
+TAO_EventDef_i::describe_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+CORBA::Boolean
+TAO_EventDef_i::is_a (const char *event_id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->is_a_i (event_id
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA::Boolean
+TAO_EventDef_i::is_a_i (const char * /* event_id */
+ ACE_ENV_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+CORBA_ValueDef_ptr
+TAO_EventDef_i::event (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA_ValueDef::_nil ());
+
+ return this->event_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_ValueDef_ptr
+TAO_EventDef_i::event_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/EventDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/EventDef_i.h
new file mode 100644
index 00000000000..3be60e221a6
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/EventDef_i.h
@@ -0,0 +1,106 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// EventDef_i.h
+//
+// = DESCRIPTION
+// EventDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_EVENTDEF_I_H
+#define TAO_EVENTDEF_I_H
+
+#include "Contained_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_IFRService_Export TAO_EventDef_i : public virtual TAO_Contained_i
+{
+ // = TITLE
+ // TAO_EventDef_i
+ //
+ // = DESCRIPTION
+ // Represents an event definition. It refers to a ValueDef
+ // object that contains information about the event.
+ //
+public:
+ TAO_EventDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor
+
+ virtual ~TAO_EventDef_i (void);
+ // Destructor
+
+ virtual void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Remove the repository entry.
+
+ virtual void destroy_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_Contained::Description *describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+
+ virtual CORBA_Contained::Description *describe_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+
+ virtual CORBA::Boolean is_a (
+ const char *event_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA::Boolean is_a_i (
+ const char *event_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_ValueDef_ptr event (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_ValueDef_ptr event_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_EVENTDEF_I_H */
+
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/ExceptionDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/ExceptionDef_i.cpp
new file mode 100644
index 00000000000..6dc98d5c663
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/ExceptionDef_i.cpp
@@ -0,0 +1,335 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "ExceptionDef_i.h"
+#include "Repository_i.h"
+#include "IDLType_i.h"
+#include "Servant_Factory.h"
+#include "ace/Auto_Ptr.h"
+
+ACE_RCSID(IFR_Service, ExceptionDef_i, "$Id$")
+
+TAO_ExceptionDef_i::TAO_ExceptionDef_i (
+ TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key
+ )
+ : TAO_IRObject_i (repo, section_key),
+ TAO_Container_i (repo, section_key),
+ TAO_Contained_i (repo, section_key)
+{
+}
+
+TAO_ExceptionDef_i::~TAO_ExceptionDef_i (void)
+{
+}
+
+CORBA::DefinitionKind
+TAO_ExceptionDef_i::def_kind (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::dk_Exception;
+}
+
+void
+TAO_ExceptionDef_i::destroy (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+void
+TAO_ExceptionDef_i::destroy_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Destroy our members.
+ TAO_Container_i::destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ // Destroy ourself.
+ TAO_Contained_i::destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+}
+
+CORBA_Contained::Description *
+TAO_ExceptionDef_i::describe (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->describe_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_Contained::Description *
+TAO_ExceptionDef_i::describe_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA_Contained::Description *desc_ptr = 0;
+ ACE_NEW_THROW_EX (desc_ptr,
+ CORBA_Contained::Description,
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ CORBA_Contained::Description_var retval = desc_ptr;
+
+ retval->kind = this->def_kind (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA_ExceptionDescription ed;
+
+ ed.name = this->name_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ ed.id = this->id_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ ACE_TString container_id;
+
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "container_id",
+ container_id);
+
+ ed.defined_in = container_id.c_str ();
+
+ ed.version = this->version_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ ed.type = this->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ retval->value <<= ed;
+
+ return retval._retn ();
+}
+
+CORBA::TypeCode_ptr
+TAO_ExceptionDef_i::type (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::TypeCode_ptr
+TAO_ExceptionDef_i::type_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString id;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "id",
+ id);
+
+ ACE_TString name;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "name",
+ name);
+
+ CORBA_StructMemberSeq_var members = this->members_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->repo_->tc_factory ()->create_exception_tc (id.c_str (),
+ name.c_str (),
+ members.in ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_StructMemberSeq *
+TAO_ExceptionDef_i::members (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->members_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_StructMemberSeq *
+TAO_ExceptionDef_i::members_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_Unbounded_Queue<CORBA::DefinitionKind> kind_queue;
+ ACE_Unbounded_Queue<ACE_TString> path_queue;
+ ACE_Unbounded_Queue<ACE_TString> name_queue;
+
+ ACE_Configuration_Section_Key refs_key;
+ this->repo_->config ()->open_section (this->section_key_,
+ "refs",
+ 0,
+ refs_key);
+
+ u_int count = 0;
+ this->repo_->config ()->get_integer_value (refs_key,
+ "count",
+ count);
+
+ for (u_int i = 0; i < count; ++i)
+ {
+ ACE_Configuration_Section_Key member_key;
+ CORBA::String_var section_name = this->int_to_string (i);
+ this->repo_->config ()->open_section (refs_key,
+ section_name.in (),
+ 0,
+ member_key);
+
+ ACE_TString path;
+ this->repo_->config ()->get_string_value (member_key,
+ "path",
+ path);
+
+ ACE_Configuration_Section_Key entry_key;
+ int status =
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ path,
+ entry_key,
+ 0);
+
+ // This entry may have been removed.
+ if (status == 0)
+ {
+ path_queue.enqueue_tail (path);
+
+ ACE_TString name;
+ this->repo_->config ()->get_string_value (member_key,
+ "name",
+ name);
+
+ name_queue.enqueue_tail (name);
+
+ u_int kind = 0;
+ this->repo_->config ()->get_integer_value (entry_key,
+ "def_kind",
+ kind);
+
+ CORBA::DefinitionKind def_kind =
+ ACE_static_cast (CORBA::DefinitionKind, kind);
+
+ kind_queue.enqueue_tail (def_kind);
+ }
+ }
+
+ size_t size = kind_queue.size ();
+
+ CORBA_StructMemberSeq *members = 0;
+ ACE_NEW_THROW_EX (members,
+ CORBA_StructMemberSeq (size),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ members->length (size);
+
+ CORBA_StructMemberSeq_var retval = members;
+
+ ACE_TString name;
+ ACE_TString path;
+ CORBA::DefinitionKind kind = CORBA::dk_none;
+ CORBA::Object_var obj;
+ ACE_Configuration_Section_Key member_key;
+ TAO_IDLType_i *impl = 0;
+
+ for (size_t k = 0; k < size; k++)
+ {
+ name_queue.dequeue_head (name);
+
+ retval[k].name = name.c_str ();
+
+ kind_queue.dequeue_head (kind);
+
+ path_queue.dequeue_head (path);
+
+ obj =
+ this->repo_->servant_factory ()->create_objref (kind,
+ path.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ retval[k].type_def = CORBA_IDLType::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ path,
+ member_key,
+ 0);
+
+ impl =
+ this->repo_->servant_factory ()->create_idltype (member_key
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_IDLType_i> safety (impl);
+
+ retval[k].type = impl->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+ }
+
+ return retval._retn ();
+}
+
+void
+TAO_ExceptionDef_i::members (const CORBA_StructMemberSeq &members
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->members_i (members
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ExceptionDef_i::members_i (const CORBA_StructMemberSeq &members
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Destroy our old members, both refs and defns.
+ TAO_Container_i::destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ CORBA::ULong count = members.length ();
+
+ // Exceptions can be empty.
+ if (count > 0)
+ {
+ ACE_TString section_name;
+ ACE_Configuration_Section_Key refs_key;
+
+ this->repo_->config ()->open_section (this->section_key_,
+ "refs",
+ 1,
+ refs_key);
+
+ // Create a section for each new member. We just store the
+ // member name and the path to its database entry.
+ for (CORBA::ULong i = 0; i < count; i++)
+ {
+ ACE_Configuration_Section_Key member_key;
+ CORBA::String_var section_name = this->int_to_string (i);
+ this->repo_->config ()->open_section (refs_key,
+ section_name.in (),
+ 1,
+ member_key);
+
+ ACE_TString name (members[i].name);
+ this->repo_->config ()->set_string_value (member_key,
+ "name",
+ name);
+
+ PortableServer::ObjectId_var oid =
+ this->repo_->ir_poa ()->reference_to_id (members[i].type_def.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ CORBA::String_var path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ this->repo_->config ()->set_string_value (member_key,
+ "path",
+ path.in ());
+ }
+
+ this->repo_->config ()->set_integer_value (refs_key,
+ "count",
+ count);
+ }
+}
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/ExceptionDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/ExceptionDef_i.h
new file mode 100644
index 00000000000..12e20b6aaa6
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/ExceptionDef_i.h
@@ -0,0 +1,123 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// ExceptionDef_i.h
+//
+// = DESCRIPTION
+// ExceptionDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_EXCEPTIONDEF_I_H
+#define TAO_EXCEPTIONDEF_I_H
+
+#include "Contained_i.h"
+#include "Container_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_IFRService_Export TAO_ExceptionDef_i : public virtual TAO_Contained_i,
+ public virtual TAO_Container_i
+{
+ // = TITLE
+ // TAO_ExceptionDef_i
+ //
+ // = DESCRIPTION
+ // Represents an exception definition.
+ //
+public:
+ TAO_ExceptionDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor
+
+ virtual ~TAO_ExceptionDef_i (void);
+ // Destructor
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Return our definition kind.
+
+ virtual void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Remove the repository entry.
+
+ virtual void destroy_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Remove the repository entry.
+
+ virtual CORBA_Contained::Description *describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+
+ virtual CORBA_Contained::Description *describe_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+
+ virtual CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA::TypeCode_ptr type_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_StructMemberSeq *members (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_StructMemberSeq *members_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void members (
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void members_i (
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_EXCEPTIONDEF_I_H */
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/FactoryDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/FactoryDef_i.cpp
new file mode 100644
index 00000000000..aa04971500c
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/FactoryDef_i.cpp
@@ -0,0 +1,62 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "Repository_i.h"
+#include "FactoryDef_i.h"
+
+ACE_RCSID(IFR_Service, FactoryDef_i, "$Id$")
+
+TAO_FactoryDef_i::TAO_FactoryDef_i (
+ TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key
+ )
+ : TAO_IRObject_i (repo, section_key),
+ TAO_Contained_i (repo, section_key),
+ TAO_OperationDef_i (repo, section_key)
+{
+}
+
+TAO_FactoryDef_i::~TAO_FactoryDef_i (void)
+{
+}
+
+CORBA::DefinitionKind
+TAO_FactoryDef_i::def_kind (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::dk_Factory;
+}
+
+void
+TAO_FactoryDef_i::destroy (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+void
+TAO_FactoryDef_i::destroy_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+}
+
+CORBA_Contained::Description *
+TAO_FactoryDef_i::describe (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->describe_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_Contained::Description *
+TAO_FactoryDef_i::describe_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/FactoryDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/FactoryDef_i.h
new file mode 100644
index 00000000000..d973dfcf21e
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/FactoryDef_i.h
@@ -0,0 +1,90 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// FactoryDef_i.h
+//
+// = DESCRIPTION
+// FactoryDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_FACTORYDEF_I_H
+#define TAO_FACTORYDEF_I_H
+
+#include "OperationDef_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_IFRService_Export TAO_FactoryDef_i : public virtual TAO_OperationDef_i
+{
+ // = TITLE
+ // TAO_FactoryDef_i
+ //
+ // = DESCRIPTION
+ // Represents the definition of a factory operation in a home.
+ //
+public:
+ TAO_FactoryDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor
+
+ virtual ~TAO_FactoryDef_i (void);
+ // Destructor
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Return our definition kind.
+
+ virtual void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Remove the repository entry.
+
+ virtual void destroy_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_Contained::Description *describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+
+ virtual CORBA_Contained::Description *describe_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_FACTORYDEF_I_H */
+
+
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/FinderDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/FinderDef_i.cpp
new file mode 100644
index 00000000000..833621ce7e1
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/FinderDef_i.cpp
@@ -0,0 +1,60 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "Repository_i.h"
+#include "FinderDef_i.h"
+
+ACE_RCSID(IFR_Service, FinderDef_i, "$Id$")
+
+TAO_FinderDef_i::TAO_FinderDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key)
+ : TAO_IRObject_i (repo, section_key),
+ TAO_Contained_i (repo, section_key),
+ TAO_OperationDef_i (repo, section_key)
+{
+}
+
+TAO_FinderDef_i::~TAO_FinderDef_i (void)
+{
+}
+
+CORBA::DefinitionKind
+TAO_FinderDef_i::def_kind (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::dk_Finder;
+}
+
+void
+TAO_FinderDef_i::destroy (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+void
+TAO_FinderDef_i::destroy_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+}
+
+CORBA_Contained::Description *
+TAO_FinderDef_i::describe (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->describe_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_Contained::Description *
+TAO_FinderDef_i::describe_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/FinderDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/FinderDef_i.h
new file mode 100644
index 00000000000..4e244d33a68
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/FinderDef_i.h
@@ -0,0 +1,90 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// FinderDef_i.h
+//
+// = DESCRIPTION
+// FinderDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_FINDERDEF_I_H
+#define TAO_FINDERDEF_I_H
+
+#include "OperationDef_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_IFRService_Export TAO_FinderDef_i : public virtual TAO_OperationDef_i
+{
+ // = TITLE
+ // TAO_FinderDef_i
+ //
+ // = DESCRIPTION
+ // Represents the definition of a finder operation in a home.
+ //
+public:
+ TAO_FinderDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor
+
+ virtual ~TAO_FinderDef_i (void);
+ // Destructor
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Return our definition kind.
+
+ virtual void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Remove the repository entry.
+
+ virtual void destroy_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_Contained::Description *describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+
+ virtual CORBA_Contained::Description *describe_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_FINDERDEF_I_H */
+
+
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/FixedDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/FixedDef_i.cpp
new file mode 100644
index 00000000000..fcf7f2e05f0
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/FixedDef_i.cpp
@@ -0,0 +1,131 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "Repository_i.h"
+#include "FixedDef_i.h"
+
+ACE_RCSID(IFR_Service, FixedDef_i, "$Id$")
+
+TAO_FixedDef_i::TAO_FixedDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key)
+ : TAO_IRObject_i (repo, section_key),
+ TAO_IDLType_i (repo, section_key)
+{
+}
+
+TAO_FixedDef_i::~TAO_FixedDef_i (void)
+{
+}
+
+CORBA::DefinitionKind
+TAO_FixedDef_i::def_kind (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::dk_Fixed;
+}
+
+void
+TAO_FixedDef_i::destroy (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+void
+TAO_FixedDef_i::destroy_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+}
+
+CORBA::TypeCode_ptr
+TAO_FixedDef_i::type (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::TypeCode_ptr
+TAO_FixedDef_i::type_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+CORBA::UShort
+TAO_FixedDef_i::digits (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->digits_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::UShort
+TAO_FixedDef_i::digits_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+void
+TAO_FixedDef_i::digits (CORBA::UShort digits
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->digits_i (digits
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_FixedDef_i::digits_i (CORBA::UShort /* digits */
+ ACE_ENV_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+}
+
+CORBA::Short
+TAO_FixedDef_i::scale (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->scale_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::Short
+TAO_FixedDef_i::scale_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+void
+TAO_FixedDef_i::scale (CORBA::Short scale
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->scale_i (scale
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_FixedDef_i::scale_i (CORBA::Short /* scale */
+ ACE_ENV_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+}
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/FixedDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/FixedDef_i.h
new file mode 100644
index 00000000000..6dbbec6d886
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/FixedDef_i.h
@@ -0,0 +1,132 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// FixedDef_i.h
+//
+// = DESCRIPTION
+// FixedDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_FIXEDDEF_I_H
+#define TAO_FIXEDDEF_I_H
+
+#include "IDLType_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_IFRService_Export TAO_FixedDef_i : public virtual TAO_IDLType_i
+{
+ // = TITLE
+ // TAO_FixedDef_i
+ //
+ // = DESCRIPTION
+ // Represents an IDL fixed type.
+ //
+public:
+ TAO_FixedDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor
+
+ virtual ~TAO_FixedDef_i (void);
+ // Destructor
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Return our definition kind.
+
+ virtual void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Remove the repository entry.
+
+ virtual void destroy_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From IDLType_i's pure virtual function.
+
+ virtual CORBA::TypeCode_ptr type_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From IDLType_i's pure virtual function.
+
+ virtual CORBA::UShort digits (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA::UShort digits_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void digits (
+ CORBA::UShort digits
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void digits_i (
+ CORBA::UShort digits
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Short scale (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA::Short scale_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void scale (
+ CORBA::Short scale
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void scale_i (
+ CORBA::Short scale
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_FIXEDDEF_I_H */
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/HomeDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/HomeDef_i.cpp
new file mode 100644
index 00000000000..966b10f2168
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/HomeDef_i.cpp
@@ -0,0 +1,277 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "Repository_i.h"
+#include "HomeDef_i.h"
+
+ACE_RCSID(IFR_Service, HomeDef_i, "$Id$")
+
+TAO_HomeDef_i::TAO_HomeDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key)
+ : TAO_IRObject_i (repo, section_key),
+ TAO_Container_i (repo, section_key),
+ TAO_Contained_i (repo, section_key),
+ TAO_IDLType_i (repo, section_key),
+ TAO_InterfaceDef_i (repo, section_key)
+{
+}
+
+TAO_HomeDef_i::~TAO_HomeDef_i (void)
+{
+}
+
+CORBA::DefinitionKind
+TAO_HomeDef_i::def_kind (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::dk_Home;
+}
+
+void
+TAO_HomeDef_i::destroy (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+void
+TAO_HomeDef_i::destroy_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+}
+
+CORBA_Contained::Description *
+TAO_HomeDef_i::describe (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->describe_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_Contained::Description *
+TAO_HomeDef_i::describe_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+CORBA::TypeCode_ptr
+TAO_HomeDef_i::type (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::TypeCode_ptr
+TAO_HomeDef_i::type_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+IR::HomeDef_ptr
+TAO_HomeDef_i::base_home (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (IR::HomeDef::_nil ());
+
+ return this->base_home_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+IR::HomeDef_ptr
+TAO_HomeDef_i::base_home_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+IR::ComponentDef_ptr
+TAO_HomeDef_i::managed_component (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (IR::ComponentDef::_nil ());
+
+ return this->managed_component_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+IR::ComponentDef_ptr
+TAO_HomeDef_i::managed_component_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+IR::PrimaryKeyDef_ptr
+TAO_HomeDef_i::primary_key (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (IR::PrimaryKeyDef::_nil ());
+
+ return this->primary_key_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+IR::PrimaryKeyDef_ptr
+TAO_HomeDef_i::primary_key_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+IR::FactoryDefSeq *
+TAO_HomeDef_i::factories (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->factories_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+IR::FactoryDefSeq *
+TAO_HomeDef_i::factories_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+IR::FinderDefSeq *
+TAO_HomeDef_i::finders (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->finders_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+IR::FinderDefSeq *
+TAO_HomeDef_i::finders_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+CORBA::Boolean
+TAO_HomeDef_i::is_basic (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->is_basic_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::Boolean
+TAO_HomeDef_i::is_basic_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+IR::PrimaryKeyDef_ptr
+TAO_HomeDef_i::create_primary_key (const char *id,
+ const char *name,
+ const char *version,
+ CORBA_ValueDef_ptr primary_key
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD_RETURN (IR::PrimaryKeyDef::_nil ());
+
+ return this->create_primary_key_i (id,
+ name,
+ version,
+ primary_key
+ ACE_ENV_ARG_PARAMETER);
+}
+
+IR::PrimaryKeyDef_ptr
+TAO_HomeDef_i::create_primary_key_i (const char * /* id */,
+ const char * /* name */,
+ const char * /* version */,
+ CORBA_ValueDef_ptr /* primary_key */
+ ACE_ENV_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+IR::FactoryDef_ptr
+TAO_HomeDef_i::create_factory (const char *id,
+ const char *name,
+ const char *version,
+ const CORBA_ParDescriptionSeq &params,
+ const CORBA_ExceptionDefSeq &exceptions
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD_RETURN (IR::FactoryDef::_nil ());
+
+ return this->create_factory_i (id,
+ name,
+ version,
+ params,
+ exceptions
+ ACE_ENV_ARG_PARAMETER);
+}
+
+IR::FactoryDef_ptr
+TAO_HomeDef_i::create_factory_i (
+ const char * /* id */,
+ const char * /* name */,
+ const char * /* version */,
+ const CORBA_ParDescriptionSeq & /* params */,
+ const CORBA_ExceptionDefSeq & /* exceptions */
+ ACE_ENV_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+IR::FinderDef_ptr
+TAO_HomeDef_i::create_finder (const char *id,
+ const char *name,
+ const char *version,
+ const CORBA_ParDescriptionSeq &params,
+ const CORBA_ExceptionDefSeq &exceptions
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD_RETURN (IR::FinderDef::_nil ());
+
+ return this->create_finder_i (id,
+ name,
+ version,
+ params,
+ exceptions
+ ACE_ENV_ARG_PARAMETER);
+}
+
+IR::FinderDef_ptr
+TAO_HomeDef_i::create_finder_i (
+ const char * /* id */,
+ const char * /* name */,
+ const char * /* version */,
+ const CORBA_ParDescriptionSeq & /* params */,
+ const CORBA_ExceptionDefSeq & /* exceptions */
+ ACE_ENV_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/HomeDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/HomeDef_i.h
new file mode 100644
index 00000000000..67876056d84
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/HomeDef_i.h
@@ -0,0 +1,222 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// HomeDef_i.h
+//
+// = DESCRIPTION
+// HomeDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_HOMEDEF_I_H
+#define TAO_HOMEDEF_I_H
+
+#include "InterfaceDef_i.h"
+#include "ifr_service_export.h"
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+
+#include "IFR_ComponentsS.h"
+
+#if defined(_MSC_VER)
+#if (_MSC_VER >= 1200)
+#pragma warning(push)
+#endif /* _MSC_VER >= 1200 */
+#pragma warning(disable:4250)
+#endif /* _MSC_VER */
+
+class TAO_IFRService_Export TAO_HomeDef_i : public virtual TAO_InterfaceDef_i
+{
+ // = TITLE
+ // HomTAO_HomeDef_ieDef_i
+ //
+ // = DESCRIPTION
+ // Represents a home definition, containing factory and finder.
+ //
+public:
+ TAO_HomeDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor
+
+ virtual ~TAO_HomeDef_i (void);
+ // Destructor
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Return our definition kind.
+
+ virtual void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Remove the repository entry.
+
+ virtual void destroy_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_Contained::Description *describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+
+ virtual CORBA_Contained::Description *describe_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+
+ virtual CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From IDLType_i's pure virtual function.
+
+ virtual CORBA::TypeCode_ptr type_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From IDLType_i's pure virtual function.
+
+ virtual IR::HomeDef_ptr base_home (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ IR::HomeDef_ptr base_home_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual IR::ComponentDef_ptr managed_component (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ IR::ComponentDef_ptr managed_component_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual IR::PrimaryKeyDef_ptr primary_key (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ IR::PrimaryKeyDef_ptr primary_key_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual IR::FactoryDefSeq *factories (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ IR::FactoryDefSeq *factories_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual IR::FinderDefSeq *finders (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ IR::FinderDefSeq *finders_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean is_basic (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA::Boolean is_basic_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual IR::PrimaryKeyDef_ptr create_primary_key (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_ValueDef_ptr primary_key
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ IR::PrimaryKeyDef_ptr create_primary_key_i (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_ValueDef_ptr primary_key
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual IR::FactoryDef_ptr create_factory (
+ const char *id,
+ const char *name,
+ const char *version,
+ const CORBA_ParDescriptionSeq &params,
+ const CORBA_ExceptionDefSeq &exceptions
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ IR::FactoryDef_ptr create_factory_i (
+ const char *id,
+ const char *name,
+ const char *version,
+ const CORBA_ParDescriptionSeq &params,
+ const CORBA_ExceptionDefSeq &exceptions
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual IR::FinderDef_ptr create_finder (
+ const char *id,
+ const char *name,
+ const char *version,
+ const CORBA_ParDescriptionSeq &params,
+ const CORBA_ExceptionDefSeq &exceptions
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ IR::FinderDef_ptr create_finder_i (
+ const char *id,
+ const char *name,
+ const char *version,
+ const CORBA_ParDescriptionSeq &params,
+ const CORBA_ExceptionDefSeq &exceptions
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_HOMEDEF_I_H */
+
+
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IDLType_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/IDLType_i.cpp
new file mode 100644
index 00000000000..d81ca96cae0
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IDLType_i.cpp
@@ -0,0 +1,17 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "IDLType_i.h"
+
+ACE_RCSID(IFR_Service, IDLType_i, "$Id$")
+
+TAO_IDLType_i::TAO_IDLType_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key)
+ : TAO_IRObject_i (repo, section_key)
+{
+}
+
+TAO_IDLType_i::~TAO_IDLType_i (void)
+{
+}
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IDLType_i.h b/TAO/orbsvcs/orbsvcs/IFRService/IDLType_i.h
new file mode 100644
index 00000000000..126a44ac99b
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IDLType_i.h
@@ -0,0 +1,75 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// IDLType_i.h
+//
+// = DESCRIPTION
+// IDLType servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_IDLTYPE_I_H
+#define TAO_IDLTYPE_I_H
+
+#include "IRObject_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_Repository_i;
+
+class TAO_IFRService_Export TAO_IDLType_i : public virtual TAO_IRObject_i
+{
+ // = TITLE
+ // TAO_IDLType_i
+ //
+ // = DESCRIPTION
+ // Abstract base class for all IR objects that represent
+ // OMG IDL types. Provides access to the TypeCode describing
+ // the type.
+ //
+public:
+ TAO_IDLType_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor.
+
+ virtual ~TAO_IDLType_i (void);
+ // Destructor.
+
+ virtual CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException)) = 0;
+ // Defined in concrete classes.
+
+ virtual CORBA::TypeCode_ptr type_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException)) = 0;
+ // Defined in concrete classes.
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_IDLTYPE_I_H */
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IFR_BaseS.cpp b/TAO/orbsvcs/orbsvcs/IFRService/IFR_BaseS.cpp
new file mode 100644
index 00000000000..c45f8003fce
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_BaseS.cpp
@@ -0,0 +1,10497 @@
+// -*- C++ -*-
+//
+// $Id$
+
+// **** Code generated by the The ACE ORB (TAO) IDL Compiler ****
+// TAO and the TAO IDL Compiler have been developed by:
+// Center for Distributed Object Computing
+// Washington University
+// St. Louis, MO
+// USA
+// http://www.cs.wustl.edu/~schmidt/doc-center.html
+// and
+// Distributed Object Computing Laboratory
+// University of California at Irvine
+// Irvine, CA
+// USA
+// http://doc.ece.uci.edu/
+//
+// Information about TAO is available at:
+// http://www.cs.wustl.edu/~schmidt/TAO.html
+
+#ifndef _TAO_IDL__________ORBSVCS_IFR_SERVICE_ORIG_IFR_BASES_CPP_
+#define _TAO_IDL__________ORBSVCS_IFR_SERVICE_ORIG_IFR_BASES_CPP_
+
+#include "IFR_BaseS.h"
+
+#include "tao/PortableServer/Object_Adapter.h"
+#include "tao/PortableServer/Operation_Table.h"
+#include "tao/TAO_Server_Request.h"
+#include "tao/ORB_Core.h"
+#include "tao/Stub.h"
+#include "tao/IFR_Client_Adapter.h"
+#include "tao/PortableInterceptor.h"
+
+#if TAO_HAS_INTERCEPTORS == 1
+#include "tao/RequestInfo_Util.h"
+#include "tao/PortableServer/ServerRequestInfo.h"
+#include "tao/PortableServer/ServerInterceptorAdapter.h"
+#endif /* TAO_HAS_INTERCEPTORS == 1 */
+
+#include "ace/Dynamic_Service.h"
+
+#if defined (__BORLANDC__)
+#pragma option -w-rvl -w-rch -w-ccc -w-aus
+#endif /* __BORLANDC__ */
+
+#if !defined (__ACE_INLINE__)
+#include "IFR_BaseS.i"
+#endif /* !defined INLINE */
+
+class TAO_CORBA_IRObject_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 22:18:35 */
+/* C++ code produced by gperf version 2.8 (ACE version) */
+/* Command-line: gperf -m -M -J -c -C -D -E -T -f 0 -F 0 -a -o -t -p -K opname_ -L C++ -Z TAO_CORBA_IRObject_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_CORBA_IRObject_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 0,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 0,
+ 19, 19, 0, 0, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 5, 19, 19, 19, 19, 0, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19,
+#else
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 0, 19, 0, 19, 19,
+ 0, 0, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 5, 19, 19, 19,
+ 19, 0, 19, 19, 19, 19, 19, 19,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_CORBA_IRObject_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 5,
+ MIN_WORD_LENGTH = 5,
+ MAX_WORD_LENGTH = 13,
+ MIN_HASH_VALUE = 5,
+ MAX_HASH_VALUE = 18,
+ HASH_VALUE_RANGE = 14,
+ DUPLICATES = 0,
+ WORDLIST_SIZE = 10
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},{"",0},
+ {"_is_a", &POA_CORBA_IRObject::_is_a_skel},
+ {"",0},
+ {"destroy", &POA_CORBA_IRObject::destroy_skel},
+ {"",0},{"",0},
+ {"_interface", &POA_CORBA_IRObject::_interface_skel},
+ {"",0},{"",0},
+ {"_get_def_kind", &POA_CORBA_IRObject::_get_def_kind_skel},
+ {"",0},{"",0},{"",0},{"",0},
+ {"_non_existent", &POA_CORBA_IRObject::_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 22:18:35 */
+static TAO_CORBA_IRObject_Perfect_Hash_OpTable tao_CORBA_IRObject_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+class TAO_ServerRequestInfo_CORBA_IRObject_def_kind_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_IRObject_def_kind_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_IRObject *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA::DefinitionKind result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_IRObject_def_kind_get (const TAO_ServerRequestInfo_CORBA_IRObject_def_kind_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_IRObject_def_kind_get &);
+
+private:
+ POA_CORBA_IRObject *_tao_impl;
+ CORBA::DefinitionKind _result;
+};
+
+TAO_ServerRequestInfo_CORBA_IRObject_def_kind_get::TAO_ServerRequestInfo_CORBA_IRObject_def_kind_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_IRObject *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_IRObject_def_kind_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_IRObject_def_kind_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_IRObject_def_kind_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_IRObject_def_kind_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_IRObject_def_kind_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_IRObject_def_kind_get::result (CORBA::DefinitionKind result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_IRObject_destroy : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_IRObject_destroy (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_IRObject *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_IRObject_destroy (const TAO_ServerRequestInfo_CORBA_IRObject_destroy &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_IRObject_destroy &);
+
+private:
+ POA_CORBA_IRObject *_tao_impl;
+
+};
+
+TAO_ServerRequestInfo_CORBA_IRObject_destroy::TAO_ServerRequestInfo_CORBA_IRObject_destroy (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_IRObject *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_IRObject_destroy::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_IRObject_destroy::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_IRObject_destroy::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_IRObject_destroy::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_IRObject_destroy::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+_TAO_CORBA_IRObject_Strategized_Proxy_Broker *_TAO_CORBA_IRObject_Strategized_Proxy_Broker::the_TAO_CORBA_IRObject_Strategized_Proxy_Broker (void)
+{
+ static _TAO_CORBA_IRObject_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+_TAO_CORBA_IRObject_Strategized_Proxy_Broker::_TAO_CORBA_IRObject_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+_TAO_CORBA_IRObject_Strategized_Proxy_Broker::~_TAO_CORBA_IRObject_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+_TAO_CORBA_IRObject_Proxy_Impl&
+_TAO_CORBA_IRObject_Strategized_Proxy_Broker::select_proxy (
+ ::CORBA_IRObject *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+_TAO_CORBA_IRObject_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ _TAO_CORBA_IRObject_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::_TAO_CORBA_IRObject_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+_TAO_CORBA_IRObject_Proxy_Broker *
+_TAO_CORBA_IRObject_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::_TAO_CORBA_IRObject_Strategized_Proxy_Broker::the_TAO_CORBA_IRObject_Strategized_Proxy_Broker();
+}
+
+int
+_TAO_CORBA_IRObject_Proxy_Broker_Factory_Initializer (long)
+{
+ _TAO_CORBA_IRObject_Proxy_Broker_Factory_function_pointer =
+ _TAO_CORBA_IRObject_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int _TAO_CORBA_IRObject_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ _TAO_CORBA_IRObject_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, _TAO_CORBA_IRObject_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+_TAO_CORBA_IRObject_ThruPOA_Proxy_Impl::_TAO_CORBA_IRObject_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+CORBA::DefinitionKind _TAO_CORBA_IRObject_ThruPOA_Proxy_Impl::def_kind (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::DefinitionKind _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "def_kind",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (_tao_retval);
+ return ACE_reinterpret_cast (
+ POA_CORBA_IRObject_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/IRObject:1.0"
+ )
+ )->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_IRObject_ThruPOA_Proxy_Impl::destroy (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "destroy",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_IRObject_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/IRObject:1.0"
+ )
+ )->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ return;
+}
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_CORBA_IRObject::POA_CORBA_IRObject (void)
+{
+ this->optable_ = &tao_CORBA_IRObject_optable;
+}
+
+// copy ctor
+POA_CORBA_IRObject::POA_CORBA_IRObject (const POA_CORBA_IRObject& rhs)
+ : TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_CORBA_IRObject::~POA_CORBA_IRObject (void)
+{
+}
+
+void POA_CORBA_IRObject::_get_def_kind_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject *_tao_impl =
+ ACE_static_cast (POA_CORBA_IRObject *, _tao_object_reference);
+
+ CORBA::DefinitionKind _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_IRObject_def_kind_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA::DefinitionKind _tao_retval_info = _tao_retval;
+ ri.result (_tao_retval_info);
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_IRObject::destroy_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject *_tao_impl =
+ ACE_static_cast (POA_CORBA_IRObject *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_IRObject_destroy ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_IRObject::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_IRObject *_tao_impl = (POA_CORBA_IRObject *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_IRObject::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject *_tao_impl = (POA_CORBA_IRObject *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_IRObject::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject *_tao_impl = (POA_CORBA_IRObject *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_CORBA_IRObject::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_CORBA_IRObject::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Object:1.0") == 0)
+ return ACE_static_cast(PortableServer::Servant, this);
+ return 0;
+}
+
+void POA_CORBA_IRObject::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_CORBA_IRObject::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/CORBA/IRObject:1.0";
+}
+
+CORBA_IRObject*
+POA_CORBA_IRObject::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::CORBA_IRObject::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_CORBA_Contained_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 22:18:36 */
+/* C++ code produced by gperf version 2.8 (ACE version) */
+/* Command-line: gperf -m -M -J -c -C -D -E -T -f 0 -F 0 -a -o -t -p -K opname_ -L C++ -Z TAO_CORBA_Contained_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_CORBA_Contained_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 0, 0, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 0, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 10, 37, 37, 37, 37, 10, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37,
+#else
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 0, 37, 0, 37, 37,
+ 0, 0, 37, 37, 37, 37, 37, 37, 37, 0,
+ 0, 37, 37, 37, 37, 37, 10, 37, 37, 37,
+ 37, 10, 37, 37, 37, 37, 37, 37,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_CORBA_Contained_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 16,
+ MIN_WORD_LENGTH = 4,
+ MAX_WORD_LENGTH = 26,
+ MIN_HASH_VALUE = 4,
+ MAX_HASH_VALUE = 36,
+ HASH_VALUE_RANGE = 33,
+ DUPLICATES = 4,
+ WORDLIST_SIZE = 20
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},
+ {"move", &POA_CORBA_Contained::move_skel},
+ {"_is_a", &POA_CORBA_Contained::_is_a_skel},
+ {"_get_id", &POA_CORBA_Contained::_get_id_skel},
+ {"_set_id", &POA_CORBA_Contained::_set_id_skel},
+ {"describe", &POA_CORBA_Contained::describe_skel},
+ {"_get_name", &POA_CORBA_Contained::_get_name_skel},
+ {"_set_name", &POA_CORBA_Contained::_set_name_skel},
+ {"_interface", &POA_CORBA_Contained::_interface_skel},
+ {"_get_version", &POA_CORBA_Contained::_get_version_skel},
+ {"_set_version", &POA_CORBA_Contained::_set_version_skel},
+ {"_get_def_kind", &POA_CORBA_Contained::_get_def_kind_skel},
+ {"_get_defined_in", &POA_CORBA_Contained::_get_defined_in_skel},
+ {"destroy", &POA_CORBA_Contained::destroy_skel},
+ {"_get_absolute_name", &POA_CORBA_Contained::_get_absolute_name_skel},
+ {"_non_existent", &POA_CORBA_Contained::_non_existent_skel},
+ {"_get_containing_repository", &POA_CORBA_Contained::_get_containing_repository_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -9, -2, -12, -2, 4, 5, -1, 48, 8, -45, 11, -1, -46, 14,
+ -1, 15, -1, 16, 17, -6, -2, -1, -1, 18, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 19,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < WORDLIST_SIZE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 22:18:36 */
+static TAO_CORBA_Contained_Perfect_Hash_OpTable tao_CORBA_Contained_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+class TAO_ServerRequestInfo_CORBA_Contained_id_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Contained_id_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Contained *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (char * result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_Contained_id_get (const TAO_ServerRequestInfo_CORBA_Contained_id_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Contained_id_get &);
+
+private:
+ POA_CORBA_Contained *_tao_impl;
+ char * _result;
+};
+
+TAO_ServerRequestInfo_CORBA_Contained_id_get::TAO_ServerRequestInfo_CORBA_Contained_id_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Contained *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Contained_id_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Contained_id_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Contained_id_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Contained_id_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Contained_id_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_Contained_id_get::result (char * result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_Contained_id_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Contained_id_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Contained *tao_impl
+ ,
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_Contained_id_set (const TAO_ServerRequestInfo_CORBA_Contained_id_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Contained_id_set &);
+
+private:
+ POA_CORBA_Contained *_tao_impl;
+ const char * id_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_Contained_id_set::TAO_ServerRequestInfo_CORBA_Contained_id_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Contained *tao_impl,
+ const char * id
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ id_ (id)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Contained_id_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Contained_id_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Contained_id_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Contained_id_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Contained_id_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+class TAO_ServerRequestInfo_CORBA_Contained_name_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Contained_name_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Contained *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (char * result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_Contained_name_get (const TAO_ServerRequestInfo_CORBA_Contained_name_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Contained_name_get &);
+
+private:
+ POA_CORBA_Contained *_tao_impl;
+ char * _result;
+};
+
+TAO_ServerRequestInfo_CORBA_Contained_name_get::TAO_ServerRequestInfo_CORBA_Contained_name_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Contained *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Contained_name_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Contained_name_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Contained_name_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Contained_name_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Contained_name_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_Contained_name_get::result (char * result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_Contained_name_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Contained_name_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Contained *tao_impl
+ ,
+ const char * name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_Contained_name_set (const TAO_ServerRequestInfo_CORBA_Contained_name_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Contained_name_set &);
+
+private:
+ POA_CORBA_Contained *_tao_impl;
+ const char * name_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_Contained_name_set::TAO_ServerRequestInfo_CORBA_Contained_name_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Contained *tao_impl,
+ const char * name
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ name_ (name)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Contained_name_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= name_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Contained_name_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Contained_name_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Contained_name_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Contained_name_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+class TAO_ServerRequestInfo_CORBA_Contained_version_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Contained_version_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Contained *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (char * result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_Contained_version_get (const TAO_ServerRequestInfo_CORBA_Contained_version_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Contained_version_get &);
+
+private:
+ POA_CORBA_Contained *_tao_impl;
+ char * _result;
+};
+
+TAO_ServerRequestInfo_CORBA_Contained_version_get::TAO_ServerRequestInfo_CORBA_Contained_version_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Contained *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Contained_version_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Contained_version_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Contained_version_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Contained_version_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Contained_version_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_Contained_version_get::result (char * result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_Contained_version_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Contained_version_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Contained *tao_impl
+ ,
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_Contained_version_set (const TAO_ServerRequestInfo_CORBA_Contained_version_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Contained_version_set &);
+
+private:
+ POA_CORBA_Contained *_tao_impl;
+ const char * version_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_Contained_version_set::TAO_ServerRequestInfo_CORBA_Contained_version_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Contained *tao_impl,
+ const char * version
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ version_ (version)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Contained_version_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= version_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Contained_version_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Contained_version_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Contained_version_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Contained_version_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+class TAO_ServerRequestInfo_CORBA_Contained_defined_in_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Contained_defined_in_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Contained *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_Container_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_Contained_defined_in_get (const TAO_ServerRequestInfo_CORBA_Contained_defined_in_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Contained_defined_in_get &);
+
+private:
+ POA_CORBA_Contained *_tao_impl;
+ CORBA_Container_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_Contained_defined_in_get::TAO_ServerRequestInfo_CORBA_Contained_defined_in_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Contained *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Contained_defined_in_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Contained_defined_in_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Contained_defined_in_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Contained_defined_in_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Contained_defined_in_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_Contained_defined_in_get::result (CORBA_Container_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_Contained_absolute_name_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Contained_absolute_name_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Contained *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (char * result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_Contained_absolute_name_get (const TAO_ServerRequestInfo_CORBA_Contained_absolute_name_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Contained_absolute_name_get &);
+
+private:
+ POA_CORBA_Contained *_tao_impl;
+ char * _result;
+};
+
+TAO_ServerRequestInfo_CORBA_Contained_absolute_name_get::TAO_ServerRequestInfo_CORBA_Contained_absolute_name_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Contained *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Contained_absolute_name_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Contained_absolute_name_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Contained_absolute_name_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Contained_absolute_name_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Contained_absolute_name_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_Contained_absolute_name_get::result (char * result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_Contained_containing_repository_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Contained_containing_repository_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Contained *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_Repository_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_Contained_containing_repository_get (const TAO_ServerRequestInfo_CORBA_Contained_containing_repository_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Contained_containing_repository_get &);
+
+private:
+ POA_CORBA_Contained *_tao_impl;
+ CORBA_Repository_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_Contained_containing_repository_get::TAO_ServerRequestInfo_CORBA_Contained_containing_repository_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Contained *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Contained_containing_repository_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Contained_containing_repository_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Contained_containing_repository_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Contained_containing_repository_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Contained_containing_repository_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_Contained_containing_repository_get::result (CORBA_Repository_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_Contained_describe : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Contained_describe (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Contained *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_Contained::Description * result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_Contained_describe (const TAO_ServerRequestInfo_CORBA_Contained_describe &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Contained_describe &);
+
+private:
+ POA_CORBA_Contained *_tao_impl;
+ CORBA_Contained::Description * _result;
+};
+
+TAO_ServerRequestInfo_CORBA_Contained_describe::TAO_ServerRequestInfo_CORBA_Contained_describe (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Contained *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Contained_describe::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Contained_describe::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Contained_describe::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Contained_describe::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Contained_describe::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_Contained_describe::result (CORBA_Contained::Description * result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_Contained_move : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Contained_move (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Contained *tao_impl
+ ,
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_Contained_move (const TAO_ServerRequestInfo_CORBA_Contained_move &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Contained_move &);
+
+private:
+ POA_CORBA_Contained *_tao_impl;
+ CORBA_Container_ptr new_container_;
+ const char * new_name_;
+ const char * new_version_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_Contained_move::TAO_ServerRequestInfo_CORBA_Contained_move (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Contained *tao_impl,
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ new_container_ (new_container),
+ new_name_ (new_name),
+ new_version_ (new_version)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Contained_move::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (3);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= this->new_container_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= new_name_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= new_version_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Contained_move::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Contained_move::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Contained_move::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Contained_move::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+_TAO_CORBA_Contained_Strategized_Proxy_Broker *_TAO_CORBA_Contained_Strategized_Proxy_Broker::the_TAO_CORBA_Contained_Strategized_Proxy_Broker (void)
+{
+ static _TAO_CORBA_Contained_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+_TAO_CORBA_Contained_Strategized_Proxy_Broker::_TAO_CORBA_Contained_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+_TAO_CORBA_Contained_Strategized_Proxy_Broker::~_TAO_CORBA_Contained_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+_TAO_CORBA_Contained_Proxy_Impl&
+_TAO_CORBA_Contained_Strategized_Proxy_Broker::select_proxy (
+ ::CORBA_Contained *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+_TAO_CORBA_Contained_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ _TAO_CORBA_Contained_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::_TAO_CORBA_Contained_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+_TAO_CORBA_Contained_Proxy_Broker *
+_TAO_CORBA_Contained_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::_TAO_CORBA_Contained_Strategized_Proxy_Broker::the_TAO_CORBA_Contained_Strategized_Proxy_Broker();
+}
+
+int
+_TAO_CORBA_Contained_Proxy_Broker_Factory_Initializer (long)
+{
+ _TAO_CORBA_Contained_Proxy_Broker_Factory_function_pointer =
+ _TAO_CORBA_Contained_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int _TAO_CORBA_Contained_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ _TAO_CORBA_Contained_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, _TAO_CORBA_Contained_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+_TAO_CORBA_Contained_ThruPOA_Proxy_Impl::_TAO_CORBA_Contained_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+char * _TAO_CORBA_Contained_ThruPOA_Proxy_Impl::id (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::String_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "id",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_Contained_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Contained:1.0"
+ )
+ )->id (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_Contained_ThruPOA_Proxy_Impl::id (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "id",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_Contained_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Contained:1.0"
+ )
+ )->id (
+ id
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+char * _TAO_CORBA_Contained_ThruPOA_Proxy_Impl::name (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::String_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "name",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_Contained_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Contained:1.0"
+ )
+ )->name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_Contained_ThruPOA_Proxy_Impl::name (
+ CORBA_Object *_collocated_tao_target_,
+ const char * name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "name",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_Contained_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Contained:1.0"
+ )
+ )->name (
+ name
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+char * _TAO_CORBA_Contained_ThruPOA_Proxy_Impl::version (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::String_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "version",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_Contained_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Contained:1.0"
+ )
+ )->version (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_Contained_ThruPOA_Proxy_Impl::version (
+ CORBA_Object *_collocated_tao_target_,
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "version",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_Contained_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Contained:1.0"
+ )
+ )->version (
+ version
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+CORBA_Container_ptr _TAO_CORBA_Contained_ThruPOA_Proxy_Impl::defined_in (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_Container_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "defined_in",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_Contained_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Contained:1.0"
+ )
+ )->defined_in (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+char * _TAO_CORBA_Contained_ThruPOA_Proxy_Impl::absolute_name (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::String_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "absolute_name",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_Contained_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Contained:1.0"
+ )
+ )->absolute_name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+CORBA_Repository_ptr _TAO_CORBA_Contained_ThruPOA_Proxy_Impl::containing_repository (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_Repository_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "containing_repository",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_Contained_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Contained:1.0"
+ )
+ )->containing_repository (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+CORBA_Contained::Description * _TAO_CORBA_Contained_ThruPOA_Proxy_Impl::describe (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_Contained::Description_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "describe",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_Contained_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Contained:1.0"
+ )
+ )->describe (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_Contained_ThruPOA_Proxy_Impl::move (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "move",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_Contained_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Contained:1.0"
+ )
+ )->move (
+ new_container,
+ new_name,
+ new_version
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_CORBA_Contained::POA_CORBA_Contained (void)
+{
+ this->optable_ = &tao_CORBA_Contained_optable;
+}
+
+// copy ctor
+POA_CORBA_Contained::POA_CORBA_Contained (const POA_CORBA_Contained& rhs)
+ : POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_CORBA_Contained::~POA_CORBA_Contained (void)
+{
+}
+
+void POA_CORBA_Contained::_get_id_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained *_tao_impl =
+ ACE_static_cast (POA_CORBA_Contained *, _tao_object_reference);
+
+ CORBA::String_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Contained_id_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->id (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ char * _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Contained::_set_id_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_Contained *_tao_impl =
+ ACE_static_cast (POA_CORBA_Contained *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA::String_var id;
+ if (!(
+ (_tao_in >> id.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Contained_id_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ id.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->id (
+ id.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Contained::_get_name_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained *_tao_impl =
+ ACE_static_cast (POA_CORBA_Contained *, _tao_object_reference);
+
+ CORBA::String_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Contained_name_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ char * _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Contained::_set_name_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_Contained *_tao_impl =
+ ACE_static_cast (POA_CORBA_Contained *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA::String_var name;
+ if (!(
+ (_tao_in >> name.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Contained_name_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ name.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->name (
+ name.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Contained::_get_version_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained *_tao_impl =
+ ACE_static_cast (POA_CORBA_Contained *, _tao_object_reference);
+
+ CORBA::String_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Contained_version_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->version (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ char * _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Contained::_set_version_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_Contained *_tao_impl =
+ ACE_static_cast (POA_CORBA_Contained *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA::String_var version;
+ if (!(
+ (_tao_in >> version.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Contained_version_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ version.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->version (
+ version.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Contained::_get_defined_in_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained *_tao_impl =
+ ACE_static_cast (POA_CORBA_Contained *, _tao_object_reference);
+
+ CORBA_Container_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Contained_defined_in_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->defined_in (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_Container_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Contained::_get_absolute_name_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained *_tao_impl =
+ ACE_static_cast (POA_CORBA_Contained *, _tao_object_reference);
+
+ CORBA::String_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Contained_absolute_name_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->absolute_name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ char * _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Contained::_get_containing_repository_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained *_tao_impl =
+ ACE_static_cast (POA_CORBA_Contained *, _tao_object_reference);
+
+ CORBA_Repository_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Contained_containing_repository_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->containing_repository (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_Repository_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Contained::describe_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained *_tao_impl =
+ ACE_static_cast (POA_CORBA_Contained *, _tao_object_reference);
+
+ CORBA_Contained::Description_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Contained_describe ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->describe (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_Contained::Description * _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Contained::move_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_Contained *_tao_impl =
+ ACE_static_cast (POA_CORBA_Contained *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA_Container_var new_container;
+ CORBA::String_var new_name;
+ CORBA::String_var new_version;
+ if (!(
+ (_tao_in >> new_container.out ()) &&
+ (_tao_in >> new_name.out ()) &&
+ (_tao_in >> new_version.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Contained_move ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ new_container.in (),
+ new_name.in (),
+ new_version.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->move (
+ new_container.in (),
+ new_name.in (),
+ new_version.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Contained::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_Contained *_tao_impl = (POA_CORBA_Contained *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_Contained::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained *_tao_impl = (POA_CORBA_Contained *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_Contained::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained *_tao_impl = (POA_CORBA_Contained *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_CORBA_Contained::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Contained:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_CORBA_Contained::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Contained:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Contained_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Object:1.0") == 0)
+ return ACE_static_cast(PortableServer::Servant, this);
+ return 0;
+}
+
+void POA_CORBA_Contained::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_CORBA_Contained::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/CORBA/Contained:1.0";
+}
+
+CORBA_Contained*
+POA_CORBA_Contained::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::CORBA_Contained::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_CORBA_Container_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 22:18:38 */
+/* C++ code produced by gperf version 2.8 (ACE version) */
+/* Command-line: gperf -m -M -J -c -C -D -E -T -f 0 -F 0 -a -o -t -p -K opname_ -L C++ -Z TAO_CORBA_Container_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_CORBA_Container_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
+ 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
+ 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
+ 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
+ 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
+ 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
+ 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
+ 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
+ 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
+ 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
+ 39, 39, 39, 39, 39, 39, 39, 39, 39, 20,
+ 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
+ 39, 39, 39, 39, 39, 39, 39, 39, 39, 10,
+ 39, 0, 0, 0, 39, 39, 39, 39, 39, 39,
+ 39, 39, 39, 39, 39, 39, 39, 0, 20, 5,
+ 39, 0, 39, 39, 39, 39, 39, 39, 39, 39,
+ 39, 39, 15, 5, 39, 39, 39, 10, 0, 39,
+ 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
+ 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
+ 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
+ 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
+ 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
+ 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
+ 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
+ 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
+ 39, 39, 39, 39, 39, 39,
+#else
+ 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
+ 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
+ 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
+ 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
+ 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
+ 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
+ 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
+ 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
+ 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
+ 39, 39, 39, 39, 39, 20, 39, 10, 39, 0,
+ 0, 0, 39, 39, 39, 39, 39, 39, 0, 20,
+ 5, 39, 0, 39, 39, 15, 5, 39, 39, 39,
+ 10, 0, 39, 39, 39, 39, 39, 39,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_CORBA_Container_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 22,
+ MIN_WORD_LENGTH = 5,
+ MAX_WORD_LENGTH = 25,
+ MIN_HASH_VALUE = 6,
+ MAX_HASH_VALUE = 38,
+ HASH_VALUE_RANGE = 33,
+ DUPLICATES = 2,
+ WORDLIST_SIZE = 28
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},{"",0},{"",0},
+ {"lookup", &POA_CORBA_Container::lookup_skel},
+ {"destroy", &POA_CORBA_Container::destroy_skel},
+ {"lookup_name", &POA_CORBA_Container::lookup_name_skel},
+ {"create_value", &POA_CORBA_Container::create_value_skel},
+ {"create_module", &POA_CORBA_Container::create_module_skel},
+ {"create_native", &POA_CORBA_Container::create_native_skel},
+ {"create_interface", &POA_CORBA_Container::create_interface_skel},
+ {"create_union", &POA_CORBA_Container::create_union_skel},
+ {"create_struct", &POA_CORBA_Container::create_struct_skel},
+ {"create_constant", &POA_CORBA_Container::create_constant_skel},
+ {"create_exception", &POA_CORBA_Container::create_exception_skel},
+ {"create_local_interface", &POA_CORBA_Container::create_local_interface_skel},
+ {"contents", &POA_CORBA_Container::contents_skel},
+ {"create_abstract_interface", &POA_CORBA_Container::create_abstract_interface_skel},
+ {"create_value_box", &POA_CORBA_Container::create_value_box_skel},
+ {"create_alias", &POA_CORBA_Container::create_alias_skel},
+ {"_interface", &POA_CORBA_Container::_interface_skel},
+ {"create_enum", &POA_CORBA_Container::create_enum_skel},
+ {"describe_contents", &POA_CORBA_Container::describe_contents_skel},
+ {"_get_def_kind", &POA_CORBA_Container::_get_def_kind_skel},
+ {"_is_a", &POA_CORBA_Container::_is_a_skel},
+ {"_non_existent", &POA_CORBA_Container::_non_existent_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -1, -1, -1, -1, -1, -1, 6, 7, -1, -10, -2, 8, 9, -42,
+ -1, -1, 12, 13, 14, -1, 15, 16, 17, 18, -1, 19, 20, 21,
+ -1, -1, 22, 23, 24, 25, -1, 26, -1, -1, 27,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < WORDLIST_SIZE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 22:18:38 */
+static TAO_CORBA_Container_Perfect_Hash_OpTable tao_CORBA_Container_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+class TAO_ServerRequestInfo_CORBA_Container_lookup : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Container_lookup (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Container *tao_impl
+ ,
+ const char * search_name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_Contained_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_Container_lookup (const TAO_ServerRequestInfo_CORBA_Container_lookup &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Container_lookup &);
+
+private:
+ POA_CORBA_Container *_tao_impl;
+ const char * search_name_;
+ CORBA_Contained_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_Container_lookup::TAO_ServerRequestInfo_CORBA_Container_lookup (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Container *tao_impl,
+ const char * search_name
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ search_name_ (search_name)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Container_lookup::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= search_name_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Container_lookup::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Container_lookup::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Container_lookup::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Container_lookup::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_Container_lookup::result (CORBA_Contained_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_Container_contents : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Container_contents (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Container *tao_impl
+ ,
+ CORBA::DefinitionKind & limit_type,
+ const CORBA::Boolean & exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_ContainedSeq * result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_Container_contents (const TAO_ServerRequestInfo_CORBA_Container_contents &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Container_contents &);
+
+private:
+ POA_CORBA_Container *_tao_impl;
+ const CORBA::DefinitionKind & limit_type_;
+ const CORBA::Boolean & exclude_inherited_;
+ CORBA_ContainedSeq * _result;
+};
+
+TAO_ServerRequestInfo_CORBA_Container_contents::TAO_ServerRequestInfo_CORBA_Container_contents (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Container *tao_impl,
+ CORBA::DefinitionKind & limit_type,
+ const CORBA::Boolean & exclude_inherited
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ limit_type_ (limit_type),
+ exclude_inherited_ (exclude_inherited)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Container_contents::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (2);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= this->limit_type_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= CORBA::Any::from_boolean (this->exclude_inherited_);
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Container_contents::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Container_contents::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Container_contents::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Container_contents::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_Container_contents::result (CORBA_ContainedSeq * result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_Container_lookup_name : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Container_lookup_name (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Container *tao_impl
+ ,
+ const char * search_name,
+ const CORBA::Long & levels_to_search,
+ CORBA::DefinitionKind & limit_type,
+ const CORBA::Boolean & exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_ContainedSeq * result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_Container_lookup_name (const TAO_ServerRequestInfo_CORBA_Container_lookup_name &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Container_lookup_name &);
+
+private:
+ POA_CORBA_Container *_tao_impl;
+ const char * search_name_;
+ const CORBA::Long & levels_to_search_;
+ const CORBA::DefinitionKind & limit_type_;
+ const CORBA::Boolean & exclude_inherited_;
+ CORBA_ContainedSeq * _result;
+};
+
+TAO_ServerRequestInfo_CORBA_Container_lookup_name::TAO_ServerRequestInfo_CORBA_Container_lookup_name (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Container *tao_impl,
+ const char * search_name,
+ const CORBA::Long & levels_to_search,
+ CORBA::DefinitionKind & limit_type,
+ const CORBA::Boolean & exclude_inherited
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ search_name_ (search_name),
+ levels_to_search_ (levels_to_search),
+ limit_type_ (limit_type),
+ exclude_inherited_ (exclude_inherited)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Container_lookup_name::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (4);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= search_name_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= levels_to_search_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->limit_type_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= CORBA::Any::from_boolean (this->exclude_inherited_);
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Container_lookup_name::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Container_lookup_name::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Container_lookup_name::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Container_lookup_name::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_Container_lookup_name::result (CORBA_ContainedSeq * result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_Container_describe_contents : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Container_describe_contents (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Container *tao_impl
+ ,
+ CORBA::DefinitionKind & limit_type,
+ const CORBA::Boolean & exclude_inherited,
+ const CORBA::Long & max_returned_objs
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_Container::DescriptionSeq * result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_Container_describe_contents (const TAO_ServerRequestInfo_CORBA_Container_describe_contents &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Container_describe_contents &);
+
+private:
+ POA_CORBA_Container *_tao_impl;
+ const CORBA::DefinitionKind & limit_type_;
+ const CORBA::Boolean & exclude_inherited_;
+ const CORBA::Long & max_returned_objs_;
+ CORBA_Container::DescriptionSeq * _result;
+};
+
+TAO_ServerRequestInfo_CORBA_Container_describe_contents::TAO_ServerRequestInfo_CORBA_Container_describe_contents (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Container *tao_impl,
+ CORBA::DefinitionKind & limit_type,
+ const CORBA::Boolean & exclude_inherited,
+ const CORBA::Long & max_returned_objs
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ limit_type_ (limit_type),
+ exclude_inherited_ (exclude_inherited),
+ max_returned_objs_ (max_returned_objs)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Container_describe_contents::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (3);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= this->limit_type_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= CORBA::Any::from_boolean (this->exclude_inherited_);
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= max_returned_objs_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Container_describe_contents::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Container_describe_contents::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Container_describe_contents::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Container_describe_contents::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_Container_describe_contents::result (CORBA_Container::DescriptionSeq * result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_Container_create_module : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Container_create_module (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Container *tao_impl
+ ,
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_ModuleDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_Container_create_module (const TAO_ServerRequestInfo_CORBA_Container_create_module &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Container_create_module &);
+
+private:
+ POA_CORBA_Container *_tao_impl;
+ const char * id_;
+ const char * name_;
+ const char * version_;
+ CORBA_ModuleDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_Container_create_module::TAO_ServerRequestInfo_CORBA_Container_create_module (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Container *tao_impl,
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ id_ (id),
+ name_ (name),
+ version_ (version)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Container_create_module::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (3);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= name_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= version_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Container_create_module::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Container_create_module::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Container_create_module::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Container_create_module::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_Container_create_module::result (CORBA_ModuleDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_Container_create_constant : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Container_create_constant (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Container *tao_impl
+ ,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_ConstantDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_Container_create_constant (const TAO_ServerRequestInfo_CORBA_Container_create_constant &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Container_create_constant &);
+
+private:
+ POA_CORBA_Container *_tao_impl;
+ const char * id_;
+ const char * name_;
+ const char * version_;
+ CORBA_IDLType_ptr type_;
+ const CORBA::Any & value_;
+ CORBA_ConstantDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_Container_create_constant::TAO_ServerRequestInfo_CORBA_Container_create_constant (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Container *tao_impl,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ id_ (id),
+ name_ (name),
+ version_ (version),
+ type_ (type),
+ value_ (value)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Container_create_constant::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (5);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= name_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= version_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->type_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= value_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Container_create_constant::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Container_create_constant::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Container_create_constant::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Container_create_constant::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_Container_create_constant::result (CORBA_ConstantDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_Container_create_struct : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Container_create_struct (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Container *tao_impl
+ ,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_StructDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_Container_create_struct (const TAO_ServerRequestInfo_CORBA_Container_create_struct &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Container_create_struct &);
+
+private:
+ POA_CORBA_Container *_tao_impl;
+ const char * id_;
+ const char * name_;
+ const char * version_;
+ const CORBA_StructMemberSeq & members_;
+ CORBA_StructDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_Container_create_struct::TAO_ServerRequestInfo_CORBA_Container_create_struct (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Container *tao_impl,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ id_ (id),
+ name_ (name),
+ version_ (version),
+ members_ (members)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Container_create_struct::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (4);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= name_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= version_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->members_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Container_create_struct::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Container_create_struct::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Container_create_struct::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Container_create_struct::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_Container_create_struct::result (CORBA_StructDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_Container_create_union : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Container_create_union (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Container *tao_impl
+ ,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_UnionDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_Container_create_union (const TAO_ServerRequestInfo_CORBA_Container_create_union &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Container_create_union &);
+
+private:
+ POA_CORBA_Container *_tao_impl;
+ const char * id_;
+ const char * name_;
+ const char * version_;
+ CORBA_IDLType_ptr discriminator_type_;
+ const CORBA_UnionMemberSeq & members_;
+ CORBA_UnionDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_Container_create_union::TAO_ServerRequestInfo_CORBA_Container_create_union (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Container *tao_impl,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ id_ (id),
+ name_ (name),
+ version_ (version),
+ discriminator_type_ (discriminator_type),
+ members_ (members)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Container_create_union::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (5);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= name_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= version_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->discriminator_type_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->members_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Container_create_union::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Container_create_union::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Container_create_union::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Container_create_union::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_Container_create_union::result (CORBA_UnionDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_Container_create_enum : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Container_create_enum (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Container *tao_impl
+ ,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_EnumDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_Container_create_enum (const TAO_ServerRequestInfo_CORBA_Container_create_enum &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Container_create_enum &);
+
+private:
+ POA_CORBA_Container *_tao_impl;
+ const char * id_;
+ const char * name_;
+ const char * version_;
+ const CORBA_EnumMemberSeq & members_;
+ CORBA_EnumDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_Container_create_enum::TAO_ServerRequestInfo_CORBA_Container_create_enum (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Container *tao_impl,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ id_ (id),
+ name_ (name),
+ version_ (version),
+ members_ (members)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Container_create_enum::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (4);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= name_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= version_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->members_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Container_create_enum::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Container_create_enum::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Container_create_enum::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Container_create_enum::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_Container_create_enum::result (CORBA_EnumDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_Container_create_alias : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Container_create_alias (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Container *tao_impl
+ ,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_AliasDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_Container_create_alias (const TAO_ServerRequestInfo_CORBA_Container_create_alias &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Container_create_alias &);
+
+private:
+ POA_CORBA_Container *_tao_impl;
+ const char * id_;
+ const char * name_;
+ const char * version_;
+ CORBA_IDLType_ptr original_type_;
+ CORBA_AliasDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_Container_create_alias::TAO_ServerRequestInfo_CORBA_Container_create_alias (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Container *tao_impl,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ id_ (id),
+ name_ (name),
+ version_ (version),
+ original_type_ (original_type)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Container_create_alias::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (4);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= name_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= version_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->original_type_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Container_create_alias::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Container_create_alias::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Container_create_alias::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Container_create_alias::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_Container_create_alias::result (CORBA_AliasDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_Container_create_interface : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Container_create_interface (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Container *tao_impl
+ ,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_InterfaceDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_Container_create_interface (const TAO_ServerRequestInfo_CORBA_Container_create_interface &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Container_create_interface &);
+
+private:
+ POA_CORBA_Container *_tao_impl;
+ const char * id_;
+ const char * name_;
+ const char * version_;
+ const CORBA_InterfaceDefSeq & base_interfaces_;
+ CORBA_InterfaceDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_Container_create_interface::TAO_ServerRequestInfo_CORBA_Container_create_interface (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Container *tao_impl,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ id_ (id),
+ name_ (name),
+ version_ (version),
+ base_interfaces_ (base_interfaces)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Container_create_interface::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (4);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= name_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= version_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->base_interfaces_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Container_create_interface::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Container_create_interface::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Container_create_interface::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Container_create_interface::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_Container_create_interface::result (CORBA_InterfaceDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_Container_create_value : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Container_create_value (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Container *tao_impl
+ ,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA::Boolean & is_custom,
+ const CORBA::Boolean & is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ const CORBA::Boolean & is_truncatable,
+ const CORBA_ValueDefSeq & abstract_base_values,
+ const CORBA_InterfaceDefSeq & supported_interfaces,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_ValueDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_Container_create_value (const TAO_ServerRequestInfo_CORBA_Container_create_value &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Container_create_value &);
+
+private:
+ POA_CORBA_Container *_tao_impl;
+ const char * id_;
+ const char * name_;
+ const char * version_;
+ const CORBA::Boolean & is_custom_;
+ const CORBA::Boolean & is_abstract_;
+ CORBA_ValueDef_ptr base_value_;
+ const CORBA::Boolean & is_truncatable_;
+ const CORBA_ValueDefSeq & abstract_base_values_;
+ const CORBA_InterfaceDefSeq & supported_interfaces_;
+ const CORBA_InitializerSeq & initializers_;
+ CORBA_ValueDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_Container_create_value::TAO_ServerRequestInfo_CORBA_Container_create_value (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Container *tao_impl,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA::Boolean & is_custom,
+ const CORBA::Boolean & is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ const CORBA::Boolean & is_truncatable,
+ const CORBA_ValueDefSeq & abstract_base_values,
+ const CORBA_InterfaceDefSeq & supported_interfaces,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ id_ (id),
+ name_ (name),
+ version_ (version),
+ is_custom_ (is_custom),
+ is_abstract_ (is_abstract),
+ base_value_ (base_value),
+ is_truncatable_ (is_truncatable),
+ abstract_base_values_ (abstract_base_values),
+ supported_interfaces_ (supported_interfaces),
+ initializers_ (initializers)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Container_create_value::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (10);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= name_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= version_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= CORBA::Any::from_boolean (this->is_custom_);
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= CORBA::Any::from_boolean (this->is_abstract_);
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->base_value_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= CORBA::Any::from_boolean (this->is_truncatable_);
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->abstract_base_values_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->supported_interfaces_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->initializers_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Container_create_value::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Container_create_value::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Container_create_value::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Container_create_value::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_Container_create_value::result (CORBA_ValueDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_Container_create_value_box : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Container_create_value_box (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Container *tao_impl
+ ,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_ValueBoxDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_Container_create_value_box (const TAO_ServerRequestInfo_CORBA_Container_create_value_box &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Container_create_value_box &);
+
+private:
+ POA_CORBA_Container *_tao_impl;
+ const char * id_;
+ const char * name_;
+ const char * version_;
+ CORBA_IDLType_ptr original_type_def_;
+ CORBA_ValueBoxDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_Container_create_value_box::TAO_ServerRequestInfo_CORBA_Container_create_value_box (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Container *tao_impl,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ id_ (id),
+ name_ (name),
+ version_ (version),
+ original_type_def_ (original_type_def)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Container_create_value_box::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (4);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= name_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= version_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->original_type_def_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Container_create_value_box::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Container_create_value_box::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Container_create_value_box::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Container_create_value_box::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_Container_create_value_box::result (CORBA_ValueBoxDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_Container_create_exception : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Container_create_exception (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Container *tao_impl
+ ,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_ExceptionDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_Container_create_exception (const TAO_ServerRequestInfo_CORBA_Container_create_exception &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Container_create_exception &);
+
+private:
+ POA_CORBA_Container *_tao_impl;
+ const char * id_;
+ const char * name_;
+ const char * version_;
+ const CORBA_StructMemberSeq & members_;
+ CORBA_ExceptionDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_Container_create_exception::TAO_ServerRequestInfo_CORBA_Container_create_exception (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Container *tao_impl,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ id_ (id),
+ name_ (name),
+ version_ (version),
+ members_ (members)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Container_create_exception::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (4);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= name_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= version_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->members_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Container_create_exception::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Container_create_exception::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Container_create_exception::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Container_create_exception::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_Container_create_exception::result (CORBA_ExceptionDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_Container_create_native : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Container_create_native (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Container *tao_impl
+ ,
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_NativeDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_Container_create_native (const TAO_ServerRequestInfo_CORBA_Container_create_native &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Container_create_native &);
+
+private:
+ POA_CORBA_Container *_tao_impl;
+ const char * id_;
+ const char * name_;
+ const char * version_;
+ CORBA_NativeDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_Container_create_native::TAO_ServerRequestInfo_CORBA_Container_create_native (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Container *tao_impl,
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ id_ (id),
+ name_ (name),
+ version_ (version)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Container_create_native::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (3);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= name_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= version_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Container_create_native::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Container_create_native::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Container_create_native::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Container_create_native::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_Container_create_native::result (CORBA_NativeDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_Container_create_abstract_interface : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Container_create_abstract_interface (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Container *tao_impl
+ ,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_AbstractInterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_AbstractInterfaceDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_Container_create_abstract_interface (const TAO_ServerRequestInfo_CORBA_Container_create_abstract_interface &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Container_create_abstract_interface &);
+
+private:
+ POA_CORBA_Container *_tao_impl;
+ const char * id_;
+ const char * name_;
+ const char * version_;
+ const CORBA_AbstractInterfaceDefSeq & base_interfaces_;
+ CORBA_AbstractInterfaceDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_Container_create_abstract_interface::TAO_ServerRequestInfo_CORBA_Container_create_abstract_interface (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Container *tao_impl,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_AbstractInterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ id_ (id),
+ name_ (name),
+ version_ (version),
+ base_interfaces_ (base_interfaces)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Container_create_abstract_interface::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (4);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= name_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= version_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->base_interfaces_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Container_create_abstract_interface::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Container_create_abstract_interface::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Container_create_abstract_interface::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Container_create_abstract_interface::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_Container_create_abstract_interface::result (CORBA_AbstractInterfaceDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_Container_create_local_interface : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Container_create_local_interface (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Container *tao_impl
+ ,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_LocalInterfaceDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_Container_create_local_interface (const TAO_ServerRequestInfo_CORBA_Container_create_local_interface &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Container_create_local_interface &);
+
+private:
+ POA_CORBA_Container *_tao_impl;
+ const char * id_;
+ const char * name_;
+ const char * version_;
+ const CORBA_InterfaceDefSeq & base_interfaces_;
+ CORBA_LocalInterfaceDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_Container_create_local_interface::TAO_ServerRequestInfo_CORBA_Container_create_local_interface (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Container *tao_impl,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ id_ (id),
+ name_ (name),
+ version_ (version),
+ base_interfaces_ (base_interfaces)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Container_create_local_interface::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (4);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= name_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= version_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->base_interfaces_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Container_create_local_interface::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Container_create_local_interface::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Container_create_local_interface::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Container_create_local_interface::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_Container_create_local_interface::result (CORBA_LocalInterfaceDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+_TAO_CORBA_Container_Strategized_Proxy_Broker *_TAO_CORBA_Container_Strategized_Proxy_Broker::the_TAO_CORBA_Container_Strategized_Proxy_Broker (void)
+{
+ static _TAO_CORBA_Container_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+_TAO_CORBA_Container_Strategized_Proxy_Broker::_TAO_CORBA_Container_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+_TAO_CORBA_Container_Strategized_Proxy_Broker::~_TAO_CORBA_Container_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+_TAO_CORBA_Container_Proxy_Impl&
+_TAO_CORBA_Container_Strategized_Proxy_Broker::select_proxy (
+ ::CORBA_Container *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+_TAO_CORBA_Container_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ _TAO_CORBA_Container_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::_TAO_CORBA_Container_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+_TAO_CORBA_Container_Proxy_Broker *
+_TAO_CORBA_Container_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::_TAO_CORBA_Container_Strategized_Proxy_Broker::the_TAO_CORBA_Container_Strategized_Proxy_Broker();
+}
+
+int
+_TAO_CORBA_Container_Proxy_Broker_Factory_Initializer (long)
+{
+ _TAO_CORBA_Container_Proxy_Broker_Factory_function_pointer =
+ _TAO_CORBA_Container_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int _TAO_CORBA_Container_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ _TAO_CORBA_Container_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, _TAO_CORBA_Container_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+_TAO_CORBA_Container_ThruPOA_Proxy_Impl::_TAO_CORBA_Container_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+CORBA_Contained_ptr _TAO_CORBA_Container_ThruPOA_Proxy_Impl::lookup (
+ CORBA_Object *_collocated_tao_target_,
+ const char * search_name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_Contained_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "lookup",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_Container_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Container:1.0"
+ )
+ )->lookup (
+ search_name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+CORBA_ContainedSeq * _TAO_CORBA_Container_ThruPOA_Proxy_Impl::contents (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_ContainedSeq_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "contents",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_Container_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Container:1.0"
+ )
+ )->contents (
+ limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+CORBA_ContainedSeq * _TAO_CORBA_Container_ThruPOA_Proxy_Impl::lookup_name (
+ CORBA_Object *_collocated_tao_target_,
+ const char * search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_ContainedSeq_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "lookup_name",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_Container_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Container:1.0"
+ )
+ )->lookup_name (
+ search_name,
+ levels_to_search,
+ limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+CORBA_Container::DescriptionSeq * _TAO_CORBA_Container_ThruPOA_Proxy_Impl::describe_contents (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited,
+ CORBA::Long max_returned_objs
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_Container::DescriptionSeq_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "describe_contents",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_Container_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Container:1.0"
+ )
+ )->describe_contents (
+ limit_type,
+ exclude_inherited,
+ max_returned_objs
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+CORBA_ModuleDef_ptr _TAO_CORBA_Container_ThruPOA_Proxy_Impl::create_module (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_ModuleDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "create_module",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_Container_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Container:1.0"
+ )
+ )->create_module (
+ id,
+ name,
+ version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+CORBA_ConstantDef_ptr _TAO_CORBA_Container_ThruPOA_Proxy_Impl::create_constant (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_ConstantDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "create_constant",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_Container_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Container:1.0"
+ )
+ )->create_constant (
+ id,
+ name,
+ version,
+ type,
+ value
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+CORBA_StructDef_ptr _TAO_CORBA_Container_ThruPOA_Proxy_Impl::create_struct (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_StructDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "create_struct",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_Container_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Container:1.0"
+ )
+ )->create_struct (
+ id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+CORBA_UnionDef_ptr _TAO_CORBA_Container_ThruPOA_Proxy_Impl::create_union (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_UnionDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "create_union",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_Container_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Container:1.0"
+ )
+ )->create_union (
+ id,
+ name,
+ version,
+ discriminator_type,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+CORBA_EnumDef_ptr _TAO_CORBA_Container_ThruPOA_Proxy_Impl::create_enum (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_EnumDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "create_enum",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_Container_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Container:1.0"
+ )
+ )->create_enum (
+ id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+CORBA_AliasDef_ptr _TAO_CORBA_Container_ThruPOA_Proxy_Impl::create_alias (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_AliasDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "create_alias",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_Container_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Container:1.0"
+ )
+ )->create_alias (
+ id,
+ name,
+ version,
+ original_type
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+CORBA_InterfaceDef_ptr _TAO_CORBA_Container_ThruPOA_Proxy_Impl::create_interface (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_InterfaceDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "create_interface",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_Container_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Container:1.0"
+ )
+ )->create_interface (
+ id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+CORBA_ValueDef_ptr _TAO_CORBA_Container_ThruPOA_Proxy_Impl::create_value (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA::Boolean is_custom,
+ CORBA::Boolean is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ CORBA::Boolean is_truncatable,
+ const CORBA_ValueDefSeq & abstract_base_values,
+ const CORBA_InterfaceDefSeq & supported_interfaces,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_ValueDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "create_value",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_Container_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Container:1.0"
+ )
+ )->create_value (
+ id,
+ name,
+ version,
+ is_custom,
+ is_abstract,
+ base_value,
+ is_truncatable,
+ abstract_base_values,
+ supported_interfaces,
+ initializers
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+CORBA_ValueBoxDef_ptr _TAO_CORBA_Container_ThruPOA_Proxy_Impl::create_value_box (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_ValueBoxDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "create_value_box",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_Container_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Container:1.0"
+ )
+ )->create_value_box (
+ id,
+ name,
+ version,
+ original_type_def
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+CORBA_ExceptionDef_ptr _TAO_CORBA_Container_ThruPOA_Proxy_Impl::create_exception (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_ExceptionDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "create_exception",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_Container_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Container:1.0"
+ )
+ )->create_exception (
+ id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+CORBA_NativeDef_ptr _TAO_CORBA_Container_ThruPOA_Proxy_Impl::create_native (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_NativeDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "create_native",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_Container_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Container:1.0"
+ )
+ )->create_native (
+ id,
+ name,
+ version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+CORBA_AbstractInterfaceDef_ptr _TAO_CORBA_Container_ThruPOA_Proxy_Impl::create_abstract_interface (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_AbstractInterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_AbstractInterfaceDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "create_abstract_interface",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_Container_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Container:1.0"
+ )
+ )->create_abstract_interface (
+ id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+CORBA_LocalInterfaceDef_ptr _TAO_CORBA_Container_ThruPOA_Proxy_Impl::create_local_interface (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_LocalInterfaceDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "create_local_interface",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_Container_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Container:1.0"
+ )
+ )->create_local_interface (
+ id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_CORBA_Container::POA_CORBA_Container (void)
+{
+ this->optable_ = &tao_CORBA_Container_optable;
+}
+
+// copy ctor
+POA_CORBA_Container::POA_CORBA_Container (const POA_CORBA_Container& rhs)
+ : POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_CORBA_Container::~POA_CORBA_Container (void)
+{
+}
+
+void POA_CORBA_Container::lookup_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_Container *_tao_impl =
+ ACE_static_cast (POA_CORBA_Container *, _tao_object_reference);
+
+ CORBA_Contained_var _tao_retval;
+ CORBA::String_var search_name;
+ if (!(
+ (_tao_in >> search_name.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Container_lookup ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ search_name.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->lookup (
+ search_name.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_Contained_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Container::contents_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_Container *_tao_impl =
+ ACE_static_cast (POA_CORBA_Container *, _tao_object_reference);
+
+ CORBA_ContainedSeq_var _tao_retval;
+ CORBA::DefinitionKind limit_type;
+ CORBA::Boolean exclude_inherited;
+ if (!(
+ (_tao_in >> limit_type) &&
+ (_tao_in >> CORBA::Any::to_boolean (exclude_inherited))
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Container_contents ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->contents (
+ limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_ContainedSeq * _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Container::lookup_name_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_Container *_tao_impl =
+ ACE_static_cast (POA_CORBA_Container *, _tao_object_reference);
+
+ CORBA_ContainedSeq_var _tao_retval;
+ CORBA::String_var search_name;
+ CORBA::Long levels_to_search;
+ CORBA::DefinitionKind limit_type;
+ CORBA::Boolean exclude_inherited;
+ if (!(
+ (_tao_in >> search_name.out ()) &&
+ (_tao_in >> levels_to_search) &&
+ (_tao_in >> limit_type) &&
+ (_tao_in >> CORBA::Any::to_boolean (exclude_inherited))
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Container_lookup_name ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ search_name.in (),
+ levels_to_search,
+ limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->lookup_name (
+ search_name.in (),
+ levels_to_search,
+ limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_ContainedSeq * _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Container::describe_contents_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_Container *_tao_impl =
+ ACE_static_cast (POA_CORBA_Container *, _tao_object_reference);
+
+ CORBA_Container::DescriptionSeq_var _tao_retval;
+ CORBA::DefinitionKind limit_type;
+ CORBA::Boolean exclude_inherited;
+ CORBA::Long max_returned_objs;
+ if (!(
+ (_tao_in >> limit_type) &&
+ (_tao_in >> CORBA::Any::to_boolean (exclude_inherited)) &&
+ (_tao_in >> max_returned_objs)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Container_describe_contents ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ limit_type,
+ exclude_inherited,
+ max_returned_objs
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->describe_contents (
+ limit_type,
+ exclude_inherited,
+ max_returned_objs
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_Container::DescriptionSeq * _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Container::create_module_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_Container *_tao_impl =
+ ACE_static_cast (POA_CORBA_Container *, _tao_object_reference);
+
+ CORBA_ModuleDef_var _tao_retval;
+ CORBA::String_var id;
+ CORBA::String_var name;
+ CORBA::String_var version;
+ if (!(
+ (_tao_in >> id.out ()) &&
+ (_tao_in >> name.out ()) &&
+ (_tao_in >> version.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Container_create_module ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ id.in (),
+ name.in (),
+ version.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->create_module (
+ id.in (),
+ name.in (),
+ version.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_ModuleDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Container::create_constant_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_Container *_tao_impl =
+ ACE_static_cast (POA_CORBA_Container *, _tao_object_reference);
+
+ CORBA_ConstantDef_var _tao_retval;
+ CORBA::String_var id;
+ CORBA::String_var name;
+ CORBA::String_var version;
+ CORBA_IDLType_var type;
+ CORBA::Any value;
+ if (!(
+ (_tao_in >> id.out ()) &&
+ (_tao_in >> name.out ()) &&
+ (_tao_in >> version.out ()) &&
+ (_tao_in >> type.out ()) &&
+ (_tao_in >> value)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Container_create_constant ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ id.in (),
+ name.in (),
+ version.in (),
+ type.in (),
+ value
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->create_constant (
+ id.in (),
+ name.in (),
+ version.in (),
+ type.in (),
+ value
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_ConstantDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Container::create_struct_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_Container *_tao_impl =
+ ACE_static_cast (POA_CORBA_Container *, _tao_object_reference);
+
+ CORBA_StructDef_var _tao_retval;
+ CORBA::String_var id;
+ CORBA::String_var name;
+ CORBA::String_var version;
+ CORBA_StructMemberSeq members;
+ if (!(
+ (_tao_in >> id.out ()) &&
+ (_tao_in >> name.out ()) &&
+ (_tao_in >> version.out ()) &&
+ (_tao_in >> members)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Container_create_struct ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ id.in (),
+ name.in (),
+ version.in (),
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->create_struct (
+ id.in (),
+ name.in (),
+ version.in (),
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_StructDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Container::create_union_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_Container *_tao_impl =
+ ACE_static_cast (POA_CORBA_Container *, _tao_object_reference);
+
+ CORBA_UnionDef_var _tao_retval;
+ CORBA::String_var id;
+ CORBA::String_var name;
+ CORBA::String_var version;
+ CORBA_IDLType_var discriminator_type;
+ CORBA_UnionMemberSeq members;
+ if (!(
+ (_tao_in >> id.out ()) &&
+ (_tao_in >> name.out ()) &&
+ (_tao_in >> version.out ()) &&
+ (_tao_in >> discriminator_type.out ()) &&
+ (_tao_in >> members)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Container_create_union ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ id.in (),
+ name.in (),
+ version.in (),
+ discriminator_type.in (),
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->create_union (
+ id.in (),
+ name.in (),
+ version.in (),
+ discriminator_type.in (),
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_UnionDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Container::create_enum_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_Container *_tao_impl =
+ ACE_static_cast (POA_CORBA_Container *, _tao_object_reference);
+
+ CORBA_EnumDef_var _tao_retval;
+ CORBA::String_var id;
+ CORBA::String_var name;
+ CORBA::String_var version;
+ CORBA_EnumMemberSeq members;
+ if (!(
+ (_tao_in >> id.out ()) &&
+ (_tao_in >> name.out ()) &&
+ (_tao_in >> version.out ()) &&
+ (_tao_in >> members)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Container_create_enum ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ id.in (),
+ name.in (),
+ version.in (),
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->create_enum (
+ id.in (),
+ name.in (),
+ version.in (),
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_EnumDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Container::create_alias_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_Container *_tao_impl =
+ ACE_static_cast (POA_CORBA_Container *, _tao_object_reference);
+
+ CORBA_AliasDef_var _tao_retval;
+ CORBA::String_var id;
+ CORBA::String_var name;
+ CORBA::String_var version;
+ CORBA_IDLType_var original_type;
+ if (!(
+ (_tao_in >> id.out ()) &&
+ (_tao_in >> name.out ()) &&
+ (_tao_in >> version.out ()) &&
+ (_tao_in >> original_type.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Container_create_alias ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ id.in (),
+ name.in (),
+ version.in (),
+ original_type.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->create_alias (
+ id.in (),
+ name.in (),
+ version.in (),
+ original_type.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_AliasDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Container::create_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_Container *_tao_impl =
+ ACE_static_cast (POA_CORBA_Container *, _tao_object_reference);
+
+ CORBA_InterfaceDef_var _tao_retval;
+ CORBA::String_var id;
+ CORBA::String_var name;
+ CORBA::String_var version;
+ CORBA_InterfaceDefSeq base_interfaces;
+ if (!(
+ (_tao_in >> id.out ()) &&
+ (_tao_in >> name.out ()) &&
+ (_tao_in >> version.out ()) &&
+ (_tao_in >> base_interfaces)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Container_create_interface ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ id.in (),
+ name.in (),
+ version.in (),
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->create_interface (
+ id.in (),
+ name.in (),
+ version.in (),
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_InterfaceDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Container::create_value_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_Container *_tao_impl =
+ ACE_static_cast (POA_CORBA_Container *, _tao_object_reference);
+
+ CORBA_ValueDef_var _tao_retval;
+ CORBA::String_var id;
+ CORBA::String_var name;
+ CORBA::String_var version;
+ CORBA::Boolean is_custom;
+ CORBA::Boolean is_abstract;
+ CORBA_ValueDef_var base_value;
+ CORBA::Boolean is_truncatable;
+ CORBA_ValueDefSeq abstract_base_values;
+ CORBA_InterfaceDefSeq supported_interfaces;
+ CORBA_InitializerSeq initializers;
+ if (!(
+ (_tao_in >> id.out ()) &&
+ (_tao_in >> name.out ()) &&
+ (_tao_in >> version.out ()) &&
+ (_tao_in >> CORBA::Any::to_boolean (is_custom)) &&
+ (_tao_in >> CORBA::Any::to_boolean (is_abstract)) &&
+ (_tao_in >> base_value.out ()) &&
+ (_tao_in >> CORBA::Any::to_boolean (is_truncatable)) &&
+ (_tao_in >> abstract_base_values) &&
+ (_tao_in >> supported_interfaces) &&
+ (_tao_in >> initializers)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Container_create_value ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ id.in (),
+ name.in (),
+ version.in (),
+ is_custom,
+ is_abstract,
+ base_value.in (),
+ is_truncatable,
+ abstract_base_values,
+ supported_interfaces,
+ initializers
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->create_value (
+ id.in (),
+ name.in (),
+ version.in (),
+ is_custom,
+ is_abstract,
+ base_value.in (),
+ is_truncatable,
+ abstract_base_values,
+ supported_interfaces,
+ initializers
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_ValueDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Container::create_value_box_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_Container *_tao_impl =
+ ACE_static_cast (POA_CORBA_Container *, _tao_object_reference);
+
+ CORBA_ValueBoxDef_var _tao_retval;
+ CORBA::String_var id;
+ CORBA::String_var name;
+ CORBA::String_var version;
+ CORBA_IDLType_var original_type_def;
+ if (!(
+ (_tao_in >> id.out ()) &&
+ (_tao_in >> name.out ()) &&
+ (_tao_in >> version.out ()) &&
+ (_tao_in >> original_type_def.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Container_create_value_box ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ id.in (),
+ name.in (),
+ version.in (),
+ original_type_def.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->create_value_box (
+ id.in (),
+ name.in (),
+ version.in (),
+ original_type_def.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_ValueBoxDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Container::create_exception_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_Container *_tao_impl =
+ ACE_static_cast (POA_CORBA_Container *, _tao_object_reference);
+
+ CORBA_ExceptionDef_var _tao_retval;
+ CORBA::String_var id;
+ CORBA::String_var name;
+ CORBA::String_var version;
+ CORBA_StructMemberSeq members;
+ if (!(
+ (_tao_in >> id.out ()) &&
+ (_tao_in >> name.out ()) &&
+ (_tao_in >> version.out ()) &&
+ (_tao_in >> members)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Container_create_exception ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ id.in (),
+ name.in (),
+ version.in (),
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->create_exception (
+ id.in (),
+ name.in (),
+ version.in (),
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_ExceptionDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Container::create_native_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_Container *_tao_impl =
+ ACE_static_cast (POA_CORBA_Container *, _tao_object_reference);
+
+ CORBA_NativeDef_var _tao_retval;
+ CORBA::String_var id;
+ CORBA::String_var name;
+ CORBA::String_var version;
+ if (!(
+ (_tao_in >> id.out ()) &&
+ (_tao_in >> name.out ()) &&
+ (_tao_in >> version.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Container_create_native ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ id.in (),
+ name.in (),
+ version.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->create_native (
+ id.in (),
+ name.in (),
+ version.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_NativeDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Container::create_abstract_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_Container *_tao_impl =
+ ACE_static_cast (POA_CORBA_Container *, _tao_object_reference);
+
+ CORBA_AbstractInterfaceDef_var _tao_retval;
+ CORBA::String_var id;
+ CORBA::String_var name;
+ CORBA::String_var version;
+ CORBA_AbstractInterfaceDefSeq base_interfaces;
+ if (!(
+ (_tao_in >> id.out ()) &&
+ (_tao_in >> name.out ()) &&
+ (_tao_in >> version.out ()) &&
+ (_tao_in >> base_interfaces)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Container_create_abstract_interface ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ id.in (),
+ name.in (),
+ version.in (),
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->create_abstract_interface (
+ id.in (),
+ name.in (),
+ version.in (),
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_AbstractInterfaceDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Container::create_local_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_Container *_tao_impl =
+ ACE_static_cast (POA_CORBA_Container *, _tao_object_reference);
+
+ CORBA_LocalInterfaceDef_var _tao_retval;
+ CORBA::String_var id;
+ CORBA::String_var name;
+ CORBA::String_var version;
+ CORBA_InterfaceDefSeq base_interfaces;
+ if (!(
+ (_tao_in >> id.out ()) &&
+ (_tao_in >> name.out ()) &&
+ (_tao_in >> version.out ()) &&
+ (_tao_in >> base_interfaces)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Container_create_local_interface ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ id.in (),
+ name.in (),
+ version.in (),
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->create_local_interface (
+ id.in (),
+ name.in (),
+ version.in (),
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_LocalInterfaceDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Container::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_Container *_tao_impl = (POA_CORBA_Container *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_Container::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container *_tao_impl = (POA_CORBA_Container *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_Container::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container *_tao_impl = (POA_CORBA_Container *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_CORBA_Container::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Container:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_CORBA_Container::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Container:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Container_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Object:1.0") == 0)
+ return ACE_static_cast(PortableServer::Servant, this);
+ return 0;
+}
+
+void POA_CORBA_Container::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_CORBA_Container::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/CORBA/Container:1.0";
+}
+
+CORBA_Container*
+POA_CORBA_Container::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::CORBA_Container::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_CORBA_IDLType_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 22:18:41 */
+/* C++ code produced by gperf version 2.8 (ACE version) */
+/* Command-line: gperf -m -M -J -c -C -D -E -T -f 0 -F 0 -a -o -t -p -K opname_ -L C++ -Z TAO_CORBA_IDLType_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_CORBA_IDLType_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 0,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 0,
+ 19, 19, 0, 0, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 5, 19, 19, 19, 19, 0, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19,
+#else
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 0, 19, 0, 19, 19,
+ 0, 0, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 5, 19, 19, 19,
+ 19, 0, 19, 19, 19, 19, 19, 19,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_CORBA_IDLType_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 6,
+ MIN_WORD_LENGTH = 5,
+ MAX_WORD_LENGTH = 13,
+ MIN_HASH_VALUE = 5,
+ MAX_HASH_VALUE = 18,
+ HASH_VALUE_RANGE = 14,
+ DUPLICATES = 0,
+ WORDLIST_SIZE = 11
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},{"",0},
+ {"_is_a", &POA_CORBA_IDLType::_is_a_skel},
+ {"",0},
+ {"destroy", &POA_CORBA_IDLType::destroy_skel},
+ {"",0},
+ {"_get_type", &POA_CORBA_IDLType::_get_type_skel},
+ {"_interface", &POA_CORBA_IDLType::_interface_skel},
+ {"",0},{"",0},
+ {"_get_def_kind", &POA_CORBA_IDLType::_get_def_kind_skel},
+ {"",0},{"",0},{"",0},{"",0},
+ {"_non_existent", &POA_CORBA_IDLType::_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 22:18:41 */
+static TAO_CORBA_IDLType_Perfect_Hash_OpTable tao_CORBA_IDLType_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+class TAO_ServerRequestInfo_CORBA_IDLType_type_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_IDLType_type_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_IDLType *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA::TypeCode_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_IDLType_type_get (const TAO_ServerRequestInfo_CORBA_IDLType_type_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_IDLType_type_get &);
+
+private:
+ POA_CORBA_IDLType *_tao_impl;
+ CORBA::TypeCode_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_IDLType_type_get::TAO_ServerRequestInfo_CORBA_IDLType_type_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_IDLType *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_IDLType_type_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_IDLType_type_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_IDLType_type_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_IDLType_type_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_IDLType_type_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_IDLType_type_get::result (CORBA::TypeCode_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+_TAO_CORBA_IDLType_Strategized_Proxy_Broker *_TAO_CORBA_IDLType_Strategized_Proxy_Broker::the_TAO_CORBA_IDLType_Strategized_Proxy_Broker (void)
+{
+ static _TAO_CORBA_IDLType_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+_TAO_CORBA_IDLType_Strategized_Proxy_Broker::_TAO_CORBA_IDLType_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+_TAO_CORBA_IDLType_Strategized_Proxy_Broker::~_TAO_CORBA_IDLType_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+_TAO_CORBA_IDLType_Proxy_Impl&
+_TAO_CORBA_IDLType_Strategized_Proxy_Broker::select_proxy (
+ ::CORBA_IDLType *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+_TAO_CORBA_IDLType_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ _TAO_CORBA_IDLType_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::_TAO_CORBA_IDLType_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+_TAO_CORBA_IDLType_Proxy_Broker *
+_TAO_CORBA_IDLType_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::_TAO_CORBA_IDLType_Strategized_Proxy_Broker::the_TAO_CORBA_IDLType_Strategized_Proxy_Broker();
+}
+
+int
+_TAO_CORBA_IDLType_Proxy_Broker_Factory_Initializer (long)
+{
+ _TAO_CORBA_IDLType_Proxy_Broker_Factory_function_pointer =
+ _TAO_CORBA_IDLType_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int _TAO_CORBA_IDLType_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ _TAO_CORBA_IDLType_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, _TAO_CORBA_IDLType_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+_TAO_CORBA_IDLType_ThruPOA_Proxy_Impl::_TAO_CORBA_IDLType_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+CORBA::TypeCode_ptr _TAO_CORBA_IDLType_ThruPOA_Proxy_Impl::type (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::TypeCode_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "type",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_IDLType_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/IDLType:1.0"
+ )
+ )->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_CORBA_IDLType::POA_CORBA_IDLType (void)
+{
+ this->optable_ = &tao_CORBA_IDLType_optable;
+}
+
+// copy ctor
+POA_CORBA_IDLType::POA_CORBA_IDLType (const POA_CORBA_IDLType& rhs)
+ : POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_CORBA_IDLType::~POA_CORBA_IDLType (void)
+{
+}
+
+void POA_CORBA_IDLType::_get_type_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IDLType *_tao_impl =
+ ACE_static_cast (POA_CORBA_IDLType *, _tao_object_reference);
+
+ CORBA::TypeCode_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_IDLType_type_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA::TypeCode_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_IDLType::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_IDLType *_tao_impl = (POA_CORBA_IDLType *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_IDLType::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IDLType *_tao_impl = (POA_CORBA_IDLType *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_IDLType::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IDLType *_tao_impl = (POA_CORBA_IDLType *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_CORBA_IDLType::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IDLType:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_CORBA_IDLType::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IDLType:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IDLType_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Object:1.0") == 0)
+ return ACE_static_cast(PortableServer::Servant, this);
+ return 0;
+}
+
+void POA_CORBA_IDLType::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_CORBA_IDLType::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/CORBA/IDLType:1.0";
+}
+
+CORBA_IDLType*
+POA_CORBA_IDLType::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::CORBA_IDLType::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_CORBA_TypedefDef_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 22:18:42 */
+/* C++ code produced by gperf version 2.8 (ACE version) */
+/* Command-line: gperf -m -M -J -c -C -D -E -T -f 0 -F 0 -a -o -t -p -K opname_ -L C++ -Z TAO_CORBA_TypedefDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_CORBA_TypedefDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 0, 0, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 0, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 10, 37, 37, 37, 37, 10, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37,
+#else
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 0, 37, 0, 37, 37,
+ 0, 0, 37, 37, 37, 37, 37, 37, 37, 0,
+ 0, 37, 37, 37, 37, 37, 10, 37, 37, 37,
+ 37, 10, 37, 37, 37, 37, 37, 37,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_CORBA_TypedefDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 17,
+ MIN_WORD_LENGTH = 4,
+ MAX_WORD_LENGTH = 26,
+ MIN_HASH_VALUE = 4,
+ MAX_HASH_VALUE = 36,
+ HASH_VALUE_RANGE = 33,
+ DUPLICATES = 5
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},
+ {"move", &POA_CORBA_TypedefDef::move_skel},
+ {"_is_a", &POA_CORBA_TypedefDef::_is_a_skel},
+ {"_get_id", &POA_CORBA_TypedefDef::_get_id_skel},
+ {"_set_id", &POA_CORBA_TypedefDef::_set_id_skel},
+ {"describe", &POA_CORBA_TypedefDef::describe_skel},
+ {"_get_name", &POA_CORBA_TypedefDef::_get_name_skel},
+ {"_get_type", &POA_CORBA_TypedefDef::_get_type_skel},
+ {"_set_name", &POA_CORBA_TypedefDef::_set_name_skel},
+ {"_interface", &POA_CORBA_TypedefDef::_interface_skel},
+ {"_get_version", &POA_CORBA_TypedefDef::_get_version_skel},
+ {"_set_version", &POA_CORBA_TypedefDef::_set_version_skel},
+ {"_get_def_kind", &POA_CORBA_TypedefDef::_get_def_kind_skel},
+ {"_get_defined_in", &POA_CORBA_TypedefDef::_get_defined_in_skel},
+ {"destroy", &POA_CORBA_TypedefDef::destroy_skel},
+ {"_get_absolute_name", &POA_CORBA_TypedefDef::_get_absolute_name_skel},
+ {"_non_existent", &POA_CORBA_TypedefDef::_non_existent_skel},
+ {"_get_containing_repository", &POA_CORBA_TypedefDef::_get_containing_repository_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -9, -3, -13, -2, 4, 5, -1, 48, 8, -45, 12, -1, -46, 15,
+ -1, 16, -1, 17, 18, -6, -2, -1, -1, 19, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 20,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < MAX_HASH_VALUE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 22:18:42 */
+static TAO_CORBA_TypedefDef_Perfect_Hash_OpTable tao_CORBA_TypedefDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+_TAO_CORBA_TypedefDef_Strategized_Proxy_Broker *_TAO_CORBA_TypedefDef_Strategized_Proxy_Broker::the_TAO_CORBA_TypedefDef_Strategized_Proxy_Broker (void)
+{
+ static _TAO_CORBA_TypedefDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+_TAO_CORBA_TypedefDef_Strategized_Proxy_Broker::_TAO_CORBA_TypedefDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+_TAO_CORBA_TypedefDef_Strategized_Proxy_Broker::~_TAO_CORBA_TypedefDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+_TAO_CORBA_TypedefDef_Proxy_Impl&
+_TAO_CORBA_TypedefDef_Strategized_Proxy_Broker::select_proxy (
+ ::CORBA_TypedefDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+_TAO_CORBA_TypedefDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ _TAO_CORBA_TypedefDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::_TAO_CORBA_TypedefDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+_TAO_CORBA_TypedefDef_Proxy_Broker *
+_TAO_CORBA_TypedefDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::_TAO_CORBA_TypedefDef_Strategized_Proxy_Broker::the_TAO_CORBA_TypedefDef_Strategized_Proxy_Broker();
+}
+
+int
+_TAO_CORBA_TypedefDef_Proxy_Broker_Factory_Initializer (long)
+{
+ _TAO_CORBA_TypedefDef_Proxy_Broker_Factory_function_pointer =
+ _TAO_CORBA_TypedefDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int _TAO_CORBA_TypedefDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ _TAO_CORBA_TypedefDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, _TAO_CORBA_TypedefDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+_TAO_CORBA_TypedefDef_ThruPOA_Proxy_Impl::_TAO_CORBA_TypedefDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_CORBA_TypedefDef::POA_CORBA_TypedefDef (void)
+{
+ this->optable_ = &tao_CORBA_TypedefDef_optable;
+}
+
+// copy ctor
+POA_CORBA_TypedefDef::POA_CORBA_TypedefDef (const POA_CORBA_TypedefDef& rhs)
+ : POA_CORBA_Contained (rhs),
+ POA_CORBA_IDLType (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_CORBA_TypedefDef::~POA_CORBA_TypedefDef (void)
+{
+}
+
+void POA_CORBA_TypedefDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_TypedefDef *_tao_impl = (POA_CORBA_TypedefDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_TypedefDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_TypedefDef *_tao_impl = (POA_CORBA_TypedefDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_TypedefDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_TypedefDef *_tao_impl = (POA_CORBA_TypedefDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_CORBA_TypedefDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/TypedefDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Contained:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IDLType:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_CORBA_TypedefDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/TypedefDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_TypedefDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Contained:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Contained_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IDLType:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IDLType_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Object:1.0") == 0)
+ return ACE_static_cast(PortableServer::Servant, this);
+ return 0;
+}
+
+void POA_CORBA_TypedefDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_CORBA_TypedefDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/CORBA/TypedefDef:1.0";
+}
+
+CORBA_TypedefDef*
+POA_CORBA_TypedefDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::CORBA_TypedefDef::_unchecked_narrow (obj.in ());
+}
+
+
+
+#endif /* ifndef */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IFR_BaseS.h b/TAO/orbsvcs/orbsvcs/IFRService/IFR_BaseS.h
new file mode 100644
index 00000000000..e1077f9c8d8
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_BaseS.h
@@ -0,0 +1,1697 @@
+// -*- C++ -*-
+//
+// $Id$
+
+// **** Code generated by the The ACE ORB (TAO) IDL Compiler ****
+// TAO and the TAO IDL Compiler have been developed by:
+// Center for Distributed Object Computing
+// Washington University
+// St. Louis, MO
+// USA
+// http://www.cs.wustl.edu/~schmidt/doc-center.html
+// and
+// Distributed Object Computing Laboratory
+// University of California at Irvine
+// Irvine, CA
+// USA
+// http://doc.ece.uci.edu/
+//
+// Information about TAO is available at:
+// http://www.cs.wustl.edu/~schmidt/TAO.html
+
+#ifndef _TAO_IDL__________ORBSVCS_IFR_SERVICE_ORIG_IFR_BASES_H_
+#define _TAO_IDL__________ORBSVCS_IFR_SERVICE_ORIG_IFR_BASES_H_
+
+#include "ace/pre.h"
+#include "tao/IFR_Client/IFR_BaseC.h"
+
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+
+#include "tao/PortableServer/PortableServer.h"
+#include "tao/PortableServer/Servant_Base.h"
+#include "tao/PortableServer/Collocated_Object.h"
+#include "tao/PortableServer/ThruPOA_Object_Proxy_Impl.h"
+#include "tao/PortableServer/Direct_Object_Proxy_Impl.h"
+#if defined(_MSC_VER)
+#if (_MSC_VER >= 1200)
+#pragma warning(push)
+#endif /* _MSC_VER >= 1200 */
+#pragma warning(disable:4250)
+#endif /* _MSC_VER */
+
+#if defined (__BORLANDC__)
+#pragma option push -w-rvl -w-rch -w-ccc -w-inl
+#endif /* __BORLANDC__ */
+
+class POA_CORBA_IRObject;
+typedef POA_CORBA_IRObject *POA_CORBA_IRObject_ptr;
+// Forward Classes Declaration
+class _TAO_CORBA_IRObject_ThruPOA_Proxy_Impl;
+class _TAO_CORBA_IRObject_Strategized_Proxy_Broker;
+
+class POA_CORBA_IRObject : public virtual PortableServer::ServantBase
+{
+protected:
+ POA_CORBA_IRObject (void);
+
+public:
+ POA_CORBA_IRObject (const POA_CORBA_IRObject& rhs);
+ virtual ~POA_CORBA_IRObject (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::CORBA_IRObject *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void destroy_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+
+};
+
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Declaration
+//
+
+class _TAO_CORBA_IRObject_Strategized_Proxy_Broker : public virtual ::_TAO_CORBA_IRObject_Proxy_Broker
+{
+public:
+ _TAO_CORBA_IRObject_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_CORBA_IRObject_Strategized_Proxy_Broker (void);
+
+ virtual ::_TAO_CORBA_IRObject_Proxy_Impl &select_proxy (
+ ::CORBA_IRObject *object
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::_TAO_CORBA_IRObject_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+public:
+ static _TAO_CORBA_IRObject_Strategized_Proxy_Broker *the_TAO_CORBA_IRObject_Strategized_Proxy_Broker (void);
+};
+
+
+//
+// End Strategized Proxy Broker Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Impl. Declaration
+//
+
+class _TAO_CORBA_IRObject_ThruPOA_Proxy_Impl :
+ public virtual ::_TAO_CORBA_IRObject_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl
+{
+public:
+ _TAO_CORBA_IRObject_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_CORBA_IRObject_ThruPOA_Proxy_Impl (void) { }
+
+ virtual CORBA::DefinitionKind def_kind (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void destroy (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+
+};
+
+//
+// ThruPOA Proxy Impl. Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+class POA_CORBA_Contained;
+typedef POA_CORBA_Contained *POA_CORBA_Contained_ptr;
+// Forward Classes Declaration
+class _TAO_CORBA_Contained_ThruPOA_Proxy_Impl;
+class _TAO_CORBA_Contained_Strategized_Proxy_Broker;
+
+class POA_CORBA_Contained : public virtual POA_CORBA_IRObject
+{
+protected:
+ POA_CORBA_Contained (void);
+
+public:
+ POA_CORBA_Contained (const POA_CORBA_Contained& rhs);
+ virtual ~POA_CORBA_Contained (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::CORBA_Contained *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ virtual char * id (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_id_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void id (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_id_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual char * name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_name_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void name (
+ const char * name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_name_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual char * version (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_version_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void version (
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_version_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_Container_ptr defined_in (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_defined_in_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual char * absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_absolute_name_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_Repository_ptr containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_containing_repository_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_Contained::Description * describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void describe_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void move_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+};
+
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Declaration
+//
+
+class _TAO_CORBA_Contained_Strategized_Proxy_Broker : public virtual ::_TAO_CORBA_Contained_Proxy_Broker
+{
+public:
+ _TAO_CORBA_Contained_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_CORBA_Contained_Strategized_Proxy_Broker (void);
+
+ virtual ::_TAO_CORBA_Contained_Proxy_Impl &select_proxy (
+ ::CORBA_Contained *object
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::_TAO_CORBA_Contained_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+public:
+ static _TAO_CORBA_Contained_Strategized_Proxy_Broker *the_TAO_CORBA_Contained_Strategized_Proxy_Broker (void);
+};
+
+
+//
+// End Strategized Proxy Broker Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Impl. Declaration
+//
+
+class _TAO_CORBA_Contained_ThruPOA_Proxy_Impl :
+ public virtual ::_TAO_CORBA_Contained_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_IRObject_ThruPOA_Proxy_Impl
+
+{
+public:
+ _TAO_CORBA_Contained_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_CORBA_Contained_ThruPOA_Proxy_Impl (void) { }
+
+ virtual char * id (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void id (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual char * name (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void name (
+ CORBA_Object *_collocated_tao_target_,
+ const char * name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual char * version (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void version (
+ CORBA_Object *_collocated_tao_target_,
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_Container_ptr defined_in (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual char * absolute_name (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_Repository_ptr containing_repository (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_Contained::Description * describe (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void move (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+
+};
+
+//
+// ThruPOA Proxy Impl. Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+class POA_CORBA_Container;
+typedef POA_CORBA_Container *POA_CORBA_Container_ptr;
+// Forward Classes Declaration
+class _TAO_CORBA_Container_ThruPOA_Proxy_Impl;
+class _TAO_CORBA_Container_Strategized_Proxy_Broker;
+
+class POA_CORBA_Container : public virtual POA_CORBA_IRObject
+{
+protected:
+ POA_CORBA_Container (void);
+
+public:
+ POA_CORBA_Container (const POA_CORBA_Container& rhs);
+ virtual ~POA_CORBA_Container (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::CORBA_Container *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ virtual CORBA_Contained_ptr lookup (
+ const char * search_name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void lookup_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_ContainedSeq * contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void contents_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_ContainedSeq * lookup_name (
+ const char * search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void lookup_name_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_Container::DescriptionSeq * describe_contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited,
+ CORBA::Long max_returned_objs
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void describe_contents_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_ModuleDef_ptr create_module (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void create_module_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_ConstantDef_ptr create_constant (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void create_constant_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_StructDef_ptr create_struct (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void create_struct_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_UnionDef_ptr create_union (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void create_union_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_EnumDef_ptr create_enum (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void create_enum_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_AliasDef_ptr create_alias (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void create_alias_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_InterfaceDef_ptr create_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void create_interface_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_ValueDef_ptr create_value (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA::Boolean is_custom,
+ CORBA::Boolean is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ CORBA::Boolean is_truncatable,
+ const CORBA_ValueDefSeq & abstract_base_values,
+ const CORBA_InterfaceDefSeq & supported_interfaces,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void create_value_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_ValueBoxDef_ptr create_value_box (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void create_value_box_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_ExceptionDef_ptr create_exception (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void create_exception_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_NativeDef_ptr create_native (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void create_native_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_AbstractInterfaceDef_ptr create_abstract_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_AbstractInterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void create_abstract_interface_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_LocalInterfaceDef_ptr create_local_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void create_local_interface_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+};
+
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Declaration
+//
+
+class _TAO_CORBA_Container_Strategized_Proxy_Broker : public virtual ::_TAO_CORBA_Container_Proxy_Broker
+{
+public:
+ _TAO_CORBA_Container_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_CORBA_Container_Strategized_Proxy_Broker (void);
+
+ virtual ::_TAO_CORBA_Container_Proxy_Impl &select_proxy (
+ ::CORBA_Container *object
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::_TAO_CORBA_Container_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+public:
+ static _TAO_CORBA_Container_Strategized_Proxy_Broker *the_TAO_CORBA_Container_Strategized_Proxy_Broker (void);
+};
+
+
+//
+// End Strategized Proxy Broker Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Impl. Declaration
+//
+
+class _TAO_CORBA_Container_ThruPOA_Proxy_Impl :
+ public virtual ::_TAO_CORBA_Container_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_IRObject_ThruPOA_Proxy_Impl
+
+{
+public:
+ _TAO_CORBA_Container_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_CORBA_Container_ThruPOA_Proxy_Impl (void) { }
+
+ virtual CORBA_Contained_ptr lookup (
+ CORBA_Object *_collocated_tao_target_,
+ const char * search_name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_ContainedSeq * contents (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_ContainedSeq * lookup_name (
+ CORBA_Object *_collocated_tao_target_,
+ const char * search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_Container::DescriptionSeq * describe_contents (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited,
+ CORBA::Long max_returned_objs
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_ModuleDef_ptr create_module (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_ConstantDef_ptr create_constant (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_StructDef_ptr create_struct (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_UnionDef_ptr create_union (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_EnumDef_ptr create_enum (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_AliasDef_ptr create_alias (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_InterfaceDef_ptr create_interface (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_ValueDef_ptr create_value (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA::Boolean is_custom,
+ CORBA::Boolean is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ CORBA::Boolean is_truncatable,
+ const CORBA_ValueDefSeq & abstract_base_values,
+ const CORBA_InterfaceDefSeq & supported_interfaces,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_ValueBoxDef_ptr create_value_box (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_ExceptionDef_ptr create_exception (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_NativeDef_ptr create_native (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_AbstractInterfaceDef_ptr create_abstract_interface (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_AbstractInterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_LocalInterfaceDef_ptr create_local_interface (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+
+};
+
+//
+// ThruPOA Proxy Impl. Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+class POA_CORBA_IDLType;
+typedef POA_CORBA_IDLType *POA_CORBA_IDLType_ptr;
+// Forward Classes Declaration
+class _TAO_CORBA_IDLType_ThruPOA_Proxy_Impl;
+class _TAO_CORBA_IDLType_Strategized_Proxy_Broker;
+
+class POA_CORBA_IDLType : public virtual POA_CORBA_IRObject
+{
+protected:
+ POA_CORBA_IDLType (void);
+
+public:
+ POA_CORBA_IDLType (const POA_CORBA_IDLType& rhs);
+ virtual ~POA_CORBA_IDLType (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::CORBA_IDLType *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ virtual CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_type_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+};
+
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Declaration
+//
+
+class _TAO_CORBA_IDLType_Strategized_Proxy_Broker : public virtual ::_TAO_CORBA_IDLType_Proxy_Broker
+{
+public:
+ _TAO_CORBA_IDLType_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_CORBA_IDLType_Strategized_Proxy_Broker (void);
+
+ virtual ::_TAO_CORBA_IDLType_Proxy_Impl &select_proxy (
+ ::CORBA_IDLType *object
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::_TAO_CORBA_IDLType_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+public:
+ static _TAO_CORBA_IDLType_Strategized_Proxy_Broker *the_TAO_CORBA_IDLType_Strategized_Proxy_Broker (void);
+};
+
+
+//
+// End Strategized Proxy Broker Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Impl. Declaration
+//
+
+class _TAO_CORBA_IDLType_ThruPOA_Proxy_Impl :
+ public virtual ::_TAO_CORBA_IDLType_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_IRObject_ThruPOA_Proxy_Impl
+
+{
+public:
+ _TAO_CORBA_IDLType_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_CORBA_IDLType_ThruPOA_Proxy_Impl (void) { }
+
+ virtual CORBA::TypeCode_ptr type (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+
+};
+
+//
+// ThruPOA Proxy Impl. Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+class POA_CORBA_TypedefDef;
+typedef POA_CORBA_TypedefDef *POA_CORBA_TypedefDef_ptr;
+// Forward Classes Declaration
+class _TAO_CORBA_TypedefDef_ThruPOA_Proxy_Impl;
+class _TAO_CORBA_TypedefDef_Strategized_Proxy_Broker;
+
+class POA_CORBA_TypedefDef : public virtual POA_CORBA_Contained, public virtual POA_CORBA_IDLType
+{
+protected:
+ POA_CORBA_TypedefDef (void);
+
+public:
+ POA_CORBA_TypedefDef (const POA_CORBA_TypedefDef& rhs);
+ virtual ~POA_CORBA_TypedefDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::CORBA_TypedefDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ static void _get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+};
+
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Declaration
+//
+
+class _TAO_CORBA_TypedefDef_Strategized_Proxy_Broker : public virtual ::_TAO_CORBA_TypedefDef_Proxy_Broker
+{
+public:
+ _TAO_CORBA_TypedefDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_CORBA_TypedefDef_Strategized_Proxy_Broker (void);
+
+ virtual ::_TAO_CORBA_TypedefDef_Proxy_Impl &select_proxy (
+ ::CORBA_TypedefDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::_TAO_CORBA_TypedefDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+public:
+ static _TAO_CORBA_TypedefDef_Strategized_Proxy_Broker *the_TAO_CORBA_TypedefDef_Strategized_Proxy_Broker (void);
+};
+
+
+//
+// End Strategized Proxy Broker Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Impl. Declaration
+//
+
+class _TAO_CORBA_TypedefDef_ThruPOA_Proxy_Impl :
+ public virtual ::_TAO_CORBA_TypedefDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_Contained_ThruPOA_Proxy_Impl,
+ public virtual ::_TAO_CORBA_IDLType_ThruPOA_Proxy_Impl
+
+{
+public:
+ _TAO_CORBA_TypedefDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_CORBA_TypedefDef_ThruPOA_Proxy_Impl (void) { }
+
+};
+
+
+//
+// ThruPOA Proxy Impl. Declaration
+///////////////////////////////////////////////////////////////////////
+
+#include "IFR_BaseS_T.h"
+
+#if defined (__ACE_INLINE__)
+#include "IFR_BaseS.i"
+#endif /* defined INLINE */
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#if defined (__BORLANDC__)
+#pragma option pop
+#endif /* __BORLANDC__ */
+
+#include "ace/post.h"
+#endif /* ifndef */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IFR_BaseS.i b/TAO/orbsvcs/orbsvcs/IFRService/IFR_BaseS.i
new file mode 100644
index 00000000000..8224fd18394
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_BaseS.i
@@ -0,0 +1,321 @@
+// -*- C++ -*-
+//
+// $Id$
+
+// **** Code generated by the The ACE ORB (TAO) IDL Compiler ****
+// TAO and the TAO IDL Compiler have been developed by:
+// Center for Distributed Object Computing
+// Washington University
+// St. Louis, MO
+// USA
+// http://www.cs.wustl.edu/~schmidt/doc-center.html
+// and
+// Distributed Object Computing Laboratory
+// University of California at Irvine
+// Irvine, CA
+// USA
+// http://doc.ece.uci.edu/
+//
+// Information about TAO is available at:
+// http://www.cs.wustl.edu/~schmidt/TAO.html
+
+ACE_INLINE void POA_CORBA_Contained::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_Contained_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_Contained::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_Contained_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_Container::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_Container_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_Container::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_Container_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_IDLType::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_IDLType_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_IDLType::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_IDLType_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_TypedefDef::_get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_TypedefDef_ptr) obj;
+ POA_CORBA_Contained::_get_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_TypedefDef::_set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_TypedefDef_ptr) obj;
+ POA_CORBA_Contained::_set_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_TypedefDef::_get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_TypedefDef_ptr) obj;
+ POA_CORBA_Contained::_get_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_TypedefDef::_set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_TypedefDef_ptr) obj;
+ POA_CORBA_Contained::_set_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_TypedefDef::_get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_TypedefDef_ptr) obj;
+ POA_CORBA_Contained::_get_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_TypedefDef::_set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_TypedefDef_ptr) obj;
+ POA_CORBA_Contained::_set_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_TypedefDef::_get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_TypedefDef_ptr) obj;
+ POA_CORBA_Contained::_get_defined_in_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_TypedefDef::_get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_TypedefDef_ptr) obj;
+ POA_CORBA_Contained::_get_absolute_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_TypedefDef::_get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_TypedefDef_ptr) obj;
+ POA_CORBA_Contained::_get_containing_repository_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_TypedefDef::describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_TypedefDef_ptr) obj;
+ POA_CORBA_Contained::describe_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_TypedefDef::move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_TypedefDef_ptr) obj;
+ POA_CORBA_Contained::move_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_TypedefDef::_get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IDLType_ptr impl = (POA_CORBA_TypedefDef_ptr) obj;
+ POA_CORBA_IDLType::_get_type_skel (
+ req,
+ (POA_CORBA_IDLType_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_TypedefDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_TypedefDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_TypedefDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_TypedefDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IFR_BaseS_T.cpp b/TAO/orbsvcs/orbsvcs/IFRService/IFR_BaseS_T.cpp
new file mode 100644
index 00000000000..a58f77a1343
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_BaseS_T.cpp
@@ -0,0 +1,32 @@
+// -*- C++ -*-
+//
+// $Id$
+
+// **** Code generated by the The ACE ORB (TAO) IDL Compiler ****
+// TAO and the TAO IDL Compiler have been developed by:
+// Center for Distributed Object Computing
+// Washington University
+// St. Louis, MO
+// USA
+// http://www.cs.wustl.edu/~schmidt/doc-center.html
+// and
+// Distributed Object Computing Laboratory
+// University of California at Irvine
+// Irvine, CA
+// USA
+// http://doc.ece.uci.edu/
+//
+// Information about TAO is available at:
+// http://www.cs.wustl.edu/~schmidt/TAO.html
+
+#ifndef _TAO_IDL_IFR_BASES_T_CPP_
+#define _TAO_IDL_IFR_BASES_T_CPP_
+
+#include "IFR_BaseS_T.h"
+
+#if !defined (__ACE_INLINE__)
+#include "IFR_BaseS_T.i"
+#endif /* !defined INLINE */
+
+
+#endif /* ifndef */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IFR_BaseS_T.h b/TAO/orbsvcs/orbsvcs/IFRService/IFR_BaseS_T.h
new file mode 100644
index 00000000000..0d9c58482b6
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_BaseS_T.h
@@ -0,0 +1,708 @@
+// -*- C++ -*-
+//
+// $Id$
+
+// **** Code generated by the The ACE ORB (TAO) IDL Compiler ****
+// TAO and the TAO IDL Compiler have been developed by:
+// Center for Distributed Object Computing
+// Washington University
+// St. Louis, MO
+// USA
+// http://www.cs.wustl.edu/~schmidt/doc-center.html
+// and
+// Distributed Object Computing Laboratory
+// University of California at Irvine
+// Irvine, CA
+// USA
+// http://doc.ece.uci.edu/
+//
+// Information about TAO is available at:
+// http://www.cs.wustl.edu/~schmidt/TAO.html
+
+#ifndef _TAO_IDL_IFR_BASES_T_H_
+#define _TAO_IDL_IFR_BASES_T_H_
+
+#include "ace/pre.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_HAS_USING_KEYWORD)
+
+TAO_NAMESPACE POA_CORBA
+{
+}
+TAO_NAMESPACE_CLOSE // module CORBA
+
+// TIE class: Refer to CORBA v2.2, Section 20.34.4
+template <class T>
+class POA_CORBA_IRObject_tie : public POA_CORBA_IRObject
+{
+public:
+ POA_CORBA_IRObject_tie (T &t);
+ // the T& ctor
+ POA_CORBA_IRObject_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ POA_CORBA_IRObject_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ POA_CORBA_IRObject_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~POA_CORBA_IRObject_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 (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ POA_CORBA_IRObject_tie (const POA_CORBA_IRObject_tie &);
+ void operator= (const POA_CORBA_IRObject_tie &);
+};
+
+// TIE class: Refer to CORBA v2.2, Section 20.34.4
+template <class T>
+class POA_CORBA_Contained_tie : public POA_CORBA_Contained
+{
+public:
+ POA_CORBA_Contained_tie (T &t);
+ // the T& ctor
+ POA_CORBA_Contained_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ POA_CORBA_Contained_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ POA_CORBA_Contained_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~POA_CORBA_Contained_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ char * id (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void id (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void name (
+ const char * name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * version (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void version (
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container_ptr defined_in (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Repository_ptr containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained::Description * describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ POA_CORBA_Contained_tie (const POA_CORBA_Contained_tie &);
+ void operator= (const POA_CORBA_Contained_tie &);
+};
+
+// TIE class: Refer to CORBA v2.2, Section 20.34.4
+template <class T>
+class POA_CORBA_Container_tie : public POA_CORBA_Container
+{
+public:
+ POA_CORBA_Container_tie (T &t);
+ // the T& ctor
+ POA_CORBA_Container_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ POA_CORBA_Container_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ POA_CORBA_Container_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~POA_CORBA_Container_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA_Contained_ptr lookup (
+ const char * search_name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ContainedSeq * contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ContainedSeq * lookup_name (
+ const char * search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container::DescriptionSeq * describe_contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited,
+ CORBA::Long max_returned_objs
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ModuleDef_ptr create_module (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ConstantDef_ptr create_constant (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_StructDef_ptr create_struct (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_UnionDef_ptr create_union (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_EnumDef_ptr create_enum (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_AliasDef_ptr create_alias (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_InterfaceDef_ptr create_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueDef_ptr create_value (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA::Boolean is_custom,
+ CORBA::Boolean is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ CORBA::Boolean is_truncatable,
+ const CORBA_ValueDefSeq & abstract_base_values,
+ const CORBA_InterfaceDefSeq & supported_interfaces,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueBoxDef_ptr create_value_box (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ExceptionDef_ptr create_exception (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_NativeDef_ptr create_native (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_AbstractInterfaceDef_ptr create_abstract_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_AbstractInterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_LocalInterfaceDef_ptr create_local_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ POA_CORBA_Container_tie (const POA_CORBA_Container_tie &);
+ void operator= (const POA_CORBA_Container_tie &);
+};
+
+// TIE class: Refer to CORBA v2.2, Section 20.34.4
+template <class T>
+class POA_CORBA_IDLType_tie : public POA_CORBA_IDLType
+{
+public:
+ POA_CORBA_IDLType_tie (T &t);
+ // the T& ctor
+ POA_CORBA_IDLType_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ POA_CORBA_IDLType_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ POA_CORBA_IDLType_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~POA_CORBA_IDLType_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ POA_CORBA_IDLType_tie (const POA_CORBA_IDLType_tie &);
+ void operator= (const POA_CORBA_IDLType_tie &);
+};
+
+// TIE class: Refer to CORBA v2.2, Section 20.34.4
+template <class T>
+class POA_CORBA_TypedefDef_tie : public POA_CORBA_TypedefDef
+{
+public:
+ POA_CORBA_TypedefDef_tie (T &t);
+ // the T& ctor
+ POA_CORBA_TypedefDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ POA_CORBA_TypedefDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ POA_CORBA_TypedefDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~POA_CORBA_TypedefDef_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ char * id (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void id (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void name (
+ const char * name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * version (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void version (
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container_ptr defined_in (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Repository_ptr containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained::Description * describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ POA_CORBA_TypedefDef_tie (const POA_CORBA_TypedefDef_tie &);
+ void operator= (const POA_CORBA_TypedefDef_tie &);
+};
+
+#endif /* ACE_HAS_USING_KEYWORD */
+
+#if defined (__ACE_INLINE__)
+#include "IFR_BaseS_T.i"
+#endif /* defined INLINE */
+
+
+#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
+#include "IFR_BaseS_T.cpp"
+#endif /* defined REQUIRED SOURCE */
+
+
+#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
+#pragma implementation ("IFR_BaseS_T.cpp")
+#endif /* defined REQUIRED PRAGMA */
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#include "ace/post.h"
+#endif /* ifndef */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IFR_BaseS_T.i b/TAO/orbsvcs/orbsvcs/IFRService/IFR_BaseS_T.i
new file mode 100644
index 00000000000..2dd1632a3b6
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_BaseS_T.i
@@ -0,0 +1,1232 @@
+// -*- C++ -*-
+//
+// $Id$
+
+// **** Code generated by the The ACE ORB (TAO) IDL Compiler ****
+// TAO and the TAO IDL Compiler have been developed by:
+// Center for Distributed Object Computing
+// Washington University
+// St. Louis, MO
+// USA
+// http://www.cs.wustl.edu/~schmidt/doc-center.html
+// and
+// Distributed Object Computing Laboratory
+// University of California at Irvine
+// Irvine, CA
+// USA
+// http://doc.ece.uci.edu/
+//
+// Information about TAO is available at:
+// http://www.cs.wustl.edu/~schmidt/TAO.html
+
+#if defined (ACE_HAS_USING_KEYWORD)
+
+template <class T> ACE_INLINE
+POA_CORBA_IRObject_tie<T>::POA_CORBA_IRObject_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_IRObject_tie<T>::POA_CORBA_IRObject_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_IRObject_tie<T>::POA_CORBA_IRObject_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_IRObject_tie<T>::POA_CORBA_IRObject_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_CORBA_IRObject_tie<T>::~POA_CORBA_IRObject_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_CORBA_IRObject_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_IRObject_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_CORBA_IRObject_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_CORBA_IRObject_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_IRObject_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_CORBA_IRObject_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->POA_CORBA_IRObject::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_CORBA_IRObject_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_IRObject_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_CORBA_Contained_tie<T>::POA_CORBA_Contained_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_Contained_tie<T>::POA_CORBA_Contained_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_Contained_tie<T>::POA_CORBA_Contained_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_Contained_tie<T>::POA_CORBA_Contained_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_CORBA_Contained_tie<T>::~POA_CORBA_Contained_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_CORBA_Contained_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_Contained_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_CORBA_Contained_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_CORBA_Contained_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_Contained_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_CORBA_Contained_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->POA_CORBA_Contained::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_Contained_tie<T>::id (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->id (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_Contained_tie<T>::id (
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->id (
+id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_Contained_tie<T>::name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_Contained_tie<T>::name (
+ const char * name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->name (
+name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_Contained_tie<T>::version (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->version (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_Contained_tie<T>::version (
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->version (
+version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container_ptr POA_CORBA_Contained_tie<T>::defined_in (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->defined_in (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_Contained_tie<T>::absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->absolute_name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Repository_ptr POA_CORBA_Contained_tie<T>::containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->containing_repository (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained::Description * POA_CORBA_Contained_tie<T>::describe (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_Contained_tie<T>::move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->move (
+new_container,
+ new_name,
+ new_version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_CORBA_Contained_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_Contained_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_CORBA_Container_tie<T>::POA_CORBA_Container_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_Container_tie<T>::POA_CORBA_Container_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_Container_tie<T>::POA_CORBA_Container_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_Container_tie<T>::POA_CORBA_Container_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_CORBA_Container_tie<T>::~POA_CORBA_Container_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_CORBA_Container_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_Container_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_CORBA_Container_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_CORBA_Container_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_Container_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_CORBA_Container_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->POA_CORBA_Container::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained_ptr POA_CORBA_Container_tie<T>::lookup (
+ const char * search_name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->lookup (
+search_name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ContainedSeq * POA_CORBA_Container_tie<T>::contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->contents (
+limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ContainedSeq * POA_CORBA_Container_tie<T>::lookup_name (
+ const char * search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->lookup_name (
+search_name,
+ levels_to_search,
+ limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container::DescriptionSeq * POA_CORBA_Container_tie<T>::describe_contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited,
+ CORBA::Long max_returned_objs
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe_contents (
+limit_type,
+ exclude_inherited,
+ max_returned_objs
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ModuleDef_ptr POA_CORBA_Container_tie<T>::create_module (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_module (
+id,
+ name,
+ version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ConstantDef_ptr POA_CORBA_Container_tie<T>::create_constant (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_constant (
+id,
+ name,
+ version,
+ type,
+ value
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_StructDef_ptr POA_CORBA_Container_tie<T>::create_struct (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_struct (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_UnionDef_ptr POA_CORBA_Container_tie<T>::create_union (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_union (
+id,
+ name,
+ version,
+ discriminator_type,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_EnumDef_ptr POA_CORBA_Container_tie<T>::create_enum (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_enum (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_AliasDef_ptr POA_CORBA_Container_tie<T>::create_alias (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_alias (
+id,
+ name,
+ version,
+ original_type
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_InterfaceDef_ptr POA_CORBA_Container_tie<T>::create_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueDef_ptr POA_CORBA_Container_tie<T>::create_value (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA::Boolean is_custom,
+ CORBA::Boolean is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ CORBA::Boolean is_truncatable,
+ const CORBA_ValueDefSeq & abstract_base_values,
+ const CORBA_InterfaceDefSeq & supported_interfaces,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_value (
+id,
+ name,
+ version,
+ is_custom,
+ is_abstract,
+ base_value,
+ is_truncatable,
+ abstract_base_values,
+ supported_interfaces,
+ initializers
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueBoxDef_ptr POA_CORBA_Container_tie<T>::create_value_box (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_value_box (
+id,
+ name,
+ version,
+ original_type_def
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ExceptionDef_ptr POA_CORBA_Container_tie<T>::create_exception (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_exception (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_NativeDef_ptr POA_CORBA_Container_tie<T>::create_native (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_native (
+id,
+ name,
+ version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_AbstractInterfaceDef_ptr POA_CORBA_Container_tie<T>::create_abstract_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_AbstractInterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_abstract_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_LocalInterfaceDef_ptr POA_CORBA_Container_tie<T>::create_local_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_local_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_CORBA_Container_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_Container_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_CORBA_IDLType_tie<T>::POA_CORBA_IDLType_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_IDLType_tie<T>::POA_CORBA_IDLType_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_IDLType_tie<T>::POA_CORBA_IDLType_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_IDLType_tie<T>::POA_CORBA_IDLType_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_CORBA_IDLType_tie<T>::~POA_CORBA_IDLType_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_CORBA_IDLType_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_IDLType_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_CORBA_IDLType_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_CORBA_IDLType_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_IDLType_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_CORBA_IDLType_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->POA_CORBA_IDLType::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA::TypeCode_ptr POA_CORBA_IDLType_tie<T>::type (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_CORBA_IDLType_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_IDLType_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_CORBA_TypedefDef_tie<T>::POA_CORBA_TypedefDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_TypedefDef_tie<T>::POA_CORBA_TypedefDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_TypedefDef_tie<T>::POA_CORBA_TypedefDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_TypedefDef_tie<T>::POA_CORBA_TypedefDef_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_CORBA_TypedefDef_tie<T>::~POA_CORBA_TypedefDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_CORBA_TypedefDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_TypedefDef_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_CORBA_TypedefDef_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_CORBA_TypedefDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_TypedefDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_CORBA_TypedefDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->POA_CORBA_TypedefDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_TypedefDef_tie<T>::id (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->id (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_TypedefDef_tie<T>::id (
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->id (
+id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_TypedefDef_tie<T>::name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_TypedefDef_tie<T>::name (
+ const char * name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->name (
+name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_TypedefDef_tie<T>::version (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->version (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_TypedefDef_tie<T>::version (
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->version (
+version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container_ptr POA_CORBA_TypedefDef_tie<T>::defined_in (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->defined_in (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_TypedefDef_tie<T>::absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->absolute_name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Repository_ptr POA_CORBA_TypedefDef_tie<T>::containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->containing_repository (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained::Description * POA_CORBA_TypedefDef_tie<T>::describe (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_TypedefDef_tie<T>::move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->move (
+new_container,
+ new_name,
+ new_version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::TypeCode_ptr POA_CORBA_TypedefDef_tie<T>::type (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_CORBA_TypedefDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_TypedefDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+#endif /* ACE_HAS_USING_KEYWORD */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IFR_BasicS.cpp b/TAO/orbsvcs/orbsvcs/IFRService/IFR_BasicS.cpp
new file mode 100644
index 00000000000..f50c0f1c3be
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_BasicS.cpp
@@ -0,0 +1,24083 @@
+// -*- C++ -*-
+//
+// $Id$
+
+// **** Code generated by the The ACE ORB (TAO) IDL Compiler ****
+// TAO and the TAO IDL Compiler have been developed by:
+// Center for Distributed Object Computing
+// Washington University
+// St. Louis, MO
+// USA
+// http://www.cs.wustl.edu/~schmidt/doc-center.html
+// and
+// Distributed Object Computing Laboratory
+// University of California at Irvine
+// Irvine, CA
+// USA
+// http://doc.ece.uci.edu/
+//
+// Information about TAO is available at:
+// http://www.cs.wustl.edu/~schmidt/TAO.html
+
+#ifndef _TAO_IDL__________ORBSVCS_IFR_SERVICE_ORIG_IFR_BASICS_CPP_
+#define _TAO_IDL__________ORBSVCS_IFR_SERVICE_ORIG_IFR_BASICS_CPP_
+
+#include "IFR_BasicS.h"
+
+#include "tao/PortableServer/Object_Adapter.h"
+#include "tao/PortableServer/Operation_Table.h"
+#include "tao/TAO_Server_Request.h"
+#include "tao/ORB_Core.h"
+#include "tao/Stub.h"
+#include "tao/IFR_Client_Adapter.h"
+#include "tao/PortableInterceptor.h"
+
+#if TAO_HAS_INTERCEPTORS == 1
+#include "tao/RequestInfo_Util.h"
+#include "tao/PortableServer/ServerRequestInfo.h"
+#include "tao/PortableServer/ServerInterceptorAdapter.h"
+#endif /* TAO_HAS_INTERCEPTORS == 1 */
+
+#include "ace/Dynamic_Service.h"
+#if defined (__BORLANDC__)
+#pragma option -w-rvl -w-rch -w-ccc -w-aus
+#endif /* __BORLANDC__ */
+
+#if !defined (__ACE_INLINE__)
+#include "IFR_BasicS.i"
+#endif /* !defined INLINE */
+
+class TAO_CORBA_Repository_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 22:45:25 */
+/* C++ code produced by gperf version 2.8 (ACE version) */
+/* Command-line: gperf -m -M -J -c -C -D -E -T -f 0 -F 0 -a -o -t -p -K opname_ -L C++ -Z TAO_CORBA_Repository_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_CORBA_Repository_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
+ 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
+ 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
+ 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
+ 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
+ 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
+ 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
+ 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
+ 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
+ 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
+ 52, 52, 52, 52, 52, 52, 52, 52, 52, 30,
+ 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
+ 52, 52, 52, 52, 52, 52, 52, 52, 52, 5,
+ 52, 0, 4, 10, 52, 5, 52, 52, 52, 52,
+ 52, 52, 52, 52, 52, 52, 52, 8, 25, 15,
+ 52, 0, 52, 52, 52, 52, 52, 52, 52, 52,
+ 52, 52, 30, 0, 52, 52, 52, 25, 0, 52,
+ 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
+ 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
+ 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
+ 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
+ 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
+ 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
+ 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
+ 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
+ 52, 52, 52, 52, 52, 52,
+#else
+ 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
+ 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
+ 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
+ 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
+ 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
+ 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
+ 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
+ 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
+ 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
+ 52, 52, 52, 52, 52, 30, 52, 5, 52, 0,
+ 4, 10, 52, 5, 52, 52, 52, 52, 8, 25,
+ 15, 52, 0, 52, 52, 30, 0, 52, 52, 52,
+ 25, 0, 52, 52, 52, 52, 52, 52,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_CORBA_Repository_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 30,
+ MIN_WORD_LENGTH = 5,
+ MAX_WORD_LENGTH = 25,
+ MIN_HASH_VALUE = 11,
+ MAX_HASH_VALUE = 51,
+ HASH_VALUE_RANGE = 41,
+ DUPLICATES = 2,
+ WORDLIST_SIZE = 41
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},{"",0},{"",0},{"",0},{"",0},{"",0},
+ {"",0},{"",0},
+ {"destroy", &POA_CORBA_Repository::destroy_skel},
+ {"create_array", &POA_CORBA_Repository::create_array_skel},
+ {"create_struct", &POA_CORBA_Repository::create_struct_skel},
+ {"lookup", &POA_CORBA_Repository::lookup_skel},
+ {"create_constant", &POA_CORBA_Repository::create_constant_skel},
+ {"create_fixed", &POA_CORBA_Repository::create_fixed_skel},
+ {"create_string", &POA_CORBA_Repository::create_string_skel},
+ {"create_wstring", &POA_CORBA_Repository::create_wstring_skel},
+ {"lookup_id", &POA_CORBA_Repository::lookup_id_skel},
+ {"create_value", &POA_CORBA_Repository::create_value_skel},
+ {"create_module", &POA_CORBA_Repository::create_module_skel},
+ {"create_native", &POA_CORBA_Repository::create_native_skel},
+ {"create_sequence", &POA_CORBA_Repository::create_sequence_skel},
+ {"create_interface", &POA_CORBA_Repository::create_interface_skel},
+ {"create_union", &POA_CORBA_Repository::create_union_skel},
+ {"get_primitive", &POA_CORBA_Repository::get_primitive_skel},
+ {"lookup_name", &POA_CORBA_Repository::lookup_name_skel},
+ {"create_exception", &POA_CORBA_Repository::create_exception_skel},
+ {"create_local_interface", &POA_CORBA_Repository::create_local_interface_skel},
+ {"create_abstract_interface", &POA_CORBA_Repository::create_abstract_interface_skel},
+ {"create_enum", &POA_CORBA_Repository::create_enum_skel},
+ {"get_canonical_typecode", &POA_CORBA_Repository::get_canonical_typecode_skel},
+ {"contents", &POA_CORBA_Repository::contents_skel},
+ {"_is_a", &POA_CORBA_Repository::_is_a_skel},
+ {"create_value_box", &POA_CORBA_Repository::create_value_box_skel},
+ {"create_alias", &POA_CORBA_Repository::create_alias_skel},
+ {"_non_existent", &POA_CORBA_Repository::_non_existent_skel},
+ {"_get_def_kind", &POA_CORBA_Repository::_get_def_kind_skel},
+ {"_interface", &POA_CORBA_Repository::_interface_skel},
+ {"describe_contents", &POA_CORBA_Repository::describe_contents_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -21, -2, 11, 12, 13,
+ 14, 15, 16, -1, 17, 18, -1, 19, 20, -65, -1, 23, 24, 25,
+ 26, 27, -1, 28, 29, -1, -1, 30, 31, 32, 33, -1, 34, 35,
+ 36, 37, -1, -1, -1, 38, -1, -1, 39, 40,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < WORDLIST_SIZE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 22:45:25 */
+static TAO_CORBA_Repository_Perfect_Hash_OpTable tao_CORBA_Repository_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+class TAO_ServerRequestInfo_CORBA_Repository_lookup_id : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Repository_lookup_id (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Repository *tao_impl
+ ,
+ const char * search_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_Contained_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_Repository_lookup_id (const TAO_ServerRequestInfo_CORBA_Repository_lookup_id &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Repository_lookup_id &);
+
+private:
+ POA_CORBA_Repository *_tao_impl;
+ const char * search_id_;
+ CORBA_Contained_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_Repository_lookup_id::TAO_ServerRequestInfo_CORBA_Repository_lookup_id (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Repository *tao_impl,
+ const char * search_id
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ search_id_ (search_id)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Repository_lookup_id::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= search_id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Repository_lookup_id::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Repository_lookup_id::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Repository_lookup_id::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Repository_lookup_id::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_Repository_lookup_id::result (CORBA_Contained_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_Repository_get_canonical_typecode : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Repository_get_canonical_typecode (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Repository *tao_impl
+ ,
+ CORBA::TypeCode_ptr tc
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA::TypeCode_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_Repository_get_canonical_typecode (const TAO_ServerRequestInfo_CORBA_Repository_get_canonical_typecode &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Repository_get_canonical_typecode &);
+
+private:
+ POA_CORBA_Repository *_tao_impl;
+ CORBA::TypeCode_ptr tc_;
+ CORBA::TypeCode_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_Repository_get_canonical_typecode::TAO_ServerRequestInfo_CORBA_Repository_get_canonical_typecode (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Repository *tao_impl,
+ CORBA::TypeCode_ptr tc
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ tc_ (tc)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Repository_get_canonical_typecode::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= tc_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Repository_get_canonical_typecode::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Repository_get_canonical_typecode::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Repository_get_canonical_typecode::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Repository_get_canonical_typecode::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_Repository_get_canonical_typecode::result (CORBA::TypeCode_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_Repository_get_primitive : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Repository_get_primitive (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Repository *tao_impl
+ ,
+ CORBA::PrimitiveKind & kind
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_PrimitiveDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_Repository_get_primitive (const TAO_ServerRequestInfo_CORBA_Repository_get_primitive &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Repository_get_primitive &);
+
+private:
+ POA_CORBA_Repository *_tao_impl;
+ const CORBA::PrimitiveKind & kind_;
+ CORBA_PrimitiveDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_Repository_get_primitive::TAO_ServerRequestInfo_CORBA_Repository_get_primitive (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Repository *tao_impl,
+ CORBA::PrimitiveKind & kind
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ kind_ (kind)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Repository_get_primitive::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= this->kind_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Repository_get_primitive::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Repository_get_primitive::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Repository_get_primitive::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Repository_get_primitive::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_Repository_get_primitive::result (CORBA_PrimitiveDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_Repository_create_string : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Repository_create_string (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Repository *tao_impl
+ ,
+ const CORBA::ULong & bound
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_StringDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_Repository_create_string (const TAO_ServerRequestInfo_CORBA_Repository_create_string &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Repository_create_string &);
+
+private:
+ POA_CORBA_Repository *_tao_impl;
+ const CORBA::ULong & bound_;
+ CORBA_StringDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_Repository_create_string::TAO_ServerRequestInfo_CORBA_Repository_create_string (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Repository *tao_impl,
+ const CORBA::ULong & bound
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ bound_ (bound)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Repository_create_string::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= bound_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Repository_create_string::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Repository_create_string::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Repository_create_string::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Repository_create_string::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_Repository_create_string::result (CORBA_StringDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_Repository_create_wstring : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Repository_create_wstring (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Repository *tao_impl
+ ,
+ const CORBA::ULong & bound
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_WstringDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_Repository_create_wstring (const TAO_ServerRequestInfo_CORBA_Repository_create_wstring &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Repository_create_wstring &);
+
+private:
+ POA_CORBA_Repository *_tao_impl;
+ const CORBA::ULong & bound_;
+ CORBA_WstringDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_Repository_create_wstring::TAO_ServerRequestInfo_CORBA_Repository_create_wstring (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Repository *tao_impl,
+ const CORBA::ULong & bound
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ bound_ (bound)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Repository_create_wstring::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= bound_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Repository_create_wstring::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Repository_create_wstring::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Repository_create_wstring::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Repository_create_wstring::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_Repository_create_wstring::result (CORBA_WstringDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_Repository_create_sequence : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Repository_create_sequence (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Repository *tao_impl
+ ,
+ const CORBA::ULong & bound,
+ CORBA_IDLType_ptr element_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_SequenceDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_Repository_create_sequence (const TAO_ServerRequestInfo_CORBA_Repository_create_sequence &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Repository_create_sequence &);
+
+private:
+ POA_CORBA_Repository *_tao_impl;
+ const CORBA::ULong & bound_;
+ CORBA_IDLType_ptr element_type_;
+ CORBA_SequenceDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_Repository_create_sequence::TAO_ServerRequestInfo_CORBA_Repository_create_sequence (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Repository *tao_impl,
+ const CORBA::ULong & bound,
+ CORBA_IDLType_ptr element_type
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ bound_ (bound),
+ element_type_ (element_type)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Repository_create_sequence::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (2);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= bound_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->element_type_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Repository_create_sequence::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Repository_create_sequence::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Repository_create_sequence::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Repository_create_sequence::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_Repository_create_sequence::result (CORBA_SequenceDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_Repository_create_array : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Repository_create_array (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Repository *tao_impl
+ ,
+ const CORBA::ULong & length,
+ CORBA_IDLType_ptr element_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_ArrayDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_Repository_create_array (const TAO_ServerRequestInfo_CORBA_Repository_create_array &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Repository_create_array &);
+
+private:
+ POA_CORBA_Repository *_tao_impl;
+ const CORBA::ULong & length_;
+ CORBA_IDLType_ptr element_type_;
+ CORBA_ArrayDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_Repository_create_array::TAO_ServerRequestInfo_CORBA_Repository_create_array (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Repository *tao_impl,
+ const CORBA::ULong & length,
+ CORBA_IDLType_ptr element_type
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ length_ (length),
+ element_type_ (element_type)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Repository_create_array::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (2);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= length_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->element_type_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Repository_create_array::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Repository_create_array::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Repository_create_array::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Repository_create_array::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_Repository_create_array::result (CORBA_ArrayDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_Repository_create_fixed : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_Repository_create_fixed (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_Repository *tao_impl
+ ,
+ const CORBA::UShort & digits,
+ const CORBA::Short & scale
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_FixedDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_Repository_create_fixed (const TAO_ServerRequestInfo_CORBA_Repository_create_fixed &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_Repository_create_fixed &);
+
+private:
+ POA_CORBA_Repository *_tao_impl;
+ const CORBA::UShort & digits_;
+ const CORBA::Short & scale_;
+ CORBA_FixedDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_Repository_create_fixed::TAO_ServerRequestInfo_CORBA_Repository_create_fixed (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_Repository *tao_impl,
+ const CORBA::UShort & digits,
+ const CORBA::Short & scale
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ digits_ (digits),
+ scale_ (scale)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_Repository_create_fixed::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (2);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= digits_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= scale_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_Repository_create_fixed::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_Repository_create_fixed::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_Repository_create_fixed::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_Repository_create_fixed::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_Repository_create_fixed::result (CORBA_FixedDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+_TAO_CORBA_Repository_Strategized_Proxy_Broker *_TAO_CORBA_Repository_Strategized_Proxy_Broker::the_TAO_CORBA_Repository_Strategized_Proxy_Broker (void)
+{
+ static _TAO_CORBA_Repository_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+_TAO_CORBA_Repository_Strategized_Proxy_Broker::_TAO_CORBA_Repository_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+_TAO_CORBA_Repository_Strategized_Proxy_Broker::~_TAO_CORBA_Repository_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+_TAO_CORBA_Repository_Proxy_Impl&
+_TAO_CORBA_Repository_Strategized_Proxy_Broker::select_proxy (
+ ::CORBA_Repository *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+_TAO_CORBA_Repository_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ _TAO_CORBA_Repository_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::_TAO_CORBA_Repository_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+_TAO_CORBA_Repository_Proxy_Broker *
+_TAO_CORBA_Repository_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::_TAO_CORBA_Repository_Strategized_Proxy_Broker::the_TAO_CORBA_Repository_Strategized_Proxy_Broker();
+}
+
+int
+_TAO_CORBA_Repository_Proxy_Broker_Factory_Initializer (long)
+{
+ _TAO_CORBA_Repository_Proxy_Broker_Factory_function_pointer =
+ _TAO_CORBA_Repository_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int _TAO_CORBA_Repository_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ _TAO_CORBA_Repository_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, _TAO_CORBA_Repository_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+_TAO_CORBA_Repository_ThruPOA_Proxy_Impl::_TAO_CORBA_Repository_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+CORBA_Contained_ptr _TAO_CORBA_Repository_ThruPOA_Proxy_Impl::lookup_id (
+ CORBA_Object *_collocated_tao_target_,
+ const char * search_id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_Contained_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "lookup_id",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_Repository_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Repository:1.0"
+ )
+ )->lookup_id (
+ search_id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+CORBA::TypeCode_ptr _TAO_CORBA_Repository_ThruPOA_Proxy_Impl::get_canonical_typecode (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::TypeCode_ptr tc
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::TypeCode_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "get_canonical_typecode",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_Repository_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Repository:1.0"
+ )
+ )->get_canonical_typecode (
+ tc
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+CORBA_PrimitiveDef_ptr _TAO_CORBA_Repository_ThruPOA_Proxy_Impl::get_primitive (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::PrimitiveKind kind
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_PrimitiveDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "get_primitive",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_Repository_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Repository:1.0"
+ )
+ )->get_primitive (
+ kind
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+CORBA_StringDef_ptr _TAO_CORBA_Repository_ThruPOA_Proxy_Impl::create_string (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_StringDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "create_string",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_Repository_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Repository:1.0"
+ )
+ )->create_string (
+ bound
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+CORBA_WstringDef_ptr _TAO_CORBA_Repository_ThruPOA_Proxy_Impl::create_wstring (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_WstringDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "create_wstring",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_Repository_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Repository:1.0"
+ )
+ )->create_wstring (
+ bound
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+CORBA_SequenceDef_ptr _TAO_CORBA_Repository_ThruPOA_Proxy_Impl::create_sequence (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::ULong bound,
+ CORBA_IDLType_ptr element_type
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_SequenceDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "create_sequence",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_Repository_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Repository:1.0"
+ )
+ )->create_sequence (
+ bound,
+ element_type
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+CORBA_ArrayDef_ptr _TAO_CORBA_Repository_ThruPOA_Proxy_Impl::create_array (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::ULong length,
+ CORBA_IDLType_ptr element_type
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_ArrayDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "create_array",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_Repository_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Repository:1.0"
+ )
+ )->create_array (
+ length,
+ element_type
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+CORBA_FixedDef_ptr _TAO_CORBA_Repository_ThruPOA_Proxy_Impl::create_fixed (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::UShort digits,
+ CORBA::Short scale
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_FixedDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "create_fixed",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_Repository_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/Repository:1.0"
+ )
+ )->create_fixed (
+ digits,
+ scale
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_CORBA_Repository::POA_CORBA_Repository (void)
+{
+ this->optable_ = &tao_CORBA_Repository_optable;
+}
+
+// copy ctor
+POA_CORBA_Repository::POA_CORBA_Repository (const POA_CORBA_Repository& rhs)
+ : POA_CORBA_Container (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_CORBA_Repository::~POA_CORBA_Repository (void)
+{
+}
+
+void POA_CORBA_Repository::lookup_id_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_Repository *_tao_impl =
+ ACE_static_cast (POA_CORBA_Repository *, _tao_object_reference);
+
+ CORBA_Contained_var _tao_retval;
+ CORBA::String_var search_id;
+ if (!(
+ (_tao_in >> search_id.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Repository_lookup_id ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ search_id.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->lookup_id (
+ search_id.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_Contained_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Repository::get_canonical_typecode_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_Repository *_tao_impl =
+ ACE_static_cast (POA_CORBA_Repository *, _tao_object_reference);
+
+ CORBA::TypeCode_var _tao_retval;
+ CORBA::TypeCode_var tc;
+ if (!(
+ (_tao_in >> tc.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Repository_get_canonical_typecode ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ tc.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->get_canonical_typecode (
+ tc.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA::TypeCode_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Repository::get_primitive_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_Repository *_tao_impl =
+ ACE_static_cast (POA_CORBA_Repository *, _tao_object_reference);
+
+ CORBA_PrimitiveDef_var _tao_retval;
+ CORBA::PrimitiveKind kind;
+ if (!(
+ (_tao_in >> kind)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Repository_get_primitive ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ kind
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->get_primitive (
+ kind
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_PrimitiveDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Repository::create_string_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_Repository *_tao_impl =
+ ACE_static_cast (POA_CORBA_Repository *, _tao_object_reference);
+
+ CORBA_StringDef_var _tao_retval;
+ CORBA::ULong bound;
+ if (!(
+ (_tao_in >> bound)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Repository_create_string ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ bound
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->create_string (
+ bound
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_StringDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Repository::create_wstring_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_Repository *_tao_impl =
+ ACE_static_cast (POA_CORBA_Repository *, _tao_object_reference);
+
+ CORBA_WstringDef_var _tao_retval;
+ CORBA::ULong bound;
+ if (!(
+ (_tao_in >> bound)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Repository_create_wstring ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ bound
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->create_wstring (
+ bound
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_WstringDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Repository::create_sequence_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_Repository *_tao_impl =
+ ACE_static_cast (POA_CORBA_Repository *, _tao_object_reference);
+
+ CORBA_SequenceDef_var _tao_retval;
+ CORBA::ULong bound;
+ CORBA_IDLType_var element_type;
+ if (!(
+ (_tao_in >> bound) &&
+ (_tao_in >> element_type.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Repository_create_sequence ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ bound,
+ element_type.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->create_sequence (
+ bound,
+ element_type.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_SequenceDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Repository::create_array_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_Repository *_tao_impl =
+ ACE_static_cast (POA_CORBA_Repository *, _tao_object_reference);
+
+ CORBA_ArrayDef_var _tao_retval;
+ CORBA::ULong length;
+ CORBA_IDLType_var element_type;
+ if (!(
+ (_tao_in >> length) &&
+ (_tao_in >> element_type.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Repository_create_array ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ length,
+ element_type.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->create_array (
+ length,
+ element_type.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_ArrayDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Repository::create_fixed_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_Repository *_tao_impl =
+ ACE_static_cast (POA_CORBA_Repository *, _tao_object_reference);
+
+ CORBA_FixedDef_var _tao_retval;
+ CORBA::UShort digits;
+ CORBA::Short scale;
+ if (!(
+ (_tao_in >> digits) &&
+ (_tao_in >> scale)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_Repository_create_fixed ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ digits,
+ scale
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->create_fixed (
+ digits,
+ scale
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_FixedDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_Repository::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_Repository *_tao_impl = (POA_CORBA_Repository *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_Repository::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Repository *_tao_impl = (POA_CORBA_Repository *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_Repository::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Repository *_tao_impl = (POA_CORBA_Repository *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_CORBA_Repository::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Repository:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Container:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_CORBA_Repository::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Repository:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Repository_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Container:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Container_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Object:1.0") == 0)
+ return ACE_static_cast(PortableServer::Servant, this);
+ return 0;
+}
+
+void POA_CORBA_Repository::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_CORBA_Repository::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/CORBA/Repository:1.0";
+}
+
+CORBA_Repository*
+POA_CORBA_Repository::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::CORBA_Repository::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_CORBA_ModuleDef_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 22:45:26 */
+/* C++ code produced by gperf version 2.8 (ACE version) */
+/* Command-line: gperf -m -M -J -c -C -D -E -T -f 0 -F 0 -a -o -t -p -K opname_ -L C++ -Z TAO_CORBA_ModuleDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_CORBA_ModuleDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 20,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 10,
+ 64, 0, 20, 0, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 20, 0, 5,
+ 64, 10, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 15, 30, 64, 64, 64, 10, 5, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64,
+#else
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 20, 64, 10, 64, 0,
+ 20, 0, 64, 64, 64, 64, 64, 64, 20, 0,
+ 5, 64, 10, 64, 64, 15, 30, 64, 64, 64,
+ 10, 5, 64, 64, 64, 64, 64, 64,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_CORBA_ModuleDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 33,
+ MIN_WORD_LENGTH = 4,
+ MAX_WORD_LENGTH = 26,
+ MIN_HASH_VALUE = 4,
+ MAX_HASH_VALUE = 63,
+ HASH_VALUE_RANGE = 60,
+ DUPLICATES = 5,
+ WORDLIST_SIZE = 37
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},
+ {"move", &POA_CORBA_ModuleDef::move_skel},
+ {"create_enum", &POA_CORBA_ModuleDef::create_enum_skel},
+ {"create_value", &POA_CORBA_ModuleDef::create_value_skel},
+ {"create_module", &POA_CORBA_ModuleDef::create_module_skel},
+ {"create_native", &POA_CORBA_ModuleDef::create_native_skel},
+ {"create_interface", &POA_CORBA_ModuleDef::create_interface_skel},
+ {"create_union", &POA_CORBA_ModuleDef::create_union_skel},
+ {"create_exception", &POA_CORBA_ModuleDef::create_exception_skel},
+ {"create_local_interface", &POA_CORBA_ModuleDef::create_local_interface_skel},
+ {"contents", &POA_CORBA_ModuleDef::contents_skel},
+ {"create_abstract_interface", &POA_CORBA_ModuleDef::create_abstract_interface_skel},
+ {"create_value_box", &POA_CORBA_ModuleDef::create_value_box_skel},
+ {"create_alias", &POA_CORBA_ModuleDef::create_alias_skel},
+ {"describe", &POA_CORBA_ModuleDef::describe_skel},
+ {"_get_name", &POA_CORBA_ModuleDef::_get_name_skel},
+ {"_set_name", &POA_CORBA_ModuleDef::_set_name_skel},
+ {"_interface", &POA_CORBA_ModuleDef::_interface_skel},
+ {"lookup_name", &POA_CORBA_ModuleDef::lookup_name_skel},
+ {"destroy", &POA_CORBA_ModuleDef::destroy_skel},
+ {"_is_a", &POA_CORBA_ModuleDef::_is_a_skel},
+ {"lookup", &POA_CORBA_ModuleDef::lookup_skel},
+ {"_get_version", &POA_CORBA_ModuleDef::_get_version_skel},
+ {"_set_version", &POA_CORBA_ModuleDef::_set_version_skel},
+ {"_get_absolute_name", &POA_CORBA_ModuleDef::_get_absolute_name_skel},
+ {"_get_defined_in", &POA_CORBA_ModuleDef::_get_defined_in_skel},
+ {"create_struct", &POA_CORBA_ModuleDef::create_struct_skel},
+ {"create_constant", &POA_CORBA_ModuleDef::create_constant_skel},
+ {"_get_id", &POA_CORBA_ModuleDef::_get_id_skel},
+ {"_set_id", &POA_CORBA_ModuleDef::_set_id_skel},
+ {"_get_containing_repository", &POA_CORBA_ModuleDef::_get_containing_repository_skel},
+ {"describe_contents", &POA_CORBA_ModuleDef::describe_contents_skel},
+ {"_get_def_kind", &POA_CORBA_ModuleDef::_get_def_kind_skel},
+ {"_non_existent", &POA_CORBA_ModuleDef::_non_existent_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -1, -1, -1, -1, 4, -1, -1, -1, -1, -7, -2, 5, 6, -67,
+ -1, -1, 9, 10, -1, -18, -2, 11, 12, 13, -1, 14, 15, 16,
+ 17, -73, 20, 21, 22, -25, -2, 23, 24, -67, 27, -1, 28, -31,
+ -2, 29, -1, 30, -1, -69, -1, -1, -1, 33, 34, 35, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 36,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < WORDLIST_SIZE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 22:45:26 */
+static TAO_CORBA_ModuleDef_Perfect_Hash_OpTable tao_CORBA_ModuleDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+_TAO_CORBA_ModuleDef_Strategized_Proxy_Broker *_TAO_CORBA_ModuleDef_Strategized_Proxy_Broker::the_TAO_CORBA_ModuleDef_Strategized_Proxy_Broker (void)
+{
+ static _TAO_CORBA_ModuleDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+_TAO_CORBA_ModuleDef_Strategized_Proxy_Broker::_TAO_CORBA_ModuleDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+_TAO_CORBA_ModuleDef_Strategized_Proxy_Broker::~_TAO_CORBA_ModuleDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+_TAO_CORBA_ModuleDef_Proxy_Impl&
+_TAO_CORBA_ModuleDef_Strategized_Proxy_Broker::select_proxy (
+ ::CORBA_ModuleDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+_TAO_CORBA_ModuleDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ _TAO_CORBA_ModuleDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::_TAO_CORBA_ModuleDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+_TAO_CORBA_ModuleDef_Proxy_Broker *
+_TAO_CORBA_ModuleDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::_TAO_CORBA_ModuleDef_Strategized_Proxy_Broker::the_TAO_CORBA_ModuleDef_Strategized_Proxy_Broker();
+}
+
+int
+_TAO_CORBA_ModuleDef_Proxy_Broker_Factory_Initializer (long)
+{
+ _TAO_CORBA_ModuleDef_Proxy_Broker_Factory_function_pointer =
+ _TAO_CORBA_ModuleDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int _TAO_CORBA_ModuleDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ _TAO_CORBA_ModuleDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, _TAO_CORBA_ModuleDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+_TAO_CORBA_ModuleDef_ThruPOA_Proxy_Impl::_TAO_CORBA_ModuleDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_CORBA_ModuleDef::POA_CORBA_ModuleDef (void)
+{
+ this->optable_ = &tao_CORBA_ModuleDef_optable;
+}
+
+// copy ctor
+POA_CORBA_ModuleDef::POA_CORBA_ModuleDef (const POA_CORBA_ModuleDef& rhs)
+ : POA_CORBA_Container (rhs),
+ POA_CORBA_Contained (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_CORBA_ModuleDef::~POA_CORBA_ModuleDef (void)
+{
+}
+
+void POA_CORBA_ModuleDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_ModuleDef *_tao_impl = (POA_CORBA_ModuleDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_ModuleDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ModuleDef *_tao_impl = (POA_CORBA_ModuleDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_ModuleDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ModuleDef *_tao_impl = (POA_CORBA_ModuleDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_CORBA_ModuleDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/ModuleDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Container:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Contained:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_CORBA_ModuleDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/ModuleDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_ModuleDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Container:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Container_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Contained:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Contained_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Object:1.0") == 0)
+ return ACE_static_cast(PortableServer::Servant, this);
+ return 0;
+}
+
+void POA_CORBA_ModuleDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_CORBA_ModuleDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/CORBA/ModuleDef:1.0";
+}
+
+CORBA_ModuleDef*
+POA_CORBA_ModuleDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::CORBA_ModuleDef::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_CORBA_ConstantDef_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 22:45:27 */
+/* C++ code produced by gperf version 2.8 (ACE version) */
+/* Command-line: gperf -m -M -J -c -C -D -E -T -f 0 -F 0 -a -o -t -p -K opname_ -L C++ -Z TAO_CORBA_ConstantDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_CORBA_ConstantDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 0, 0, 10, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 0, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 15, 37, 37, 37, 37, 10, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37,
+#else
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 0, 37, 0, 37, 37,
+ 0, 0, 10, 37, 37, 37, 37, 37, 37, 0,
+ 0, 37, 37, 37, 37, 37, 15, 37, 37, 37,
+ 37, 10, 37, 37, 37, 37, 37, 37,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_CORBA_ConstantDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 21,
+ MIN_WORD_LENGTH = 4,
+ MAX_WORD_LENGTH = 26,
+ MIN_HASH_VALUE = 4,
+ MAX_HASH_VALUE = 36,
+ HASH_VALUE_RANGE = 33,
+ DUPLICATES = 8,
+ WORDLIST_SIZE = 25
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},
+ {"move", &POA_CORBA_ConstantDef::move_skel},
+ {"_is_a", &POA_CORBA_ConstantDef::_is_a_skel},
+ {"_get_id", &POA_CORBA_ConstantDef::_get_id_skel},
+ {"_set_id", &POA_CORBA_ConstantDef::_set_id_skel},
+ {"describe", &POA_CORBA_ConstantDef::describe_skel},
+ {"_get_type", &POA_CORBA_ConstantDef::_get_type_skel},
+ {"_set_name", &POA_CORBA_ConstantDef::_set_name_skel},
+ {"_get_name", &POA_CORBA_ConstantDef::_get_name_skel},
+ {"_get_value", &POA_CORBA_ConstantDef::_get_value_skel},
+ {"_interface", &POA_CORBA_ConstantDef::_interface_skel},
+ {"_set_value", &POA_CORBA_ConstantDef::_set_value_skel},
+ {"_get_version", &POA_CORBA_ConstantDef::_get_version_skel},
+ {"_set_version", &POA_CORBA_ConstantDef::_set_version_skel},
+ {"_get_def_kind", &POA_CORBA_ConstantDef::_get_def_kind_skel},
+ {"_get_defined_in", &POA_CORBA_ConstantDef::_get_defined_in_skel},
+ {"destroy", &POA_CORBA_ConstantDef::destroy_skel},
+ {"_get_absolute_name", &POA_CORBA_ConstantDef::_get_absolute_name_skel},
+ {"_get_type_def", &POA_CORBA_ConstantDef::_get_type_def_skel},
+ {"_set_type_def", &POA_CORBA_ConstantDef::_set_type_def_skel},
+ {"_non_existent", &POA_CORBA_ConstantDef::_non_existent_skel},
+ {"_get_containing_repository", &POA_CORBA_ConstantDef::_get_containing_repository_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -12, -3, -15, -2, 4, 5, -1, 53, 8, 46, -46, -1, -46, 17,
+ -1, 18, -1, 19, 20, -9, -3, -21, -2, -38, -6, -2, -1, -1,
+ 23, -1, -1, -1, -1, -1, -1, -1, 24,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < WORDLIST_SIZE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 22:45:27 */
+static TAO_CORBA_ConstantDef_Perfect_Hash_OpTable tao_CORBA_ConstantDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+class TAO_ServerRequestInfo_CORBA_ConstantDef_type_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ConstantDef_type_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ConstantDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA::TypeCode_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_ConstantDef_type_get (const TAO_ServerRequestInfo_CORBA_ConstantDef_type_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ConstantDef_type_get &);
+
+private:
+ POA_CORBA_ConstantDef *_tao_impl;
+ CORBA::TypeCode_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_ConstantDef_type_get::TAO_ServerRequestInfo_CORBA_ConstantDef_type_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ConstantDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ConstantDef_type_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ConstantDef_type_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ConstantDef_type_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ConstantDef_type_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ConstantDef_type_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_ConstantDef_type_get::result (CORBA::TypeCode_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_ConstantDef_type_def_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ConstantDef_type_def_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ConstantDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_IDLType_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_ConstantDef_type_def_get (const TAO_ServerRequestInfo_CORBA_ConstantDef_type_def_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ConstantDef_type_def_get &);
+
+private:
+ POA_CORBA_ConstantDef *_tao_impl;
+ CORBA_IDLType_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_ConstantDef_type_def_get::TAO_ServerRequestInfo_CORBA_ConstantDef_type_def_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ConstantDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ConstantDef_type_def_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ConstantDef_type_def_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ConstantDef_type_def_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ConstantDef_type_def_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ConstantDef_type_def_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_ConstantDef_type_def_get::result (CORBA_IDLType_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_ConstantDef_type_def_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ConstantDef_type_def_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ConstantDef *tao_impl
+ ,
+ CORBA_IDLType_ptr type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_ConstantDef_type_def_set (const TAO_ServerRequestInfo_CORBA_ConstantDef_type_def_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ConstantDef_type_def_set &);
+
+private:
+ POA_CORBA_ConstantDef *_tao_impl;
+ CORBA_IDLType_ptr type_def_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_ConstantDef_type_def_set::TAO_ServerRequestInfo_CORBA_ConstantDef_type_def_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ConstantDef *tao_impl,
+ CORBA_IDLType_ptr type_def
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ type_def_ (type_def)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ConstantDef_type_def_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= this->type_def_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ConstantDef_type_def_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ConstantDef_type_def_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ConstantDef_type_def_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ConstantDef_type_def_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+class TAO_ServerRequestInfo_CORBA_ConstantDef_value_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ConstantDef_value_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ConstantDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA::Any * result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_ConstantDef_value_get (const TAO_ServerRequestInfo_CORBA_ConstantDef_value_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ConstantDef_value_get &);
+
+private:
+ POA_CORBA_ConstantDef *_tao_impl;
+ CORBA::Any * _result;
+};
+
+TAO_ServerRequestInfo_CORBA_ConstantDef_value_get::TAO_ServerRequestInfo_CORBA_ConstantDef_value_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ConstantDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ConstantDef_value_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ConstantDef_value_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ConstantDef_value_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ConstantDef_value_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ConstantDef_value_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_ConstantDef_value_get::result (CORBA::Any * result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_ConstantDef_value_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ConstantDef_value_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ConstantDef *tao_impl
+ ,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_ConstantDef_value_set (const TAO_ServerRequestInfo_CORBA_ConstantDef_value_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ConstantDef_value_set &);
+
+private:
+ POA_CORBA_ConstantDef *_tao_impl;
+ const CORBA::Any & value_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_ConstantDef_value_set::TAO_ServerRequestInfo_CORBA_ConstantDef_value_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ConstantDef *tao_impl,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ value_ (value)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ConstantDef_value_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= value_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ConstantDef_value_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ConstantDef_value_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ConstantDef_value_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ConstantDef_value_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+_TAO_CORBA_ConstantDef_Strategized_Proxy_Broker *_TAO_CORBA_ConstantDef_Strategized_Proxy_Broker::the_TAO_CORBA_ConstantDef_Strategized_Proxy_Broker (void)
+{
+ static _TAO_CORBA_ConstantDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+_TAO_CORBA_ConstantDef_Strategized_Proxy_Broker::_TAO_CORBA_ConstantDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+_TAO_CORBA_ConstantDef_Strategized_Proxy_Broker::~_TAO_CORBA_ConstantDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+_TAO_CORBA_ConstantDef_Proxy_Impl&
+_TAO_CORBA_ConstantDef_Strategized_Proxy_Broker::select_proxy (
+ ::CORBA_ConstantDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+_TAO_CORBA_ConstantDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ _TAO_CORBA_ConstantDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::_TAO_CORBA_ConstantDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+_TAO_CORBA_ConstantDef_Proxy_Broker *
+_TAO_CORBA_ConstantDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::_TAO_CORBA_ConstantDef_Strategized_Proxy_Broker::the_TAO_CORBA_ConstantDef_Strategized_Proxy_Broker();
+}
+
+int
+_TAO_CORBA_ConstantDef_Proxy_Broker_Factory_Initializer (long)
+{
+ _TAO_CORBA_ConstantDef_Proxy_Broker_Factory_function_pointer =
+ _TAO_CORBA_ConstantDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int _TAO_CORBA_ConstantDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ _TAO_CORBA_ConstantDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, _TAO_CORBA_ConstantDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+_TAO_CORBA_ConstantDef_ThruPOA_Proxy_Impl::_TAO_CORBA_ConstantDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+CORBA::TypeCode_ptr _TAO_CORBA_ConstantDef_ThruPOA_Proxy_Impl::type (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::TypeCode_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "type",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_ConstantDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ConstantDef:1.0"
+ )
+ )->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+CORBA_IDLType_ptr _TAO_CORBA_ConstantDef_ThruPOA_Proxy_Impl::type_def (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_IDLType_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "type_def",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_ConstantDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ConstantDef:1.0"
+ )
+ )->type_def (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_ConstantDef_ThruPOA_Proxy_Impl::type_def (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA_IDLType_ptr type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "type_def",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_ConstantDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ConstantDef:1.0"
+ )
+ )->type_def (
+ type_def
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+CORBA::Any * _TAO_CORBA_ConstantDef_ThruPOA_Proxy_Impl::value (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::Any_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "value",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_ConstantDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ConstantDef:1.0"
+ )
+ )->value (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_ConstantDef_ThruPOA_Proxy_Impl::value (
+ CORBA_Object *_collocated_tao_target_,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "value",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_ConstantDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ConstantDef:1.0"
+ )
+ )->value (
+ value
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_CORBA_ConstantDef::POA_CORBA_ConstantDef (void)
+{
+ this->optable_ = &tao_CORBA_ConstantDef_optable;
+}
+
+// copy ctor
+POA_CORBA_ConstantDef::POA_CORBA_ConstantDef (const POA_CORBA_ConstantDef& rhs)
+ : POA_CORBA_Contained (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_CORBA_ConstantDef::~POA_CORBA_ConstantDef (void)
+{
+}
+
+void POA_CORBA_ConstantDef::_get_type_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ConstantDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ConstantDef *, _tao_object_reference);
+
+ CORBA::TypeCode_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ConstantDef_type_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA::TypeCode_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ConstantDef::_get_type_def_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ConstantDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ConstantDef *, _tao_object_reference);
+
+ CORBA_IDLType_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ConstantDef_type_def_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->type_def (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_IDLType_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ConstantDef::_set_type_def_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_ConstantDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ConstantDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA_IDLType_var type_def;
+ if (!(
+ (_tao_in >> type_def.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ConstantDef_type_def_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ type_def.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->type_def (
+ type_def.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ConstantDef::_get_value_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ConstantDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ConstantDef *, _tao_object_reference);
+
+ CORBA::Any_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ConstantDef_value_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->value (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA::Any * _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ConstantDef::_set_value_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_ConstantDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ConstantDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA::Any value;
+ if (!(
+ (_tao_in >> value)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ConstantDef_value_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ value
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->value (
+ value
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ConstantDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_ConstantDef *_tao_impl = (POA_CORBA_ConstantDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_ConstantDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ConstantDef *_tao_impl = (POA_CORBA_ConstantDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_ConstantDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ConstantDef *_tao_impl = (POA_CORBA_ConstantDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_CORBA_ConstantDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/ConstantDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Contained:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_CORBA_ConstantDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/ConstantDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_ConstantDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Contained:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Contained_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Object:1.0") == 0)
+ return ACE_static_cast(PortableServer::Servant, this);
+ return 0;
+}
+
+void POA_CORBA_ConstantDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_CORBA_ConstantDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/CORBA/ConstantDef:1.0";
+}
+
+CORBA_ConstantDef*
+POA_CORBA_ConstantDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::CORBA_ConstantDef::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_CORBA_StructDef_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 22:45:28 */
+/* C++ code produced by gperf version 2.8 (ACE version) */
+/* Command-line: gperf -m -M -J -c -C -D -E -T -f 0 -F 0 -a -o -t -p -K opname_ -L C++ -Z TAO_CORBA_StructDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_CORBA_StructDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 0,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 0,
+ 61, 25, 8, 0, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 0, 15, 5,
+ 61, 0, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 20, 20, 61, 61, 61, 15, 10, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61,
+#else
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 0, 61, 0, 61, 25,
+ 8, 0, 61, 61, 61, 61, 61, 61, 0, 15,
+ 5, 61, 0, 61, 61, 20, 20, 61, 61, 61,
+ 15, 10, 61, 61, 61, 61, 61, 61,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_CORBA_StructDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 36,
+ MIN_WORD_LENGTH = 4,
+ MAX_WORD_LENGTH = 26,
+ MIN_HASH_VALUE = 5,
+ MAX_HASH_VALUE = 60,
+ HASH_VALUE_RANGE = 56,
+ DUPLICATES = 7,
+ WORDLIST_SIZE = 41
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},{"",0},
+ {"_is_a", &POA_CORBA_StructDef::_is_a_skel},
+ {"lookup", &POA_CORBA_StructDef::lookup_skel},
+ {"_get_name", &POA_CORBA_StructDef::_get_name_skel},
+ {"_get_type", &POA_CORBA_StructDef::_get_type_skel},
+ {"_set_name", &POA_CORBA_StructDef::_set_name_skel},
+ {"_interface", &POA_CORBA_StructDef::_interface_skel},
+ {"lookup_name", &POA_CORBA_StructDef::lookup_name_skel},
+ {"_get_id", &POA_CORBA_StructDef::_get_id_skel},
+ {"_set_id", &POA_CORBA_StructDef::_set_id_skel},
+ {"describe", &POA_CORBA_StructDef::describe_skel},
+ {"_get_version", &POA_CORBA_StructDef::_get_version_skel},
+ {"_set_version", &POA_CORBA_StructDef::_set_version_skel},
+ {"_get_absolute_name", &POA_CORBA_StructDef::_get_absolute_name_skel},
+ {"move", &POA_CORBA_StructDef::move_skel},
+ {"_get_defined_in", &POA_CORBA_StructDef::_get_defined_in_skel},
+ {"_get_def_kind", &POA_CORBA_StructDef::_get_def_kind_skel},
+ {"destroy", &POA_CORBA_StructDef::destroy_skel},
+ {"_get_members", &POA_CORBA_StructDef::_get_members_skel},
+ {"_set_members", &POA_CORBA_StructDef::_set_members_skel},
+ {"_non_existent", &POA_CORBA_StructDef::_non_existent_skel},
+ {"_get_containing_repository", &POA_CORBA_StructDef::_get_containing_repository_skel},
+ {"create_value", &POA_CORBA_StructDef::create_value_skel},
+ {"create_module", &POA_CORBA_StructDef::create_module_skel},
+ {"create_native", &POA_CORBA_StructDef::create_native_skel},
+ {"create_interface", &POA_CORBA_StructDef::create_interface_skel},
+ {"create_union", &POA_CORBA_StructDef::create_union_skel},
+ {"describe_contents", &POA_CORBA_StructDef::describe_contents_skel},
+ {"create_exception", &POA_CORBA_StructDef::create_exception_skel},
+ {"create_local_interface", &POA_CORBA_StructDef::create_local_interface_skel},
+ {"create_abstract_interface", &POA_CORBA_StructDef::create_abstract_interface_skel},
+ {"create_enum", &POA_CORBA_StructDef::create_enum_skel},
+ {"contents", &POA_CORBA_StructDef::contents_skel},
+ {"create_value_box", &POA_CORBA_StructDef::create_value_box_skel},
+ {"create_alias", &POA_CORBA_StructDef::create_alias_skel},
+ {"create_struct", &POA_CORBA_StructDef::create_struct_skel},
+ {"create_constant", &POA_CORBA_StructDef::create_constant_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -1, -1, -1, -7, -3, 5, 6, -12, -2, -66, 10, 11, -1, -15,
+ -2, -68, 14, -64, 17, 18, 19, 20, -1, -1, -1, 21, -1, -1,
+ -1, -1, -22, -2, -62, 24, -27, -2, 25, 26, -64, -1, -1, 29,
+ 30, -1, -1, 31, 32, 33, -1, -1, 34, 35, -1, 36, -1, -1,
+ 37, 38, 39, -1, 40,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < WORDLIST_SIZE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 22:45:28 */
+static TAO_CORBA_StructDef_Perfect_Hash_OpTable tao_CORBA_StructDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+class TAO_ServerRequestInfo_CORBA_StructDef_members_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_StructDef_members_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_StructDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_StructMemberSeq * result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_StructDef_members_get (const TAO_ServerRequestInfo_CORBA_StructDef_members_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_StructDef_members_get &);
+
+private:
+ POA_CORBA_StructDef *_tao_impl;
+ CORBA_StructMemberSeq * _result;
+};
+
+TAO_ServerRequestInfo_CORBA_StructDef_members_get::TAO_ServerRequestInfo_CORBA_StructDef_members_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_StructDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_StructDef_members_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_StructDef_members_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_StructDef_members_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_StructDef_members_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_StructDef_members_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_StructDef_members_get::result (CORBA_StructMemberSeq * result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_StructDef_members_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_StructDef_members_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_StructDef *tao_impl
+ ,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_StructDef_members_set (const TAO_ServerRequestInfo_CORBA_StructDef_members_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_StructDef_members_set &);
+
+private:
+ POA_CORBA_StructDef *_tao_impl;
+ const CORBA_StructMemberSeq & members_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_StructDef_members_set::TAO_ServerRequestInfo_CORBA_StructDef_members_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_StructDef *tao_impl,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ members_ (members)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_StructDef_members_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= this->members_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_StructDef_members_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_StructDef_members_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_StructDef_members_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_StructDef_members_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+_TAO_CORBA_StructDef_Strategized_Proxy_Broker *_TAO_CORBA_StructDef_Strategized_Proxy_Broker::the_TAO_CORBA_StructDef_Strategized_Proxy_Broker (void)
+{
+ static _TAO_CORBA_StructDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+_TAO_CORBA_StructDef_Strategized_Proxy_Broker::_TAO_CORBA_StructDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+_TAO_CORBA_StructDef_Strategized_Proxy_Broker::~_TAO_CORBA_StructDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+_TAO_CORBA_StructDef_Proxy_Impl&
+_TAO_CORBA_StructDef_Strategized_Proxy_Broker::select_proxy (
+ ::CORBA_StructDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+_TAO_CORBA_StructDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ _TAO_CORBA_StructDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::_TAO_CORBA_StructDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+_TAO_CORBA_StructDef_Proxy_Broker *
+_TAO_CORBA_StructDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::_TAO_CORBA_StructDef_Strategized_Proxy_Broker::the_TAO_CORBA_StructDef_Strategized_Proxy_Broker();
+}
+
+int
+_TAO_CORBA_StructDef_Proxy_Broker_Factory_Initializer (long)
+{
+ _TAO_CORBA_StructDef_Proxy_Broker_Factory_function_pointer =
+ _TAO_CORBA_StructDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int _TAO_CORBA_StructDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ _TAO_CORBA_StructDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, _TAO_CORBA_StructDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+_TAO_CORBA_StructDef_ThruPOA_Proxy_Impl::_TAO_CORBA_StructDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+CORBA_StructMemberSeq * _TAO_CORBA_StructDef_ThruPOA_Proxy_Impl::members (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_StructMemberSeq_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "members",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_StructDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/StructDef:1.0"
+ )
+ )->members (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_StructDef_ThruPOA_Proxy_Impl::members (
+ CORBA_Object *_collocated_tao_target_,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "members",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_StructDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/StructDef:1.0"
+ )
+ )->members (
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_CORBA_StructDef::POA_CORBA_StructDef (void)
+{
+ this->optable_ = &tao_CORBA_StructDef_optable;
+}
+
+// copy ctor
+POA_CORBA_StructDef::POA_CORBA_StructDef (const POA_CORBA_StructDef& rhs)
+ : POA_CORBA_TypedefDef (rhs),
+ POA_CORBA_Container (rhs),
+ POA_CORBA_Contained (rhs),
+ POA_CORBA_IDLType (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_CORBA_StructDef::~POA_CORBA_StructDef (void)
+{
+}
+
+void POA_CORBA_StructDef::_get_members_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_StructDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_StructDef *, _tao_object_reference);
+
+ CORBA_StructMemberSeq_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_StructDef_members_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->members (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_StructMemberSeq * _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_StructDef::_set_members_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_StructDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_StructDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA_StructMemberSeq members;
+ if (!(
+ (_tao_in >> members)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_StructDef_members_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->members (
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_StructDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_StructDef *_tao_impl = (POA_CORBA_StructDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_StructDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_StructDef *_tao_impl = (POA_CORBA_StructDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_StructDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_StructDef *_tao_impl = (POA_CORBA_StructDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_CORBA_StructDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/StructDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/TypedefDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Container:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Contained:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IDLType:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_CORBA_StructDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/StructDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_StructDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/TypedefDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_TypedefDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Container:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Container_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Contained:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Contained_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IDLType:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IDLType_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Object:1.0") == 0)
+ return ACE_static_cast(PortableServer::Servant, this);
+ return 0;
+}
+
+void POA_CORBA_StructDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_CORBA_StructDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/CORBA/StructDef:1.0";
+}
+
+CORBA_StructDef*
+POA_CORBA_StructDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::CORBA_StructDef::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_CORBA_UnionDef_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 22:45:29 */
+/* C++ code produced by gperf version 2.8 (ACE version) */
+/* Command-line: gperf -m -M -J -c -C -D -E -T -f 0 -F 0 -a -o -t -p -K opname_ -L C++ -Z TAO_CORBA_UnionDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_CORBA_UnionDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 0,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 0,
+ 61, 25, 8, 0, 0, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 0, 15, 5,
+ 61, 0, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 20, 20, 61, 61, 61, 15, 10, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61,
+#else
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 0, 61, 0, 61, 25,
+ 8, 0, 0, 61, 61, 61, 61, 61, 0, 15,
+ 5, 61, 0, 61, 61, 20, 20, 61, 61, 61,
+ 15, 10, 61, 61, 61, 61, 61, 61,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_CORBA_UnionDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 39,
+ MIN_WORD_LENGTH = 4,
+ MAX_WORD_LENGTH = 27,
+ MIN_HASH_VALUE = 5,
+ MAX_HASH_VALUE = 60,
+ HASH_VALUE_RANGE = 56,
+ DUPLICATES = 8,
+ WORDLIST_SIZE = 44
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},{"",0},
+ {"_is_a", &POA_CORBA_UnionDef::_is_a_skel},
+ {"lookup", &POA_CORBA_UnionDef::lookup_skel},
+ {"_get_name", &POA_CORBA_UnionDef::_get_name_skel},
+ {"_get_type", &POA_CORBA_UnionDef::_get_type_skel},
+ {"_set_name", &POA_CORBA_UnionDef::_set_name_skel},
+ {"_interface", &POA_CORBA_UnionDef::_interface_skel},
+ {"lookup_name", &POA_CORBA_UnionDef::lookup_name_skel},
+ {"_get_id", &POA_CORBA_UnionDef::_get_id_skel},
+ {"_set_id", &POA_CORBA_UnionDef::_set_id_skel},
+ {"describe", &POA_CORBA_UnionDef::describe_skel},
+ {"_get_version", &POA_CORBA_UnionDef::_get_version_skel},
+ {"_set_version", &POA_CORBA_UnionDef::_set_version_skel},
+ {"_get_absolute_name", &POA_CORBA_UnionDef::_get_absolute_name_skel},
+ {"move", &POA_CORBA_UnionDef::move_skel},
+ {"_get_defined_in", &POA_CORBA_UnionDef::_get_defined_in_skel},
+ {"_get_def_kind", &POA_CORBA_UnionDef::_get_def_kind_skel},
+ {"_get_discriminator_type", &POA_CORBA_UnionDef::_get_discriminator_type_skel},
+ {"destroy", &POA_CORBA_UnionDef::destroy_skel},
+ {"_get_discriminator_type_def", &POA_CORBA_UnionDef::_get_discriminator_type_def_skel},
+ {"_set_discriminator_type_def", &POA_CORBA_UnionDef::_set_discriminator_type_def_skel},
+ {"_get_members", &POA_CORBA_UnionDef::_get_members_skel},
+ {"_set_members", &POA_CORBA_UnionDef::_set_members_skel},
+ {"_non_existent", &POA_CORBA_UnionDef::_non_existent_skel},
+ {"_get_containing_repository", &POA_CORBA_UnionDef::_get_containing_repository_skel},
+ {"create_value", &POA_CORBA_UnionDef::create_value_skel},
+ {"create_module", &POA_CORBA_UnionDef::create_module_skel},
+ {"create_native", &POA_CORBA_UnionDef::create_native_skel},
+ {"create_interface", &POA_CORBA_UnionDef::create_interface_skel},
+ {"create_union", &POA_CORBA_UnionDef::create_union_skel},
+ {"describe_contents", &POA_CORBA_UnionDef::describe_contents_skel},
+ {"create_exception", &POA_CORBA_UnionDef::create_exception_skel},
+ {"create_local_interface", &POA_CORBA_UnionDef::create_local_interface_skel},
+ {"create_abstract_interface", &POA_CORBA_UnionDef::create_abstract_interface_skel},
+ {"create_enum", &POA_CORBA_UnionDef::create_enum_skel},
+ {"contents", &POA_CORBA_UnionDef::contents_skel},
+ {"create_value_box", &POA_CORBA_UnionDef::create_value_box_skel},
+ {"create_alias", &POA_CORBA_UnionDef::create_alias_skel},
+ {"create_struct", &POA_CORBA_UnionDef::create_struct_skel},
+ {"create_constant", &POA_CORBA_UnionDef::create_constant_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -1, -7, -3, -12, -2, 5, 6, -15, -2, -68, 10, 11, -1, -23,
+ -2, -72, 14, -70, 17, 18, 19, 20, -1, 21, -1, 22, -1, -74,
+ -1, -1, -25, -2, -62, 27, -30, -2, 28, 29, -64, -1, -1, 32,
+ 33, -1, -1, 34, 35, 36, -1, -1, 37, 38, -1, 39, -1, -1,
+ 40, 41, 42, -1, 43,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < WORDLIST_SIZE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 22:45:29 */
+static TAO_CORBA_UnionDef_Perfect_Hash_OpTable tao_CORBA_UnionDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+class TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_UnionDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA::TypeCode_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_get (const TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_get &);
+
+private:
+ POA_CORBA_UnionDef *_tao_impl;
+ CORBA::TypeCode_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_get::TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_UnionDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_get::result (CORBA::TypeCode_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_def_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_def_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_UnionDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_IDLType_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_def_get (const TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_def_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_def_get &);
+
+private:
+ POA_CORBA_UnionDef *_tao_impl;
+ CORBA_IDLType_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_def_get::TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_def_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_UnionDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_def_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_def_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_def_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_def_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_def_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_def_get::result (CORBA_IDLType_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_def_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_def_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_UnionDef *tao_impl
+ ,
+ CORBA_IDLType_ptr discriminator_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_def_set (const TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_def_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_def_set &);
+
+private:
+ POA_CORBA_UnionDef *_tao_impl;
+ CORBA_IDLType_ptr discriminator_type_def_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_def_set::TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_def_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_UnionDef *tao_impl,
+ CORBA_IDLType_ptr discriminator_type_def
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ discriminator_type_def_ (discriminator_type_def)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_def_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= this->discriminator_type_def_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_def_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_def_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_def_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_def_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+class TAO_ServerRequestInfo_CORBA_UnionDef_members_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_UnionDef_members_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_UnionDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_UnionMemberSeq * result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_UnionDef_members_get (const TAO_ServerRequestInfo_CORBA_UnionDef_members_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_UnionDef_members_get &);
+
+private:
+ POA_CORBA_UnionDef *_tao_impl;
+ CORBA_UnionMemberSeq * _result;
+};
+
+TAO_ServerRequestInfo_CORBA_UnionDef_members_get::TAO_ServerRequestInfo_CORBA_UnionDef_members_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_UnionDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_UnionDef_members_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_UnionDef_members_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_UnionDef_members_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_UnionDef_members_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_UnionDef_members_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_UnionDef_members_get::result (CORBA_UnionMemberSeq * result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_UnionDef_members_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_UnionDef_members_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_UnionDef *tao_impl
+ ,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_UnionDef_members_set (const TAO_ServerRequestInfo_CORBA_UnionDef_members_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_UnionDef_members_set &);
+
+private:
+ POA_CORBA_UnionDef *_tao_impl;
+ const CORBA_UnionMemberSeq & members_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_UnionDef_members_set::TAO_ServerRequestInfo_CORBA_UnionDef_members_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_UnionDef *tao_impl,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ members_ (members)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_UnionDef_members_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= this->members_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_UnionDef_members_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_UnionDef_members_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_UnionDef_members_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_UnionDef_members_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+_TAO_CORBA_UnionDef_Strategized_Proxy_Broker *_TAO_CORBA_UnionDef_Strategized_Proxy_Broker::the_TAO_CORBA_UnionDef_Strategized_Proxy_Broker (void)
+{
+ static _TAO_CORBA_UnionDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+_TAO_CORBA_UnionDef_Strategized_Proxy_Broker::_TAO_CORBA_UnionDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+_TAO_CORBA_UnionDef_Strategized_Proxy_Broker::~_TAO_CORBA_UnionDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+_TAO_CORBA_UnionDef_Proxy_Impl&
+_TAO_CORBA_UnionDef_Strategized_Proxy_Broker::select_proxy (
+ ::CORBA_UnionDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+_TAO_CORBA_UnionDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ _TAO_CORBA_UnionDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::_TAO_CORBA_UnionDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+_TAO_CORBA_UnionDef_Proxy_Broker *
+_TAO_CORBA_UnionDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::_TAO_CORBA_UnionDef_Strategized_Proxy_Broker::the_TAO_CORBA_UnionDef_Strategized_Proxy_Broker();
+}
+
+int
+_TAO_CORBA_UnionDef_Proxy_Broker_Factory_Initializer (long)
+{
+ _TAO_CORBA_UnionDef_Proxy_Broker_Factory_function_pointer =
+ _TAO_CORBA_UnionDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int _TAO_CORBA_UnionDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ _TAO_CORBA_UnionDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, _TAO_CORBA_UnionDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+_TAO_CORBA_UnionDef_ThruPOA_Proxy_Impl::_TAO_CORBA_UnionDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+CORBA::TypeCode_ptr _TAO_CORBA_UnionDef_ThruPOA_Proxy_Impl::discriminator_type (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::TypeCode_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "discriminator_type",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_UnionDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/UnionDef:1.0"
+ )
+ )->discriminator_type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+CORBA_IDLType_ptr _TAO_CORBA_UnionDef_ThruPOA_Proxy_Impl::discriminator_type_def (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_IDLType_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "discriminator_type_def",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_UnionDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/UnionDef:1.0"
+ )
+ )->discriminator_type_def (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_UnionDef_ThruPOA_Proxy_Impl::discriminator_type_def (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA_IDLType_ptr discriminator_type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "discriminator_type_def",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_UnionDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/UnionDef:1.0"
+ )
+ )->discriminator_type_def (
+ discriminator_type_def
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+CORBA_UnionMemberSeq * _TAO_CORBA_UnionDef_ThruPOA_Proxy_Impl::members (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_UnionMemberSeq_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "members",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_UnionDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/UnionDef:1.0"
+ )
+ )->members (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_UnionDef_ThruPOA_Proxy_Impl::members (
+ CORBA_Object *_collocated_tao_target_,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "members",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_UnionDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/UnionDef:1.0"
+ )
+ )->members (
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_CORBA_UnionDef::POA_CORBA_UnionDef (void)
+{
+ this->optable_ = &tao_CORBA_UnionDef_optable;
+}
+
+// copy ctor
+POA_CORBA_UnionDef::POA_CORBA_UnionDef (const POA_CORBA_UnionDef& rhs)
+ : POA_CORBA_TypedefDef (rhs),
+ POA_CORBA_Container (rhs),
+ POA_CORBA_Contained (rhs),
+ POA_CORBA_IDLType (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_CORBA_UnionDef::~POA_CORBA_UnionDef (void)
+{
+}
+
+void POA_CORBA_UnionDef::_get_discriminator_type_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_UnionDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_UnionDef *, _tao_object_reference);
+
+ CORBA::TypeCode_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->discriminator_type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA::TypeCode_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_UnionDef::_get_discriminator_type_def_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_UnionDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_UnionDef *, _tao_object_reference);
+
+ CORBA_IDLType_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_def_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->discriminator_type_def (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_IDLType_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_UnionDef::_set_discriminator_type_def_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_UnionDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_UnionDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA_IDLType_var discriminator_type_def;
+ if (!(
+ (_tao_in >> discriminator_type_def.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_UnionDef_discriminator_type_def_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ discriminator_type_def.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->discriminator_type_def (
+ discriminator_type_def.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_UnionDef::_get_members_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_UnionDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_UnionDef *, _tao_object_reference);
+
+ CORBA_UnionMemberSeq_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_UnionDef_members_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->members (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_UnionMemberSeq * _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_UnionDef::_set_members_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_UnionDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_UnionDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA_UnionMemberSeq members;
+ if (!(
+ (_tao_in >> members)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_UnionDef_members_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->members (
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_UnionDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_UnionDef *_tao_impl = (POA_CORBA_UnionDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_UnionDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_UnionDef *_tao_impl = (POA_CORBA_UnionDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_UnionDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_UnionDef *_tao_impl = (POA_CORBA_UnionDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_CORBA_UnionDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/UnionDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/TypedefDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Container:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Contained:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IDLType:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_CORBA_UnionDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/UnionDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_UnionDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/TypedefDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_TypedefDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Container:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Container_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Contained:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Contained_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IDLType:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IDLType_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Object:1.0") == 0)
+ return ACE_static_cast(PortableServer::Servant, this);
+ return 0;
+}
+
+void POA_CORBA_UnionDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_CORBA_UnionDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/CORBA/UnionDef:1.0";
+}
+
+CORBA_UnionDef*
+POA_CORBA_UnionDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::CORBA_UnionDef::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_CORBA_EnumDef_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 22:45:30 */
+/* C++ code produced by gperf version 2.8 (ACE version) */
+/* Command-line: gperf -m -M -J -c -C -D -E -T -f 0 -F 0 -a -o -t -p -K opname_ -L C++ -Z TAO_CORBA_EnumDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_CORBA_EnumDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 0, 0, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 0, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 10, 10, 37, 37, 37, 37, 10, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37,
+#else
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 0, 37, 0, 37, 37,
+ 0, 0, 37, 37, 37, 37, 37, 37, 37, 0,
+ 0, 37, 37, 37, 37, 10, 10, 37, 37, 37,
+ 37, 10, 37, 37, 37, 37, 37, 37,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_CORBA_EnumDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 19,
+ MIN_WORD_LENGTH = 4,
+ MAX_WORD_LENGTH = 26,
+ MIN_HASH_VALUE = 4,
+ MAX_HASH_VALUE = 36,
+ HASH_VALUE_RANGE = 33,
+ DUPLICATES = 6,
+ WORDLIST_SIZE = 23
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},
+ {"move", &POA_CORBA_EnumDef::move_skel},
+ {"_is_a", &POA_CORBA_EnumDef::_is_a_skel},
+ {"_get_id", &POA_CORBA_EnumDef::_get_id_skel},
+ {"_set_id", &POA_CORBA_EnumDef::_set_id_skel},
+ {"describe", &POA_CORBA_EnumDef::describe_skel},
+ {"_get_name", &POA_CORBA_EnumDef::_get_name_skel},
+ {"_get_type", &POA_CORBA_EnumDef::_get_type_skel},
+ {"_set_name", &POA_CORBA_EnumDef::_set_name_skel},
+ {"_interface", &POA_CORBA_EnumDef::_interface_skel},
+ {"_get_version", &POA_CORBA_EnumDef::_get_version_skel},
+ {"_set_version", &POA_CORBA_EnumDef::_set_version_skel},
+ {"_get_def_kind", &POA_CORBA_EnumDef::_get_def_kind_skel},
+ {"_get_defined_in", &POA_CORBA_EnumDef::_get_defined_in_skel},
+ {"destroy", &POA_CORBA_EnumDef::destroy_skel},
+ {"_get_absolute_name", &POA_CORBA_EnumDef::_get_absolute_name_skel},
+ {"_get_members", &POA_CORBA_EnumDef::_get_members_skel},
+ {"_set_members", &POA_CORBA_EnumDef::_set_members_skel},
+ {"_non_existent", &POA_CORBA_EnumDef::_non_existent_skel},
+ {"_get_containing_repository", &POA_CORBA_EnumDef::_get_containing_repository_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -9, -3, -13, -2, 4, 5, -1, 53, 8, -45, 12, -1, -46, 15,
+ -1, 16, -1, 17, 18, -1, -19, -2, -38, 21, -6, -2, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 22,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < WORDLIST_SIZE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 22:45:30 */
+static TAO_CORBA_EnumDef_Perfect_Hash_OpTable tao_CORBA_EnumDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+class TAO_ServerRequestInfo_CORBA_EnumDef_members_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_EnumDef_members_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_EnumDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_EnumMemberSeq * result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_EnumDef_members_get (const TAO_ServerRequestInfo_CORBA_EnumDef_members_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_EnumDef_members_get &);
+
+private:
+ POA_CORBA_EnumDef *_tao_impl;
+ CORBA_EnumMemberSeq * _result;
+};
+
+TAO_ServerRequestInfo_CORBA_EnumDef_members_get::TAO_ServerRequestInfo_CORBA_EnumDef_members_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_EnumDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_EnumDef_members_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_EnumDef_members_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_EnumDef_members_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_EnumDef_members_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_EnumDef_members_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_EnumDef_members_get::result (CORBA_EnumMemberSeq * result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_EnumDef_members_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_EnumDef_members_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_EnumDef *tao_impl
+ ,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_EnumDef_members_set (const TAO_ServerRequestInfo_CORBA_EnumDef_members_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_EnumDef_members_set &);
+
+private:
+ POA_CORBA_EnumDef *_tao_impl;
+ const CORBA_EnumMemberSeq & members_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_EnumDef_members_set::TAO_ServerRequestInfo_CORBA_EnumDef_members_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_EnumDef *tao_impl,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ members_ (members)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_EnumDef_members_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= this->members_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_EnumDef_members_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_EnumDef_members_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_EnumDef_members_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_EnumDef_members_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+_TAO_CORBA_EnumDef_Strategized_Proxy_Broker *_TAO_CORBA_EnumDef_Strategized_Proxy_Broker::the_TAO_CORBA_EnumDef_Strategized_Proxy_Broker (void)
+{
+ static _TAO_CORBA_EnumDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+_TAO_CORBA_EnumDef_Strategized_Proxy_Broker::_TAO_CORBA_EnumDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+_TAO_CORBA_EnumDef_Strategized_Proxy_Broker::~_TAO_CORBA_EnumDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+_TAO_CORBA_EnumDef_Proxy_Impl&
+_TAO_CORBA_EnumDef_Strategized_Proxy_Broker::select_proxy (
+ ::CORBA_EnumDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+_TAO_CORBA_EnumDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ _TAO_CORBA_EnumDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::_TAO_CORBA_EnumDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+_TAO_CORBA_EnumDef_Proxy_Broker *
+_TAO_CORBA_EnumDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::_TAO_CORBA_EnumDef_Strategized_Proxy_Broker::the_TAO_CORBA_EnumDef_Strategized_Proxy_Broker();
+}
+
+int
+_TAO_CORBA_EnumDef_Proxy_Broker_Factory_Initializer (long)
+{
+ _TAO_CORBA_EnumDef_Proxy_Broker_Factory_function_pointer =
+ _TAO_CORBA_EnumDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int _TAO_CORBA_EnumDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ _TAO_CORBA_EnumDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, _TAO_CORBA_EnumDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+_TAO_CORBA_EnumDef_ThruPOA_Proxy_Impl::_TAO_CORBA_EnumDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+CORBA_EnumMemberSeq * _TAO_CORBA_EnumDef_ThruPOA_Proxy_Impl::members (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_EnumMemberSeq_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "members",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_EnumDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/EnumDef:1.0"
+ )
+ )->members (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_EnumDef_ThruPOA_Proxy_Impl::members (
+ CORBA_Object *_collocated_tao_target_,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "members",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_EnumDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/EnumDef:1.0"
+ )
+ )->members (
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_CORBA_EnumDef::POA_CORBA_EnumDef (void)
+{
+ this->optable_ = &tao_CORBA_EnumDef_optable;
+}
+
+// copy ctor
+POA_CORBA_EnumDef::POA_CORBA_EnumDef (const POA_CORBA_EnumDef& rhs)
+ : POA_CORBA_TypedefDef (rhs),
+ POA_CORBA_Contained (rhs),
+ POA_CORBA_IDLType (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_CORBA_EnumDef::~POA_CORBA_EnumDef (void)
+{
+}
+
+void POA_CORBA_EnumDef::_get_members_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_EnumDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_EnumDef *, _tao_object_reference);
+
+ CORBA_EnumMemberSeq_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_EnumDef_members_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->members (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_EnumMemberSeq * _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_EnumDef::_set_members_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_EnumDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_EnumDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA_EnumMemberSeq members;
+ if (!(
+ (_tao_in >> members)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_EnumDef_members_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->members (
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_EnumDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_EnumDef *_tao_impl = (POA_CORBA_EnumDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_EnumDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_EnumDef *_tao_impl = (POA_CORBA_EnumDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_EnumDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_EnumDef *_tao_impl = (POA_CORBA_EnumDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_CORBA_EnumDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/EnumDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/TypedefDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Contained:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IDLType:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_CORBA_EnumDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/EnumDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_EnumDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/TypedefDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_TypedefDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Contained:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Contained_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IDLType:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IDLType_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Object:1.0") == 0)
+ return ACE_static_cast(PortableServer::Servant, this);
+ return 0;
+}
+
+void POA_CORBA_EnumDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_CORBA_EnumDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/CORBA/EnumDef:1.0";
+}
+
+CORBA_EnumDef*
+POA_CORBA_EnumDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::CORBA_EnumDef::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_CORBA_AliasDef_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 22:45:30 */
+/* C++ code produced by gperf version 2.8 (ACE version) */
+/* Command-line: gperf -m -M -J -c -C -D -E -T -f 0 -F 0 -a -o -t -p -K opname_ -L C++ -Z TAO_CORBA_AliasDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_CORBA_AliasDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 0, 0, 0, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 0, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 10, 37, 37, 37, 37, 10, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37,
+#else
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 0, 37, 0, 37, 37,
+ 0, 0, 0, 37, 37, 37, 37, 37, 37, 0,
+ 0, 37, 37, 37, 37, 37, 10, 37, 37, 37,
+ 37, 10, 37, 37, 37, 37, 37, 37,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_CORBA_AliasDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 19,
+ MIN_WORD_LENGTH = 4,
+ MAX_WORD_LENGTH = 26,
+ MIN_HASH_VALUE = 4,
+ MAX_HASH_VALUE = 36,
+ HASH_VALUE_RANGE = 33,
+ DUPLICATES = 6,
+ WORDLIST_SIZE = 23
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},
+ {"move", &POA_CORBA_AliasDef::move_skel},
+ {"_is_a", &POA_CORBA_AliasDef::_is_a_skel},
+ {"_get_id", &POA_CORBA_AliasDef::_get_id_skel},
+ {"_set_id", &POA_CORBA_AliasDef::_set_id_skel},
+ {"describe", &POA_CORBA_AliasDef::describe_skel},
+ {"_get_name", &POA_CORBA_AliasDef::_get_name_skel},
+ {"_get_type", &POA_CORBA_AliasDef::_get_type_skel},
+ {"_set_name", &POA_CORBA_AliasDef::_set_name_skel},
+ {"_interface", &POA_CORBA_AliasDef::_interface_skel},
+ {"_get_version", &POA_CORBA_AliasDef::_get_version_skel},
+ {"_set_version", &POA_CORBA_AliasDef::_set_version_skel},
+ {"_get_def_kind", &POA_CORBA_AliasDef::_get_def_kind_skel},
+ {"_get_defined_in", &POA_CORBA_AliasDef::_get_defined_in_skel},
+ {"destroy", &POA_CORBA_AliasDef::destroy_skel},
+ {"_get_absolute_name", &POA_CORBA_AliasDef::_get_absolute_name_skel},
+ {"_get_original_type_def", &POA_CORBA_AliasDef::_get_original_type_def_skel},
+ {"_set_original_type_def", &POA_CORBA_AliasDef::_set_original_type_def_skel},
+ {"_non_existent", &POA_CORBA_AliasDef::_non_existent_skel},
+ {"_get_containing_repository", &POA_CORBA_AliasDef::_get_containing_repository_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -9, -3, -13, -2, 4, 5, -1, 53, 8, -45, 12, -1, -46, 15,
+ -1, 16, -1, 17, 18, -1, -19, -2, -38, 21, -6, -2, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 22,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < WORDLIST_SIZE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 22:45:30 */
+static TAO_CORBA_AliasDef_Perfect_Hash_OpTable tao_CORBA_AliasDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+class TAO_ServerRequestInfo_CORBA_AliasDef_original_type_def_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_AliasDef_original_type_def_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_AliasDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_IDLType_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_AliasDef_original_type_def_get (const TAO_ServerRequestInfo_CORBA_AliasDef_original_type_def_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_AliasDef_original_type_def_get &);
+
+private:
+ POA_CORBA_AliasDef *_tao_impl;
+ CORBA_IDLType_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_AliasDef_original_type_def_get::TAO_ServerRequestInfo_CORBA_AliasDef_original_type_def_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_AliasDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_AliasDef_original_type_def_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_AliasDef_original_type_def_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_AliasDef_original_type_def_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_AliasDef_original_type_def_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_AliasDef_original_type_def_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_AliasDef_original_type_def_get::result (CORBA_IDLType_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_AliasDef_original_type_def_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_AliasDef_original_type_def_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_AliasDef *tao_impl
+ ,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_AliasDef_original_type_def_set (const TAO_ServerRequestInfo_CORBA_AliasDef_original_type_def_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_AliasDef_original_type_def_set &);
+
+private:
+ POA_CORBA_AliasDef *_tao_impl;
+ CORBA_IDLType_ptr original_type_def_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_AliasDef_original_type_def_set::TAO_ServerRequestInfo_CORBA_AliasDef_original_type_def_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_AliasDef *tao_impl,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ original_type_def_ (original_type_def)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_AliasDef_original_type_def_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= this->original_type_def_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_AliasDef_original_type_def_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_AliasDef_original_type_def_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_AliasDef_original_type_def_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_AliasDef_original_type_def_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+_TAO_CORBA_AliasDef_Strategized_Proxy_Broker *_TAO_CORBA_AliasDef_Strategized_Proxy_Broker::the_TAO_CORBA_AliasDef_Strategized_Proxy_Broker (void)
+{
+ static _TAO_CORBA_AliasDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+_TAO_CORBA_AliasDef_Strategized_Proxy_Broker::_TAO_CORBA_AliasDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+_TAO_CORBA_AliasDef_Strategized_Proxy_Broker::~_TAO_CORBA_AliasDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+_TAO_CORBA_AliasDef_Proxy_Impl&
+_TAO_CORBA_AliasDef_Strategized_Proxy_Broker::select_proxy (
+ ::CORBA_AliasDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+_TAO_CORBA_AliasDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ _TAO_CORBA_AliasDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::_TAO_CORBA_AliasDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+_TAO_CORBA_AliasDef_Proxy_Broker *
+_TAO_CORBA_AliasDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::_TAO_CORBA_AliasDef_Strategized_Proxy_Broker::the_TAO_CORBA_AliasDef_Strategized_Proxy_Broker();
+}
+
+int
+_TAO_CORBA_AliasDef_Proxy_Broker_Factory_Initializer (long)
+{
+ _TAO_CORBA_AliasDef_Proxy_Broker_Factory_function_pointer =
+ _TAO_CORBA_AliasDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int _TAO_CORBA_AliasDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ _TAO_CORBA_AliasDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, _TAO_CORBA_AliasDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+_TAO_CORBA_AliasDef_ThruPOA_Proxy_Impl::_TAO_CORBA_AliasDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+CORBA_IDLType_ptr _TAO_CORBA_AliasDef_ThruPOA_Proxy_Impl::original_type_def (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_IDLType_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "original_type_def",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_AliasDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/AliasDef:1.0"
+ )
+ )->original_type_def (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_AliasDef_ThruPOA_Proxy_Impl::original_type_def (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "original_type_def",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_AliasDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/AliasDef:1.0"
+ )
+ )->original_type_def (
+ original_type_def
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_CORBA_AliasDef::POA_CORBA_AliasDef (void)
+{
+ this->optable_ = &tao_CORBA_AliasDef_optable;
+}
+
+// copy ctor
+POA_CORBA_AliasDef::POA_CORBA_AliasDef (const POA_CORBA_AliasDef& rhs)
+ : POA_CORBA_TypedefDef (rhs),
+ POA_CORBA_Contained (rhs),
+ POA_CORBA_IDLType (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_CORBA_AliasDef::~POA_CORBA_AliasDef (void)
+{
+}
+
+void POA_CORBA_AliasDef::_get_original_type_def_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_AliasDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_AliasDef *, _tao_object_reference);
+
+ CORBA_IDLType_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_AliasDef_original_type_def_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->original_type_def (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_IDLType_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_AliasDef::_set_original_type_def_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_AliasDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_AliasDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA_IDLType_var original_type_def;
+ if (!(
+ (_tao_in >> original_type_def.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_AliasDef_original_type_def_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ original_type_def.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->original_type_def (
+ original_type_def.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_AliasDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_AliasDef *_tao_impl = (POA_CORBA_AliasDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_AliasDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_AliasDef *_tao_impl = (POA_CORBA_AliasDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_AliasDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_AliasDef *_tao_impl = (POA_CORBA_AliasDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_CORBA_AliasDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/AliasDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/TypedefDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Contained:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IDLType:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_CORBA_AliasDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/AliasDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_AliasDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/TypedefDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_TypedefDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Contained:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Contained_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IDLType:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IDLType_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Object:1.0") == 0)
+ return ACE_static_cast(PortableServer::Servant, this);
+ return 0;
+}
+
+void POA_CORBA_AliasDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_CORBA_AliasDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/CORBA/AliasDef:1.0";
+}
+
+CORBA_AliasDef*
+POA_CORBA_AliasDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::CORBA_AliasDef::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_CORBA_NativeDef_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 22:45:31 */
+/* C++ code produced by gperf version 2.8 (ACE version) */
+/* Command-line: gperf -m -M -J -c -C -D -E -T -f 0 -F 0 -a -o -t -p -K opname_ -L C++ -Z TAO_CORBA_NativeDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_CORBA_NativeDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 0, 0, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 0, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 10, 37, 37, 37, 37, 10, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37,
+#else
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 0, 37, 0, 37, 37,
+ 0, 0, 37, 37, 37, 37, 37, 37, 37, 0,
+ 0, 37, 37, 37, 37, 37, 10, 37, 37, 37,
+ 37, 10, 37, 37, 37, 37, 37, 37,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_CORBA_NativeDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 17,
+ MIN_WORD_LENGTH = 4,
+ MAX_WORD_LENGTH = 26,
+ MIN_HASH_VALUE = 4,
+ MAX_HASH_VALUE = 36,
+ HASH_VALUE_RANGE = 33,
+ DUPLICATES = 5,
+ WORDLIST_SIZE = 21
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},
+ {"move", &POA_CORBA_NativeDef::move_skel},
+ {"_is_a", &POA_CORBA_NativeDef::_is_a_skel},
+ {"_get_id", &POA_CORBA_NativeDef::_get_id_skel},
+ {"_set_id", &POA_CORBA_NativeDef::_set_id_skel},
+ {"describe", &POA_CORBA_NativeDef::describe_skel},
+ {"_get_name", &POA_CORBA_NativeDef::_get_name_skel},
+ {"_get_type", &POA_CORBA_NativeDef::_get_type_skel},
+ {"_set_name", &POA_CORBA_NativeDef::_set_name_skel},
+ {"_interface", &POA_CORBA_NativeDef::_interface_skel},
+ {"_get_version", &POA_CORBA_NativeDef::_get_version_skel},
+ {"_set_version", &POA_CORBA_NativeDef::_set_version_skel},
+ {"_get_def_kind", &POA_CORBA_NativeDef::_get_def_kind_skel},
+ {"_get_defined_in", &POA_CORBA_NativeDef::_get_defined_in_skel},
+ {"destroy", &POA_CORBA_NativeDef::destroy_skel},
+ {"_get_absolute_name", &POA_CORBA_NativeDef::_get_absolute_name_skel},
+ {"_non_existent", &POA_CORBA_NativeDef::_non_existent_skel},
+ {"_get_containing_repository", &POA_CORBA_NativeDef::_get_containing_repository_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -9, -3, -13, -2, 4, 5, -1, 48, 8, -45, 12, -1, -46, 15,
+ -1, 16, -1, 17, 18, -6, -2, -1, -1, 19, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 20,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < WORDLIST_SIZE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 22:45:31 */
+static TAO_CORBA_NativeDef_Perfect_Hash_OpTable tao_CORBA_NativeDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+_TAO_CORBA_NativeDef_Strategized_Proxy_Broker *_TAO_CORBA_NativeDef_Strategized_Proxy_Broker::the_TAO_CORBA_NativeDef_Strategized_Proxy_Broker (void)
+{
+ static _TAO_CORBA_NativeDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+_TAO_CORBA_NativeDef_Strategized_Proxy_Broker::_TAO_CORBA_NativeDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+_TAO_CORBA_NativeDef_Strategized_Proxy_Broker::~_TAO_CORBA_NativeDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+_TAO_CORBA_NativeDef_Proxy_Impl&
+_TAO_CORBA_NativeDef_Strategized_Proxy_Broker::select_proxy (
+ ::CORBA_NativeDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+_TAO_CORBA_NativeDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ _TAO_CORBA_NativeDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::_TAO_CORBA_NativeDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+_TAO_CORBA_NativeDef_Proxy_Broker *
+_TAO_CORBA_NativeDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::_TAO_CORBA_NativeDef_Strategized_Proxy_Broker::the_TAO_CORBA_NativeDef_Strategized_Proxy_Broker();
+}
+
+int
+_TAO_CORBA_NativeDef_Proxy_Broker_Factory_Initializer (long)
+{
+ _TAO_CORBA_NativeDef_Proxy_Broker_Factory_function_pointer =
+ _TAO_CORBA_NativeDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int _TAO_CORBA_NativeDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ _TAO_CORBA_NativeDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, _TAO_CORBA_NativeDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+_TAO_CORBA_NativeDef_ThruPOA_Proxy_Impl::_TAO_CORBA_NativeDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_CORBA_NativeDef::POA_CORBA_NativeDef (void)
+{
+ this->optable_ = &tao_CORBA_NativeDef_optable;
+}
+
+// copy ctor
+POA_CORBA_NativeDef::POA_CORBA_NativeDef (const POA_CORBA_NativeDef& rhs)
+ : POA_CORBA_TypedefDef (rhs),
+ POA_CORBA_Contained (rhs),
+ POA_CORBA_IDLType (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_CORBA_NativeDef::~POA_CORBA_NativeDef (void)
+{
+}
+
+void POA_CORBA_NativeDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_NativeDef *_tao_impl = (POA_CORBA_NativeDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_NativeDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_NativeDef *_tao_impl = (POA_CORBA_NativeDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_NativeDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_NativeDef *_tao_impl = (POA_CORBA_NativeDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_CORBA_NativeDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/NativeDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/TypedefDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Contained:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IDLType:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_CORBA_NativeDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/NativeDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_NativeDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/TypedefDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_TypedefDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Contained:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Contained_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IDLType:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IDLType_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Object:1.0") == 0)
+ return ACE_static_cast(PortableServer::Servant, this);
+ return 0;
+}
+
+void POA_CORBA_NativeDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_CORBA_NativeDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/CORBA/NativeDef:1.0";
+}
+
+CORBA_NativeDef*
+POA_CORBA_NativeDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::CORBA_NativeDef::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_CORBA_PrimitiveDef_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 22:45:31 */
+/* C++ code produced by gperf version 2.8 (ACE version) */
+/* Command-line: gperf -m -M -J -c -C -D -E -T -f 0 -F 0 -a -o -t -p -K opname_ -L C++ -Z TAO_CORBA_PrimitiveDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_CORBA_PrimitiveDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 0,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 0,
+ 19, 19, 0, 5, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 5, 19, 19, 19, 19, 0, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19,
+#else
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 0, 19, 0, 19, 19,
+ 0, 5, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 5, 19, 19, 19,
+ 19, 0, 19, 19, 19, 19, 19, 19,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_CORBA_PrimitiveDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 7,
+ MIN_WORD_LENGTH = 5,
+ MAX_WORD_LENGTH = 13,
+ MIN_HASH_VALUE = 5,
+ MAX_HASH_VALUE = 18,
+ HASH_VALUE_RANGE = 14,
+ DUPLICATES = 0,
+ WORDLIST_SIZE = 12
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},{"",0},
+ {"_is_a", &POA_CORBA_PrimitiveDef::_is_a_skel},
+ {"",0},
+ {"destroy", &POA_CORBA_PrimitiveDef::destroy_skel},
+ {"",0},
+ {"_get_kind", &POA_CORBA_PrimitiveDef::_get_kind_skel},
+ {"",0},{"",0},{"",0},
+ {"_get_def_kind", &POA_CORBA_PrimitiveDef::_get_def_kind_skel},
+ {"_get_type", &POA_CORBA_PrimitiveDef::_get_type_skel},
+ {"_interface", &POA_CORBA_PrimitiveDef::_interface_skel},
+ {"",0},{"",0},
+ {"_non_existent", &POA_CORBA_PrimitiveDef::_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 22:45:31 */
+static TAO_CORBA_PrimitiveDef_Perfect_Hash_OpTable tao_CORBA_PrimitiveDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+class TAO_ServerRequestInfo_CORBA_PrimitiveDef_kind_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_PrimitiveDef_kind_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_PrimitiveDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA::PrimitiveKind result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_PrimitiveDef_kind_get (const TAO_ServerRequestInfo_CORBA_PrimitiveDef_kind_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_PrimitiveDef_kind_get &);
+
+private:
+ POA_CORBA_PrimitiveDef *_tao_impl;
+ CORBA::PrimitiveKind _result;
+};
+
+TAO_ServerRequestInfo_CORBA_PrimitiveDef_kind_get::TAO_ServerRequestInfo_CORBA_PrimitiveDef_kind_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_PrimitiveDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_PrimitiveDef_kind_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_PrimitiveDef_kind_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_PrimitiveDef_kind_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_PrimitiveDef_kind_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_PrimitiveDef_kind_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_PrimitiveDef_kind_get::result (CORBA::PrimitiveKind result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+_TAO_CORBA_PrimitiveDef_Strategized_Proxy_Broker *_TAO_CORBA_PrimitiveDef_Strategized_Proxy_Broker::the_TAO_CORBA_PrimitiveDef_Strategized_Proxy_Broker (void)
+{
+ static _TAO_CORBA_PrimitiveDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+_TAO_CORBA_PrimitiveDef_Strategized_Proxy_Broker::_TAO_CORBA_PrimitiveDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+_TAO_CORBA_PrimitiveDef_Strategized_Proxy_Broker::~_TAO_CORBA_PrimitiveDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+_TAO_CORBA_PrimitiveDef_Proxy_Impl&
+_TAO_CORBA_PrimitiveDef_Strategized_Proxy_Broker::select_proxy (
+ ::CORBA_PrimitiveDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+_TAO_CORBA_PrimitiveDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ _TAO_CORBA_PrimitiveDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::_TAO_CORBA_PrimitiveDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+_TAO_CORBA_PrimitiveDef_Proxy_Broker *
+_TAO_CORBA_PrimitiveDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::_TAO_CORBA_PrimitiveDef_Strategized_Proxy_Broker::the_TAO_CORBA_PrimitiveDef_Strategized_Proxy_Broker();
+}
+
+int
+_TAO_CORBA_PrimitiveDef_Proxy_Broker_Factory_Initializer (long)
+{
+ _TAO_CORBA_PrimitiveDef_Proxy_Broker_Factory_function_pointer =
+ _TAO_CORBA_PrimitiveDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int _TAO_CORBA_PrimitiveDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ _TAO_CORBA_PrimitiveDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, _TAO_CORBA_PrimitiveDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+_TAO_CORBA_PrimitiveDef_ThruPOA_Proxy_Impl::_TAO_CORBA_PrimitiveDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+CORBA::PrimitiveKind _TAO_CORBA_PrimitiveDef_ThruPOA_Proxy_Impl::kind (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::PrimitiveKind _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "kind",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (_tao_retval);
+ return ACE_reinterpret_cast (
+ POA_CORBA_PrimitiveDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/PrimitiveDef:1.0"
+ )
+ )->kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_CORBA_PrimitiveDef::POA_CORBA_PrimitiveDef (void)
+{
+ this->optable_ = &tao_CORBA_PrimitiveDef_optable;
+}
+
+// copy ctor
+POA_CORBA_PrimitiveDef::POA_CORBA_PrimitiveDef (const POA_CORBA_PrimitiveDef& rhs)
+ : POA_CORBA_IDLType (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_CORBA_PrimitiveDef::~POA_CORBA_PrimitiveDef (void)
+{
+}
+
+void POA_CORBA_PrimitiveDef::_get_kind_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_PrimitiveDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_PrimitiveDef *, _tao_object_reference);
+
+ CORBA::PrimitiveKind _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_PrimitiveDef_kind_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA::PrimitiveKind _tao_retval_info = _tao_retval;
+ ri.result (_tao_retval_info);
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_PrimitiveDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_PrimitiveDef *_tao_impl = (POA_CORBA_PrimitiveDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_PrimitiveDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_PrimitiveDef *_tao_impl = (POA_CORBA_PrimitiveDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_PrimitiveDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_PrimitiveDef *_tao_impl = (POA_CORBA_PrimitiveDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_CORBA_PrimitiveDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/PrimitiveDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IDLType:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_CORBA_PrimitiveDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/PrimitiveDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_PrimitiveDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IDLType:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IDLType_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Object:1.0") == 0)
+ return ACE_static_cast(PortableServer::Servant, this);
+ return 0;
+}
+
+void POA_CORBA_PrimitiveDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_CORBA_PrimitiveDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/CORBA/PrimitiveDef:1.0";
+}
+
+CORBA_PrimitiveDef*
+POA_CORBA_PrimitiveDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::CORBA_PrimitiveDef::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_CORBA_StringDef_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 22:45:32 */
+/* C++ code produced by gperf version 2.8 (ACE version) */
+/* Command-line: gperf -m -M -J -c -C -D -E -T -f 0 -F 0 -a -o -t -p -K opname_ -L C++ -Z TAO_CORBA_StringDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_CORBA_StringDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 0,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 0,
+ 19, 19, 0, 5, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 5, 19, 19, 19, 19, 0, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19,
+#else
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 0, 19, 0, 19, 19,
+ 0, 5, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 5, 19, 19, 19,
+ 19, 0, 19, 19, 19, 19, 19, 19,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_CORBA_StringDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 8,
+ MIN_WORD_LENGTH = 5,
+ MAX_WORD_LENGTH = 13,
+ MIN_HASH_VALUE = 5,
+ MAX_HASH_VALUE = 18,
+ HASH_VALUE_RANGE = 14,
+ DUPLICATES = 2,
+ WORDLIST_SIZE = 13
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},{"",0},
+ {"_is_a", &POA_CORBA_StringDef::_is_a_skel},
+ {"destroy", &POA_CORBA_StringDef::destroy_skel},
+ {"_get_bound", &POA_CORBA_StringDef::_get_bound_skel},
+ {"_set_bound", &POA_CORBA_StringDef::_set_bound_skel},
+ {"_get_def_kind", &POA_CORBA_StringDef::_get_def_kind_skel},
+ {"_get_type", &POA_CORBA_StringDef::_get_type_skel},
+ {"_interface", &POA_CORBA_StringDef::_interface_skel},
+ {"_non_existent", &POA_CORBA_StringDef::_non_existent_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -1, -1, -1, -1, -1, 5, -1, 6, -7, -2, -20, -1, -1, 9,
+ 10, 11, -1, -1, 12,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < WORDLIST_SIZE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 22:45:32 */
+static TAO_CORBA_StringDef_Perfect_Hash_OpTable tao_CORBA_StringDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+class TAO_ServerRequestInfo_CORBA_StringDef_bound_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_StringDef_bound_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_StringDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA::ULong result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_StringDef_bound_get (const TAO_ServerRequestInfo_CORBA_StringDef_bound_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_StringDef_bound_get &);
+
+private:
+ POA_CORBA_StringDef *_tao_impl;
+ CORBA::ULong _result;
+};
+
+TAO_ServerRequestInfo_CORBA_StringDef_bound_get::TAO_ServerRequestInfo_CORBA_StringDef_bound_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_StringDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_StringDef_bound_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_StringDef_bound_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_StringDef_bound_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_StringDef_bound_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_StringDef_bound_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_StringDef_bound_get::result (CORBA::ULong result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_StringDef_bound_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_StringDef_bound_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_StringDef *tao_impl
+ ,
+ const CORBA::ULong & bound
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_StringDef_bound_set (const TAO_ServerRequestInfo_CORBA_StringDef_bound_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_StringDef_bound_set &);
+
+private:
+ POA_CORBA_StringDef *_tao_impl;
+ const CORBA::ULong & bound_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_StringDef_bound_set::TAO_ServerRequestInfo_CORBA_StringDef_bound_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_StringDef *tao_impl,
+ const CORBA::ULong & bound
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ bound_ (bound)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_StringDef_bound_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= bound_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_StringDef_bound_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_StringDef_bound_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_StringDef_bound_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_StringDef_bound_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+_TAO_CORBA_StringDef_Strategized_Proxy_Broker *_TAO_CORBA_StringDef_Strategized_Proxy_Broker::the_TAO_CORBA_StringDef_Strategized_Proxy_Broker (void)
+{
+ static _TAO_CORBA_StringDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+_TAO_CORBA_StringDef_Strategized_Proxy_Broker::_TAO_CORBA_StringDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+_TAO_CORBA_StringDef_Strategized_Proxy_Broker::~_TAO_CORBA_StringDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+_TAO_CORBA_StringDef_Proxy_Impl&
+_TAO_CORBA_StringDef_Strategized_Proxy_Broker::select_proxy (
+ ::CORBA_StringDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+_TAO_CORBA_StringDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ _TAO_CORBA_StringDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::_TAO_CORBA_StringDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+_TAO_CORBA_StringDef_Proxy_Broker *
+_TAO_CORBA_StringDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::_TAO_CORBA_StringDef_Strategized_Proxy_Broker::the_TAO_CORBA_StringDef_Strategized_Proxy_Broker();
+}
+
+int
+_TAO_CORBA_StringDef_Proxy_Broker_Factory_Initializer (long)
+{
+ _TAO_CORBA_StringDef_Proxy_Broker_Factory_function_pointer =
+ _TAO_CORBA_StringDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int _TAO_CORBA_StringDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ _TAO_CORBA_StringDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, _TAO_CORBA_StringDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+_TAO_CORBA_StringDef_ThruPOA_Proxy_Impl::_TAO_CORBA_StringDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+CORBA::ULong _TAO_CORBA_StringDef_ThruPOA_Proxy_Impl::bound (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::ULong _tao_retval = 0;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "bound",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (_tao_retval);
+ return ACE_reinterpret_cast (
+ POA_CORBA_StringDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/StringDef:1.0"
+ )
+ )->bound (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_StringDef_ThruPOA_Proxy_Impl::bound (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "bound",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_StringDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/StringDef:1.0"
+ )
+ )->bound (
+ bound
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_CORBA_StringDef::POA_CORBA_StringDef (void)
+{
+ this->optable_ = &tao_CORBA_StringDef_optable;
+}
+
+// copy ctor
+POA_CORBA_StringDef::POA_CORBA_StringDef (const POA_CORBA_StringDef& rhs)
+ : POA_CORBA_IDLType (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_CORBA_StringDef::~POA_CORBA_StringDef (void)
+{
+}
+
+void POA_CORBA_StringDef::_get_bound_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_StringDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_StringDef *, _tao_object_reference);
+
+ CORBA::ULong _tao_retval = 0;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_StringDef_bound_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->bound (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA::ULong _tao_retval_info = _tao_retval;
+ ri.result (_tao_retval_info);
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_StringDef::_set_bound_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_StringDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_StringDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA::ULong bound;
+ if (!(
+ (_tao_in >> bound)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_StringDef_bound_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ bound
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->bound (
+ bound
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_StringDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_StringDef *_tao_impl = (POA_CORBA_StringDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_StringDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_StringDef *_tao_impl = (POA_CORBA_StringDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_StringDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_StringDef *_tao_impl = (POA_CORBA_StringDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_CORBA_StringDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/StringDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IDLType:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_CORBA_StringDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/StringDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_StringDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IDLType:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IDLType_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Object:1.0") == 0)
+ return ACE_static_cast(PortableServer::Servant, this);
+ return 0;
+}
+
+void POA_CORBA_StringDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_CORBA_StringDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/CORBA/StringDef:1.0";
+}
+
+CORBA_StringDef*
+POA_CORBA_StringDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::CORBA_StringDef::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_CORBA_WstringDef_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 22:45:32 */
+/* C++ code produced by gperf version 2.8 (ACE version) */
+/* Command-line: gperf -m -M -J -c -C -D -E -T -f 0 -F 0 -a -o -t -p -K opname_ -L C++ -Z TAO_CORBA_WstringDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_CORBA_WstringDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 0,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 0,
+ 19, 19, 0, 5, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 5, 19, 19, 19, 19, 0, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19,
+#else
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 0, 19, 0, 19, 19,
+ 0, 5, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 5, 19, 19, 19,
+ 19, 0, 19, 19, 19, 19, 19, 19,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_CORBA_WstringDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 8,
+ MIN_WORD_LENGTH = 5,
+ MAX_WORD_LENGTH = 13,
+ MIN_HASH_VALUE = 5,
+ MAX_HASH_VALUE = 18,
+ HASH_VALUE_RANGE = 14,
+ DUPLICATES = 2,
+ WORDLIST_SIZE = 13
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},{"",0},
+ {"_is_a", &POA_CORBA_WstringDef::_is_a_skel},
+ {"destroy", &POA_CORBA_WstringDef::destroy_skel},
+ {"_get_bound", &POA_CORBA_WstringDef::_get_bound_skel},
+ {"_set_bound", &POA_CORBA_WstringDef::_set_bound_skel},
+ {"_get_def_kind", &POA_CORBA_WstringDef::_get_def_kind_skel},
+ {"_get_type", &POA_CORBA_WstringDef::_get_type_skel},
+ {"_interface", &POA_CORBA_WstringDef::_interface_skel},
+ {"_non_existent", &POA_CORBA_WstringDef::_non_existent_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -1, -1, -1, -1, -1, 5, -1, 6, -7, -2, -20, -1, -1, 9,
+ 10, 11, -1, -1, 12,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < WORDLIST_SIZE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 22:45:33 */
+static TAO_CORBA_WstringDef_Perfect_Hash_OpTable tao_CORBA_WstringDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+class TAO_ServerRequestInfo_CORBA_WstringDef_bound_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_WstringDef_bound_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_WstringDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA::ULong result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_WstringDef_bound_get (const TAO_ServerRequestInfo_CORBA_WstringDef_bound_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_WstringDef_bound_get &);
+
+private:
+ POA_CORBA_WstringDef *_tao_impl;
+ CORBA::ULong _result;
+};
+
+TAO_ServerRequestInfo_CORBA_WstringDef_bound_get::TAO_ServerRequestInfo_CORBA_WstringDef_bound_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_WstringDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_WstringDef_bound_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_WstringDef_bound_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_WstringDef_bound_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_WstringDef_bound_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_WstringDef_bound_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_WstringDef_bound_get::result (CORBA::ULong result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_WstringDef_bound_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_WstringDef_bound_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_WstringDef *tao_impl
+ ,
+ const CORBA::ULong & bound
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_WstringDef_bound_set (const TAO_ServerRequestInfo_CORBA_WstringDef_bound_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_WstringDef_bound_set &);
+
+private:
+ POA_CORBA_WstringDef *_tao_impl;
+ const CORBA::ULong & bound_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_WstringDef_bound_set::TAO_ServerRequestInfo_CORBA_WstringDef_bound_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_WstringDef *tao_impl,
+ const CORBA::ULong & bound
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ bound_ (bound)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_WstringDef_bound_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= bound_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_WstringDef_bound_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_WstringDef_bound_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_WstringDef_bound_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_WstringDef_bound_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+_TAO_CORBA_WstringDef_Strategized_Proxy_Broker *_TAO_CORBA_WstringDef_Strategized_Proxy_Broker::the_TAO_CORBA_WstringDef_Strategized_Proxy_Broker (void)
+{
+ static _TAO_CORBA_WstringDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+_TAO_CORBA_WstringDef_Strategized_Proxy_Broker::_TAO_CORBA_WstringDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+_TAO_CORBA_WstringDef_Strategized_Proxy_Broker::~_TAO_CORBA_WstringDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+_TAO_CORBA_WstringDef_Proxy_Impl&
+_TAO_CORBA_WstringDef_Strategized_Proxy_Broker::select_proxy (
+ ::CORBA_WstringDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+_TAO_CORBA_WstringDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ _TAO_CORBA_WstringDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::_TAO_CORBA_WstringDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+_TAO_CORBA_WstringDef_Proxy_Broker *
+_TAO_CORBA_WstringDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::_TAO_CORBA_WstringDef_Strategized_Proxy_Broker::the_TAO_CORBA_WstringDef_Strategized_Proxy_Broker();
+}
+
+int
+_TAO_CORBA_WstringDef_Proxy_Broker_Factory_Initializer (long)
+{
+ _TAO_CORBA_WstringDef_Proxy_Broker_Factory_function_pointer =
+ _TAO_CORBA_WstringDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int _TAO_CORBA_WstringDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ _TAO_CORBA_WstringDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, _TAO_CORBA_WstringDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+_TAO_CORBA_WstringDef_ThruPOA_Proxy_Impl::_TAO_CORBA_WstringDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+CORBA::ULong _TAO_CORBA_WstringDef_ThruPOA_Proxy_Impl::bound (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::ULong _tao_retval = 0;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "bound",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (_tao_retval);
+ return ACE_reinterpret_cast (
+ POA_CORBA_WstringDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/WstringDef:1.0"
+ )
+ )->bound (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_WstringDef_ThruPOA_Proxy_Impl::bound (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "bound",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_WstringDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/WstringDef:1.0"
+ )
+ )->bound (
+ bound
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_CORBA_WstringDef::POA_CORBA_WstringDef (void)
+{
+ this->optable_ = &tao_CORBA_WstringDef_optable;
+}
+
+// copy ctor
+POA_CORBA_WstringDef::POA_CORBA_WstringDef (const POA_CORBA_WstringDef& rhs)
+ : POA_CORBA_IDLType (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_CORBA_WstringDef::~POA_CORBA_WstringDef (void)
+{
+}
+
+void POA_CORBA_WstringDef::_get_bound_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_WstringDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_WstringDef *, _tao_object_reference);
+
+ CORBA::ULong _tao_retval = 0;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_WstringDef_bound_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->bound (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA::ULong _tao_retval_info = _tao_retval;
+ ri.result (_tao_retval_info);
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_WstringDef::_set_bound_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_WstringDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_WstringDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA::ULong bound;
+ if (!(
+ (_tao_in >> bound)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_WstringDef_bound_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ bound
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->bound (
+ bound
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_WstringDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_WstringDef *_tao_impl = (POA_CORBA_WstringDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_WstringDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_WstringDef *_tao_impl = (POA_CORBA_WstringDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_WstringDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_WstringDef *_tao_impl = (POA_CORBA_WstringDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_CORBA_WstringDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/WstringDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IDLType:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_CORBA_WstringDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/WstringDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_WstringDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IDLType:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IDLType_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Object:1.0") == 0)
+ return ACE_static_cast(PortableServer::Servant, this);
+ return 0;
+}
+
+void POA_CORBA_WstringDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_CORBA_WstringDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/CORBA/WstringDef:1.0";
+}
+
+CORBA_WstringDef*
+POA_CORBA_WstringDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::CORBA_WstringDef::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_CORBA_SequenceDef_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 22:45:34 */
+/* C++ code produced by gperf version 2.8 (ACE version) */
+/* Command-line: gperf -m -M -J -c -C -D -E -T -f 0 -F 0 -a -o -t -p -K opname_ -L C++ -Z TAO_CORBA_SequenceDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_CORBA_SequenceDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23, 23, 23, 23, 0,
+ 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23, 23, 23, 23, 0,
+ 23, 23, 0, 5, 0, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 5, 23, 23, 23, 23, 0, 23,
+ 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23,
+#else
+ 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 0, 23, 0, 23, 23,
+ 0, 5, 0, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23, 5, 23, 23, 23,
+ 23, 0, 23, 23, 23, 23, 23, 23,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_CORBA_SequenceDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 11,
+ MIN_WORD_LENGTH = 5,
+ MAX_WORD_LENGTH = 21,
+ MIN_HASH_VALUE = 5,
+ MAX_HASH_VALUE = 22,
+ HASH_VALUE_RANGE = 18,
+ DUPLICATES = 3,
+ WORDLIST_SIZE = 16
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},{"",0},
+ {"_is_a", &POA_CORBA_SequenceDef::_is_a_skel},
+ {"destroy", &POA_CORBA_SequenceDef::destroy_skel},
+ {"_get_bound", &POA_CORBA_SequenceDef::_get_bound_skel},
+ {"_set_bound", &POA_CORBA_SequenceDef::_set_bound_skel},
+ {"_get_def_kind", &POA_CORBA_SequenceDef::_get_def_kind_skel},
+ {"_get_type", &POA_CORBA_SequenceDef::_get_type_skel},
+ {"_interface", &POA_CORBA_SequenceDef::_interface_skel},
+ {"_non_existent", &POA_CORBA_SequenceDef::_non_existent_skel},
+ {"_get_element_type_def", &POA_CORBA_SequenceDef::_get_element_type_def_skel},
+ {"_set_element_type_def", &POA_CORBA_SequenceDef::_set_element_type_def_skel},
+ {"_get_element_type", &POA_CORBA_SequenceDef::_get_element_type_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -1, -1, -1, -1, -1, 5, -1, 6, -7, -2, -24, -1, -1, 9,
+ 10, 11, -1, -1, 12, -13, -2, -24, 15,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < WORDLIST_SIZE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 22:45:34 */
+static TAO_CORBA_SequenceDef_Perfect_Hash_OpTable tao_CORBA_SequenceDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+class TAO_ServerRequestInfo_CORBA_SequenceDef_bound_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_SequenceDef_bound_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_SequenceDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA::ULong result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_SequenceDef_bound_get (const TAO_ServerRequestInfo_CORBA_SequenceDef_bound_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_SequenceDef_bound_get &);
+
+private:
+ POA_CORBA_SequenceDef *_tao_impl;
+ CORBA::ULong _result;
+};
+
+TAO_ServerRequestInfo_CORBA_SequenceDef_bound_get::TAO_ServerRequestInfo_CORBA_SequenceDef_bound_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_SequenceDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_SequenceDef_bound_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_SequenceDef_bound_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_SequenceDef_bound_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_SequenceDef_bound_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_SequenceDef_bound_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_SequenceDef_bound_get::result (CORBA::ULong result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_SequenceDef_bound_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_SequenceDef_bound_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_SequenceDef *tao_impl
+ ,
+ const CORBA::ULong & bound
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_SequenceDef_bound_set (const TAO_ServerRequestInfo_CORBA_SequenceDef_bound_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_SequenceDef_bound_set &);
+
+private:
+ POA_CORBA_SequenceDef *_tao_impl;
+ const CORBA::ULong & bound_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_SequenceDef_bound_set::TAO_ServerRequestInfo_CORBA_SequenceDef_bound_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_SequenceDef *tao_impl,
+ const CORBA::ULong & bound
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ bound_ (bound)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_SequenceDef_bound_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= bound_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_SequenceDef_bound_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_SequenceDef_bound_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_SequenceDef_bound_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_SequenceDef_bound_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+class TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_SequenceDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA::TypeCode_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_get (const TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_get &);
+
+private:
+ POA_CORBA_SequenceDef *_tao_impl;
+ CORBA::TypeCode_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_get::TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_SequenceDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_get::result (CORBA::TypeCode_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_def_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_def_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_SequenceDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_IDLType_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_def_get (const TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_def_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_def_get &);
+
+private:
+ POA_CORBA_SequenceDef *_tao_impl;
+ CORBA_IDLType_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_def_get::TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_def_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_SequenceDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_def_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_def_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_def_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_def_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_def_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_def_get::result (CORBA_IDLType_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_def_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_def_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_SequenceDef *tao_impl
+ ,
+ CORBA_IDLType_ptr element_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_def_set (const TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_def_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_def_set &);
+
+private:
+ POA_CORBA_SequenceDef *_tao_impl;
+ CORBA_IDLType_ptr element_type_def_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_def_set::TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_def_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_SequenceDef *tao_impl,
+ CORBA_IDLType_ptr element_type_def
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ element_type_def_ (element_type_def)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_def_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= this->element_type_def_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_def_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_def_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_def_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_def_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+_TAO_CORBA_SequenceDef_Strategized_Proxy_Broker *_TAO_CORBA_SequenceDef_Strategized_Proxy_Broker::the_TAO_CORBA_SequenceDef_Strategized_Proxy_Broker (void)
+{
+ static _TAO_CORBA_SequenceDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+_TAO_CORBA_SequenceDef_Strategized_Proxy_Broker::_TAO_CORBA_SequenceDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+_TAO_CORBA_SequenceDef_Strategized_Proxy_Broker::~_TAO_CORBA_SequenceDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+_TAO_CORBA_SequenceDef_Proxy_Impl&
+_TAO_CORBA_SequenceDef_Strategized_Proxy_Broker::select_proxy (
+ ::CORBA_SequenceDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+_TAO_CORBA_SequenceDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ _TAO_CORBA_SequenceDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::_TAO_CORBA_SequenceDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+_TAO_CORBA_SequenceDef_Proxy_Broker *
+_TAO_CORBA_SequenceDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::_TAO_CORBA_SequenceDef_Strategized_Proxy_Broker::the_TAO_CORBA_SequenceDef_Strategized_Proxy_Broker();
+}
+
+int
+_TAO_CORBA_SequenceDef_Proxy_Broker_Factory_Initializer (long)
+{
+ _TAO_CORBA_SequenceDef_Proxy_Broker_Factory_function_pointer =
+ _TAO_CORBA_SequenceDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int _TAO_CORBA_SequenceDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ _TAO_CORBA_SequenceDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, _TAO_CORBA_SequenceDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+_TAO_CORBA_SequenceDef_ThruPOA_Proxy_Impl::_TAO_CORBA_SequenceDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+CORBA::ULong _TAO_CORBA_SequenceDef_ThruPOA_Proxy_Impl::bound (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::ULong _tao_retval = 0;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "bound",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (_tao_retval);
+ return ACE_reinterpret_cast (
+ POA_CORBA_SequenceDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/SequenceDef:1.0"
+ )
+ )->bound (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_SequenceDef_ThruPOA_Proxy_Impl::bound (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "bound",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_SequenceDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/SequenceDef:1.0"
+ )
+ )->bound (
+ bound
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+CORBA::TypeCode_ptr _TAO_CORBA_SequenceDef_ThruPOA_Proxy_Impl::element_type (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::TypeCode_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "element_type",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_SequenceDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/SequenceDef:1.0"
+ )
+ )->element_type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+CORBA_IDLType_ptr _TAO_CORBA_SequenceDef_ThruPOA_Proxy_Impl::element_type_def (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_IDLType_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "element_type_def",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_SequenceDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/SequenceDef:1.0"
+ )
+ )->element_type_def (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_SequenceDef_ThruPOA_Proxy_Impl::element_type_def (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA_IDLType_ptr element_type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "element_type_def",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_SequenceDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/SequenceDef:1.0"
+ )
+ )->element_type_def (
+ element_type_def
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_CORBA_SequenceDef::POA_CORBA_SequenceDef (void)
+{
+ this->optable_ = &tao_CORBA_SequenceDef_optable;
+}
+
+// copy ctor
+POA_CORBA_SequenceDef::POA_CORBA_SequenceDef (const POA_CORBA_SequenceDef& rhs)
+ : POA_CORBA_IDLType (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_CORBA_SequenceDef::~POA_CORBA_SequenceDef (void)
+{
+}
+
+void POA_CORBA_SequenceDef::_get_bound_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_SequenceDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_SequenceDef *, _tao_object_reference);
+
+ CORBA::ULong _tao_retval = 0;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_SequenceDef_bound_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->bound (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA::ULong _tao_retval_info = _tao_retval;
+ ri.result (_tao_retval_info);
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_SequenceDef::_set_bound_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_SequenceDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_SequenceDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA::ULong bound;
+ if (!(
+ (_tao_in >> bound)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_SequenceDef_bound_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ bound
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->bound (
+ bound
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_SequenceDef::_get_element_type_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_SequenceDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_SequenceDef *, _tao_object_reference);
+
+ CORBA::TypeCode_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->element_type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA::TypeCode_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_SequenceDef::_get_element_type_def_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_SequenceDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_SequenceDef *, _tao_object_reference);
+
+ CORBA_IDLType_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_def_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->element_type_def (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_IDLType_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_SequenceDef::_set_element_type_def_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_SequenceDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_SequenceDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA_IDLType_var element_type_def;
+ if (!(
+ (_tao_in >> element_type_def.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_SequenceDef_element_type_def_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ element_type_def.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->element_type_def (
+ element_type_def.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_SequenceDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_SequenceDef *_tao_impl = (POA_CORBA_SequenceDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_SequenceDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_SequenceDef *_tao_impl = (POA_CORBA_SequenceDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_SequenceDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_SequenceDef *_tao_impl = (POA_CORBA_SequenceDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_CORBA_SequenceDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/SequenceDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IDLType:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_CORBA_SequenceDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/SequenceDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_SequenceDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IDLType:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IDLType_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Object:1.0") == 0)
+ return ACE_static_cast(PortableServer::Servant, this);
+ return 0;
+}
+
+void POA_CORBA_SequenceDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_CORBA_SequenceDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/CORBA/SequenceDef:1.0";
+}
+
+CORBA_SequenceDef*
+POA_CORBA_SequenceDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::CORBA_SequenceDef::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_CORBA_ArrayDef_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 22:45:35 */
+/* C++ code produced by gperf version 2.8 (ACE version) */
+/* Command-line: gperf -m -M -J -c -C -D -E -T -f 0 -F 0 -a -o -t -p -K opname_ -L C++ -Z TAO_CORBA_ArrayDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_CORBA_ArrayDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22, 22, 0,
+ 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22, 22, 0,
+ 22, 22, 0, 0, 0, 22, 0, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 5, 22, 22, 22, 22, 0, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22,
+#else
+ 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 0, 22, 0, 22, 22,
+ 0, 0, 0, 22, 0, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 5, 22, 22, 22,
+ 22, 0, 22, 22, 22, 22, 22, 22,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_CORBA_ArrayDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 11,
+ MIN_WORD_LENGTH = 5,
+ MAX_WORD_LENGTH = 21,
+ MIN_HASH_VALUE = 5,
+ MAX_HASH_VALUE = 21,
+ HASH_VALUE_RANGE = 17,
+ DUPLICATES = 3,
+ WORDLIST_SIZE = 16
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},{"",0},
+ {"_is_a", &POA_CORBA_ArrayDef::_is_a_skel},
+ {"destroy", &POA_CORBA_ArrayDef::destroy_skel},
+ {"_get_type", &POA_CORBA_ArrayDef::_get_type_skel},
+ {"_interface", &POA_CORBA_ArrayDef::_interface_skel},
+ {"_get_length", &POA_CORBA_ArrayDef::_get_length_skel},
+ {"_set_length", &POA_CORBA_ArrayDef::_set_length_skel},
+ {"_get_def_kind", &POA_CORBA_ArrayDef::_get_def_kind_skel},
+ {"_get_element_type", &POA_CORBA_ArrayDef::_get_element_type_skel},
+ {"_non_existent", &POA_CORBA_ArrayDef::_non_existent_skel},
+ {"_get_element_type_def", &POA_CORBA_ArrayDef::_get_element_type_def_skel},
+ {"_set_element_type_def", &POA_CORBA_ArrayDef::_set_element_type_def_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -1, -1, -1, -9, -2, 5, -1, 6, -1, 7, 8, -29, -1, 11,
+ -1, -1, -1, 12, 13, -14, -2, -23,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < WORDLIST_SIZE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 22:45:35 */
+static TAO_CORBA_ArrayDef_Perfect_Hash_OpTable tao_CORBA_ArrayDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+class TAO_ServerRequestInfo_CORBA_ArrayDef_length_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ArrayDef_length_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ArrayDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA::ULong result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_ArrayDef_length_get (const TAO_ServerRequestInfo_CORBA_ArrayDef_length_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ArrayDef_length_get &);
+
+private:
+ POA_CORBA_ArrayDef *_tao_impl;
+ CORBA::ULong _result;
+};
+
+TAO_ServerRequestInfo_CORBA_ArrayDef_length_get::TAO_ServerRequestInfo_CORBA_ArrayDef_length_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ArrayDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ArrayDef_length_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ArrayDef_length_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ArrayDef_length_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ArrayDef_length_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ArrayDef_length_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_ArrayDef_length_get::result (CORBA::ULong result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_ArrayDef_length_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ArrayDef_length_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ArrayDef *tao_impl
+ ,
+ const CORBA::ULong & length
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_ArrayDef_length_set (const TAO_ServerRequestInfo_CORBA_ArrayDef_length_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ArrayDef_length_set &);
+
+private:
+ POA_CORBA_ArrayDef *_tao_impl;
+ const CORBA::ULong & length_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_ArrayDef_length_set::TAO_ServerRequestInfo_CORBA_ArrayDef_length_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ArrayDef *tao_impl,
+ const CORBA::ULong & length
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ length_ (length)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ArrayDef_length_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= length_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ArrayDef_length_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ArrayDef_length_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ArrayDef_length_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ArrayDef_length_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+class TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ArrayDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA::TypeCode_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_get (const TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_get &);
+
+private:
+ POA_CORBA_ArrayDef *_tao_impl;
+ CORBA::TypeCode_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_get::TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ArrayDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_get::result (CORBA::TypeCode_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_def_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_def_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ArrayDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_IDLType_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_def_get (const TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_def_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_def_get &);
+
+private:
+ POA_CORBA_ArrayDef *_tao_impl;
+ CORBA_IDLType_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_def_get::TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_def_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ArrayDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_def_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_def_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_def_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_def_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_def_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_def_get::result (CORBA_IDLType_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_def_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_def_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ArrayDef *tao_impl
+ ,
+ CORBA_IDLType_ptr element_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_def_set (const TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_def_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_def_set &);
+
+private:
+ POA_CORBA_ArrayDef *_tao_impl;
+ CORBA_IDLType_ptr element_type_def_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_def_set::TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_def_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ArrayDef *tao_impl,
+ CORBA_IDLType_ptr element_type_def
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ element_type_def_ (element_type_def)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_def_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= this->element_type_def_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_def_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_def_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_def_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_def_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+_TAO_CORBA_ArrayDef_Strategized_Proxy_Broker *_TAO_CORBA_ArrayDef_Strategized_Proxy_Broker::the_TAO_CORBA_ArrayDef_Strategized_Proxy_Broker (void)
+{
+ static _TAO_CORBA_ArrayDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+_TAO_CORBA_ArrayDef_Strategized_Proxy_Broker::_TAO_CORBA_ArrayDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+_TAO_CORBA_ArrayDef_Strategized_Proxy_Broker::~_TAO_CORBA_ArrayDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+_TAO_CORBA_ArrayDef_Proxy_Impl&
+_TAO_CORBA_ArrayDef_Strategized_Proxy_Broker::select_proxy (
+ ::CORBA_ArrayDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+_TAO_CORBA_ArrayDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ _TAO_CORBA_ArrayDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::_TAO_CORBA_ArrayDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+_TAO_CORBA_ArrayDef_Proxy_Broker *
+_TAO_CORBA_ArrayDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::_TAO_CORBA_ArrayDef_Strategized_Proxy_Broker::the_TAO_CORBA_ArrayDef_Strategized_Proxy_Broker();
+}
+
+int
+_TAO_CORBA_ArrayDef_Proxy_Broker_Factory_Initializer (long)
+{
+ _TAO_CORBA_ArrayDef_Proxy_Broker_Factory_function_pointer =
+ _TAO_CORBA_ArrayDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int _TAO_CORBA_ArrayDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ _TAO_CORBA_ArrayDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, _TAO_CORBA_ArrayDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+_TAO_CORBA_ArrayDef_ThruPOA_Proxy_Impl::_TAO_CORBA_ArrayDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+CORBA::ULong _TAO_CORBA_ArrayDef_ThruPOA_Proxy_Impl::length (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::ULong _tao_retval = 0;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "length",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (_tao_retval);
+ return ACE_reinterpret_cast (
+ POA_CORBA_ArrayDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ArrayDef:1.0"
+ )
+ )->length (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_ArrayDef_ThruPOA_Proxy_Impl::length (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::ULong length
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "length",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_ArrayDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ArrayDef:1.0"
+ )
+ )->length (
+ length
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+CORBA::TypeCode_ptr _TAO_CORBA_ArrayDef_ThruPOA_Proxy_Impl::element_type (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::TypeCode_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "element_type",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_ArrayDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ArrayDef:1.0"
+ )
+ )->element_type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+CORBA_IDLType_ptr _TAO_CORBA_ArrayDef_ThruPOA_Proxy_Impl::element_type_def (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_IDLType_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "element_type_def",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_ArrayDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ArrayDef:1.0"
+ )
+ )->element_type_def (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_ArrayDef_ThruPOA_Proxy_Impl::element_type_def (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA_IDLType_ptr element_type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "element_type_def",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_ArrayDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ArrayDef:1.0"
+ )
+ )->element_type_def (
+ element_type_def
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_CORBA_ArrayDef::POA_CORBA_ArrayDef (void)
+{
+ this->optable_ = &tao_CORBA_ArrayDef_optable;
+}
+
+// copy ctor
+POA_CORBA_ArrayDef::POA_CORBA_ArrayDef (const POA_CORBA_ArrayDef& rhs)
+ : POA_CORBA_IDLType (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_CORBA_ArrayDef::~POA_CORBA_ArrayDef (void)
+{
+}
+
+void POA_CORBA_ArrayDef::_get_length_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ArrayDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ArrayDef *, _tao_object_reference);
+
+ CORBA::ULong _tao_retval = 0;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ArrayDef_length_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->length (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA::ULong _tao_retval_info = _tao_retval;
+ ri.result (_tao_retval_info);
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ArrayDef::_set_length_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_ArrayDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ArrayDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA::ULong length;
+ if (!(
+ (_tao_in >> length)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ArrayDef_length_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ length
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->length (
+ length
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ArrayDef::_get_element_type_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ArrayDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ArrayDef *, _tao_object_reference);
+
+ CORBA::TypeCode_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->element_type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA::TypeCode_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ArrayDef::_get_element_type_def_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ArrayDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ArrayDef *, _tao_object_reference);
+
+ CORBA_IDLType_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_def_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->element_type_def (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_IDLType_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ArrayDef::_set_element_type_def_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_ArrayDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ArrayDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA_IDLType_var element_type_def;
+ if (!(
+ (_tao_in >> element_type_def.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ArrayDef_element_type_def_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ element_type_def.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->element_type_def (
+ element_type_def.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ArrayDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_ArrayDef *_tao_impl = (POA_CORBA_ArrayDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_ArrayDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ArrayDef *_tao_impl = (POA_CORBA_ArrayDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_ArrayDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ArrayDef *_tao_impl = (POA_CORBA_ArrayDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_CORBA_ArrayDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/ArrayDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IDLType:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_CORBA_ArrayDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/ArrayDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_ArrayDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IDLType:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IDLType_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Object:1.0") == 0)
+ return ACE_static_cast(PortableServer::Servant, this);
+ return 0;
+}
+
+void POA_CORBA_ArrayDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_CORBA_ArrayDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/CORBA/ArrayDef:1.0";
+}
+
+CORBA_ArrayDef*
+POA_CORBA_ArrayDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::CORBA_ArrayDef::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_CORBA_ExceptionDef_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 22:45:36 */
+/* C++ code produced by gperf version 2.8 (ACE version) */
+/* Command-line: gperf -m -M -J -c -C -D -E -T -f 0 -F 0 -a -o -t -p -K opname_ -L C++ -Z TAO_CORBA_ExceptionDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_CORBA_ExceptionDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 0,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 0,
+ 61, 25, 8, 0, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 0, 15, 5,
+ 61, 0, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 20, 20, 61, 61, 61, 15, 10, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61,
+#else
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 0, 61, 0, 61, 25,
+ 8, 0, 61, 61, 61, 61, 61, 61, 0, 15,
+ 5, 61, 0, 61, 61, 20, 20, 61, 61, 61,
+ 15, 10, 61, 61, 61, 61, 61, 61,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_CORBA_ExceptionDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 36,
+ MIN_WORD_LENGTH = 4,
+ MAX_WORD_LENGTH = 26,
+ MIN_HASH_VALUE = 5,
+ MAX_HASH_VALUE = 60,
+ HASH_VALUE_RANGE = 56,
+ DUPLICATES = 7,
+ WORDLIST_SIZE = 41
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},{"",0},
+ {"_is_a", &POA_CORBA_ExceptionDef::_is_a_skel},
+ {"lookup", &POA_CORBA_ExceptionDef::lookup_skel},
+ {"_get_type", &POA_CORBA_ExceptionDef::_get_type_skel},
+ {"_set_name", &POA_CORBA_ExceptionDef::_set_name_skel},
+ {"_get_name", &POA_CORBA_ExceptionDef::_get_name_skel},
+ {"_interface", &POA_CORBA_ExceptionDef::_interface_skel},
+ {"lookup_name", &POA_CORBA_ExceptionDef::lookup_name_skel},
+ {"_get_id", &POA_CORBA_ExceptionDef::_get_id_skel},
+ {"_set_id", &POA_CORBA_ExceptionDef::_set_id_skel},
+ {"describe", &POA_CORBA_ExceptionDef::describe_skel},
+ {"_get_version", &POA_CORBA_ExceptionDef::_get_version_skel},
+ {"_set_version", &POA_CORBA_ExceptionDef::_set_version_skel},
+ {"_get_absolute_name", &POA_CORBA_ExceptionDef::_get_absolute_name_skel},
+ {"move", &POA_CORBA_ExceptionDef::move_skel},
+ {"_get_defined_in", &POA_CORBA_ExceptionDef::_get_defined_in_skel},
+ {"_get_def_kind", &POA_CORBA_ExceptionDef::_get_def_kind_skel},
+ {"destroy", &POA_CORBA_ExceptionDef::destroy_skel},
+ {"_get_members", &POA_CORBA_ExceptionDef::_get_members_skel},
+ {"_set_members", &POA_CORBA_ExceptionDef::_set_members_skel},
+ {"_non_existent", &POA_CORBA_ExceptionDef::_non_existent_skel},
+ {"_get_containing_repository", &POA_CORBA_ExceptionDef::_get_containing_repository_skel},
+ {"create_value", &POA_CORBA_ExceptionDef::create_value_skel},
+ {"create_module", &POA_CORBA_ExceptionDef::create_module_skel},
+ {"create_native", &POA_CORBA_ExceptionDef::create_native_skel},
+ {"create_interface", &POA_CORBA_ExceptionDef::create_interface_skel},
+ {"create_union", &POA_CORBA_ExceptionDef::create_union_skel},
+ {"describe_contents", &POA_CORBA_ExceptionDef::describe_contents_skel},
+ {"create_exception", &POA_CORBA_ExceptionDef::create_exception_skel},
+ {"create_local_interface", &POA_CORBA_ExceptionDef::create_local_interface_skel},
+ {"create_abstract_interface", &POA_CORBA_ExceptionDef::create_abstract_interface_skel},
+ {"create_enum", &POA_CORBA_ExceptionDef::create_enum_skel},
+ {"contents", &POA_CORBA_ExceptionDef::contents_skel},
+ {"create_value_box", &POA_CORBA_ExceptionDef::create_value_box_skel},
+ {"create_alias", &POA_CORBA_ExceptionDef::create_alias_skel},
+ {"create_struct", &POA_CORBA_ExceptionDef::create_struct_skel},
+ {"create_constant", &POA_CORBA_ExceptionDef::create_constant_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -1, -1, -1, -7, -3, 5, 6, -12, -2, -66, 10, 11, -1, -15,
+ -2, -68, 14, -64, 17, 18, 19, 20, -1, -1, -1, 21, -1, -1,
+ -1, -1, -22, -2, -62, 24, -27, -2, 25, 26, -64, -1, -1, 29,
+ 30, -1, -1, 31, 32, 33, -1, -1, 34, 35, -1, 36, -1, -1,
+ 37, 38, 39, -1, 40,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < WORDLIST_SIZE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 22:45:36 */
+static TAO_CORBA_ExceptionDef_Perfect_Hash_OpTable tao_CORBA_ExceptionDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+class TAO_ServerRequestInfo_CORBA_ExceptionDef_type_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ExceptionDef_type_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ExceptionDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA::TypeCode_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_ExceptionDef_type_get (const TAO_ServerRequestInfo_CORBA_ExceptionDef_type_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ExceptionDef_type_get &);
+
+private:
+ POA_CORBA_ExceptionDef *_tao_impl;
+ CORBA::TypeCode_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_ExceptionDef_type_get::TAO_ServerRequestInfo_CORBA_ExceptionDef_type_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ExceptionDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ExceptionDef_type_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ExceptionDef_type_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ExceptionDef_type_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ExceptionDef_type_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ExceptionDef_type_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_ExceptionDef_type_get::result (CORBA::TypeCode_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_ExceptionDef_members_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ExceptionDef_members_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ExceptionDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_StructMemberSeq * result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_ExceptionDef_members_get (const TAO_ServerRequestInfo_CORBA_ExceptionDef_members_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ExceptionDef_members_get &);
+
+private:
+ POA_CORBA_ExceptionDef *_tao_impl;
+ CORBA_StructMemberSeq * _result;
+};
+
+TAO_ServerRequestInfo_CORBA_ExceptionDef_members_get::TAO_ServerRequestInfo_CORBA_ExceptionDef_members_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ExceptionDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ExceptionDef_members_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ExceptionDef_members_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ExceptionDef_members_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ExceptionDef_members_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ExceptionDef_members_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_ExceptionDef_members_get::result (CORBA_StructMemberSeq * result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_ExceptionDef_members_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ExceptionDef_members_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ExceptionDef *tao_impl
+ ,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_ExceptionDef_members_set (const TAO_ServerRequestInfo_CORBA_ExceptionDef_members_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ExceptionDef_members_set &);
+
+private:
+ POA_CORBA_ExceptionDef *_tao_impl;
+ const CORBA_StructMemberSeq & members_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_ExceptionDef_members_set::TAO_ServerRequestInfo_CORBA_ExceptionDef_members_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ExceptionDef *tao_impl,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ members_ (members)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ExceptionDef_members_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= this->members_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ExceptionDef_members_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ExceptionDef_members_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ExceptionDef_members_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ExceptionDef_members_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+_TAO_CORBA_ExceptionDef_Strategized_Proxy_Broker *_TAO_CORBA_ExceptionDef_Strategized_Proxy_Broker::the_TAO_CORBA_ExceptionDef_Strategized_Proxy_Broker (void)
+{
+ static _TAO_CORBA_ExceptionDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+_TAO_CORBA_ExceptionDef_Strategized_Proxy_Broker::_TAO_CORBA_ExceptionDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+_TAO_CORBA_ExceptionDef_Strategized_Proxy_Broker::~_TAO_CORBA_ExceptionDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+_TAO_CORBA_ExceptionDef_Proxy_Impl&
+_TAO_CORBA_ExceptionDef_Strategized_Proxy_Broker::select_proxy (
+ ::CORBA_ExceptionDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+_TAO_CORBA_ExceptionDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ _TAO_CORBA_ExceptionDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::_TAO_CORBA_ExceptionDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+_TAO_CORBA_ExceptionDef_Proxy_Broker *
+_TAO_CORBA_ExceptionDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::_TAO_CORBA_ExceptionDef_Strategized_Proxy_Broker::the_TAO_CORBA_ExceptionDef_Strategized_Proxy_Broker();
+}
+
+int
+_TAO_CORBA_ExceptionDef_Proxy_Broker_Factory_Initializer (long)
+{
+ _TAO_CORBA_ExceptionDef_Proxy_Broker_Factory_function_pointer =
+ _TAO_CORBA_ExceptionDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int _TAO_CORBA_ExceptionDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ _TAO_CORBA_ExceptionDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, _TAO_CORBA_ExceptionDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+_TAO_CORBA_ExceptionDef_ThruPOA_Proxy_Impl::_TAO_CORBA_ExceptionDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+CORBA::TypeCode_ptr _TAO_CORBA_ExceptionDef_ThruPOA_Proxy_Impl::type (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::TypeCode_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "type",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_ExceptionDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ExceptionDef:1.0"
+ )
+ )->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+CORBA_StructMemberSeq * _TAO_CORBA_ExceptionDef_ThruPOA_Proxy_Impl::members (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_StructMemberSeq_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "members",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_ExceptionDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ExceptionDef:1.0"
+ )
+ )->members (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_ExceptionDef_ThruPOA_Proxy_Impl::members (
+ CORBA_Object *_collocated_tao_target_,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "members",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_ExceptionDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ExceptionDef:1.0"
+ )
+ )->members (
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_CORBA_ExceptionDef::POA_CORBA_ExceptionDef (void)
+{
+ this->optable_ = &tao_CORBA_ExceptionDef_optable;
+}
+
+// copy ctor
+POA_CORBA_ExceptionDef::POA_CORBA_ExceptionDef (const POA_CORBA_ExceptionDef& rhs)
+ : POA_CORBA_Contained (rhs),
+ POA_CORBA_Container (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_CORBA_ExceptionDef::~POA_CORBA_ExceptionDef (void)
+{
+}
+
+void POA_CORBA_ExceptionDef::_get_type_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ExceptionDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ExceptionDef *, _tao_object_reference);
+
+ CORBA::TypeCode_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ExceptionDef_type_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA::TypeCode_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ExceptionDef::_get_members_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ExceptionDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ExceptionDef *, _tao_object_reference);
+
+ CORBA_StructMemberSeq_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ExceptionDef_members_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->members (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_StructMemberSeq * _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ExceptionDef::_set_members_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_ExceptionDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ExceptionDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA_StructMemberSeq members;
+ if (!(
+ (_tao_in >> members)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ExceptionDef_members_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->members (
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ExceptionDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_ExceptionDef *_tao_impl = (POA_CORBA_ExceptionDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_ExceptionDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ExceptionDef *_tao_impl = (POA_CORBA_ExceptionDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_ExceptionDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ExceptionDef *_tao_impl = (POA_CORBA_ExceptionDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_CORBA_ExceptionDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/ExceptionDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Contained:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Container:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_CORBA_ExceptionDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/ExceptionDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_ExceptionDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Contained:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Contained_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Container:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Container_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Object:1.0") == 0)
+ return ACE_static_cast(PortableServer::Servant, this);
+ return 0;
+}
+
+void POA_CORBA_ExceptionDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_CORBA_ExceptionDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/CORBA/ExceptionDef:1.0";
+}
+
+CORBA_ExceptionDef*
+POA_CORBA_ExceptionDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::CORBA_ExceptionDef::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_CORBA_AttributeDef_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 22:45:38 */
+/* C++ code produced by gperf version 2.8 (ACE version) */
+/* Command-line: gperf -m -M -J -c -C -D -E -T -f 0 -F 0 -a -o -t -p -K opname_ -L C++ -Z TAO_CORBA_AttributeDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_CORBA_AttributeDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 0, 0, 10, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 0, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 15, 37, 37, 37, 37, 10, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37,
+#else
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 0, 37, 0, 37, 37,
+ 0, 0, 10, 37, 37, 37, 37, 37, 37, 0,
+ 0, 37, 37, 37, 37, 37, 15, 37, 37, 37,
+ 37, 10, 37, 37, 37, 37, 37, 37,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_CORBA_AttributeDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 21,
+ MIN_WORD_LENGTH = 4,
+ MAX_WORD_LENGTH = 26,
+ MIN_HASH_VALUE = 4,
+ MAX_HASH_VALUE = 36,
+ HASH_VALUE_RANGE = 33,
+ DUPLICATES = 8,
+ WORDLIST_SIZE = 25
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},
+ {"move", &POA_CORBA_AttributeDef::move_skel},
+ {"_is_a", &POA_CORBA_AttributeDef::_is_a_skel},
+ {"_get_id", &POA_CORBA_AttributeDef::_get_id_skel},
+ {"_set_id", &POA_CORBA_AttributeDef::_set_id_skel},
+ {"describe", &POA_CORBA_AttributeDef::describe_skel},
+ {"_get_type", &POA_CORBA_AttributeDef::_get_type_skel},
+ {"_set_name", &POA_CORBA_AttributeDef::_set_name_skel},
+ {"_get_name", &POA_CORBA_AttributeDef::_get_name_skel},
+ {"_set_mode", &POA_CORBA_AttributeDef::_set_mode_skel},
+ {"_get_mode", &POA_CORBA_AttributeDef::_get_mode_skel},
+ {"_interface", &POA_CORBA_AttributeDef::_interface_skel},
+ {"_get_version", &POA_CORBA_AttributeDef::_get_version_skel},
+ {"_set_version", &POA_CORBA_AttributeDef::_set_version_skel},
+ {"_get_def_kind", &POA_CORBA_AttributeDef::_get_def_kind_skel},
+ {"_get_defined_in", &POA_CORBA_AttributeDef::_get_defined_in_skel},
+ {"destroy", &POA_CORBA_AttributeDef::destroy_skel},
+ {"_get_absolute_name", &POA_CORBA_AttributeDef::_get_absolute_name_skel},
+ {"_get_type_def", &POA_CORBA_AttributeDef::_get_type_def_skel},
+ {"_set_type_def", &POA_CORBA_AttributeDef::_set_type_def_skel},
+ {"_non_existent", &POA_CORBA_AttributeDef::_non_existent_skel},
+ {"_get_containing_repository", &POA_CORBA_AttributeDef::_get_containing_repository_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -9, -5, -15, -2, 4, 5, -1, 48, 8, -45, 14, -1, -46, 17,
+ -1, 18, -1, 19, 20, -6, -2, -21, -2, -38, -1, -1, -1, -1,
+ 23, -1, -1, -1, -1, -1, -1, -1, 24,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < WORDLIST_SIZE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 22:45:38 */
+static TAO_CORBA_AttributeDef_Perfect_Hash_OpTable tao_CORBA_AttributeDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+class TAO_ServerRequestInfo_CORBA_AttributeDef_type_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_AttributeDef_type_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_AttributeDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA::TypeCode_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_AttributeDef_type_get (const TAO_ServerRequestInfo_CORBA_AttributeDef_type_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_AttributeDef_type_get &);
+
+private:
+ POA_CORBA_AttributeDef *_tao_impl;
+ CORBA::TypeCode_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_AttributeDef_type_get::TAO_ServerRequestInfo_CORBA_AttributeDef_type_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_AttributeDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_AttributeDef_type_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_AttributeDef_type_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_AttributeDef_type_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_AttributeDef_type_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_AttributeDef_type_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_AttributeDef_type_get::result (CORBA::TypeCode_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_AttributeDef_type_def_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_AttributeDef_type_def_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_AttributeDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_IDLType_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_AttributeDef_type_def_get (const TAO_ServerRequestInfo_CORBA_AttributeDef_type_def_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_AttributeDef_type_def_get &);
+
+private:
+ POA_CORBA_AttributeDef *_tao_impl;
+ CORBA_IDLType_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_AttributeDef_type_def_get::TAO_ServerRequestInfo_CORBA_AttributeDef_type_def_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_AttributeDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_AttributeDef_type_def_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_AttributeDef_type_def_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_AttributeDef_type_def_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_AttributeDef_type_def_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_AttributeDef_type_def_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_AttributeDef_type_def_get::result (CORBA_IDLType_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_AttributeDef_type_def_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_AttributeDef_type_def_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_AttributeDef *tao_impl
+ ,
+ CORBA_IDLType_ptr type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_AttributeDef_type_def_set (const TAO_ServerRequestInfo_CORBA_AttributeDef_type_def_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_AttributeDef_type_def_set &);
+
+private:
+ POA_CORBA_AttributeDef *_tao_impl;
+ CORBA_IDLType_ptr type_def_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_AttributeDef_type_def_set::TAO_ServerRequestInfo_CORBA_AttributeDef_type_def_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_AttributeDef *tao_impl,
+ CORBA_IDLType_ptr type_def
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ type_def_ (type_def)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_AttributeDef_type_def_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= this->type_def_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_AttributeDef_type_def_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_AttributeDef_type_def_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_AttributeDef_type_def_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_AttributeDef_type_def_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+class TAO_ServerRequestInfo_CORBA_AttributeDef_mode_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_AttributeDef_mode_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_AttributeDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA::AttributeMode result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_AttributeDef_mode_get (const TAO_ServerRequestInfo_CORBA_AttributeDef_mode_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_AttributeDef_mode_get &);
+
+private:
+ POA_CORBA_AttributeDef *_tao_impl;
+ CORBA::AttributeMode _result;
+};
+
+TAO_ServerRequestInfo_CORBA_AttributeDef_mode_get::TAO_ServerRequestInfo_CORBA_AttributeDef_mode_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_AttributeDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_AttributeDef_mode_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_AttributeDef_mode_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_AttributeDef_mode_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_AttributeDef_mode_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_AttributeDef_mode_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_AttributeDef_mode_get::result (CORBA::AttributeMode result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_AttributeDef_mode_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_AttributeDef_mode_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_AttributeDef *tao_impl
+ ,
+ CORBA::AttributeMode & mode
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_AttributeDef_mode_set (const TAO_ServerRequestInfo_CORBA_AttributeDef_mode_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_AttributeDef_mode_set &);
+
+private:
+ POA_CORBA_AttributeDef *_tao_impl;
+ const CORBA::AttributeMode & mode_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_AttributeDef_mode_set::TAO_ServerRequestInfo_CORBA_AttributeDef_mode_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_AttributeDef *tao_impl,
+ CORBA::AttributeMode & mode
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ mode_ (mode)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_AttributeDef_mode_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= this->mode_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_AttributeDef_mode_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_AttributeDef_mode_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_AttributeDef_mode_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_AttributeDef_mode_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+_TAO_CORBA_AttributeDef_Strategized_Proxy_Broker *_TAO_CORBA_AttributeDef_Strategized_Proxy_Broker::the_TAO_CORBA_AttributeDef_Strategized_Proxy_Broker (void)
+{
+ static _TAO_CORBA_AttributeDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+_TAO_CORBA_AttributeDef_Strategized_Proxy_Broker::_TAO_CORBA_AttributeDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+_TAO_CORBA_AttributeDef_Strategized_Proxy_Broker::~_TAO_CORBA_AttributeDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+_TAO_CORBA_AttributeDef_Proxy_Impl&
+_TAO_CORBA_AttributeDef_Strategized_Proxy_Broker::select_proxy (
+ ::CORBA_AttributeDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+_TAO_CORBA_AttributeDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ _TAO_CORBA_AttributeDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::_TAO_CORBA_AttributeDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+_TAO_CORBA_AttributeDef_Proxy_Broker *
+_TAO_CORBA_AttributeDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::_TAO_CORBA_AttributeDef_Strategized_Proxy_Broker::the_TAO_CORBA_AttributeDef_Strategized_Proxy_Broker();
+}
+
+int
+_TAO_CORBA_AttributeDef_Proxy_Broker_Factory_Initializer (long)
+{
+ _TAO_CORBA_AttributeDef_Proxy_Broker_Factory_function_pointer =
+ _TAO_CORBA_AttributeDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int _TAO_CORBA_AttributeDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ _TAO_CORBA_AttributeDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, _TAO_CORBA_AttributeDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+_TAO_CORBA_AttributeDef_ThruPOA_Proxy_Impl::_TAO_CORBA_AttributeDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+CORBA::TypeCode_ptr _TAO_CORBA_AttributeDef_ThruPOA_Proxy_Impl::type (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::TypeCode_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "type",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_AttributeDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/AttributeDef:1.0"
+ )
+ )->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+CORBA_IDLType_ptr _TAO_CORBA_AttributeDef_ThruPOA_Proxy_Impl::type_def (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_IDLType_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "type_def",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_AttributeDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/AttributeDef:1.0"
+ )
+ )->type_def (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_AttributeDef_ThruPOA_Proxy_Impl::type_def (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA_IDLType_ptr type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "type_def",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_AttributeDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/AttributeDef:1.0"
+ )
+ )->type_def (
+ type_def
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+CORBA::AttributeMode _TAO_CORBA_AttributeDef_ThruPOA_Proxy_Impl::mode (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::AttributeMode _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "mode",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (_tao_retval);
+ return ACE_reinterpret_cast (
+ POA_CORBA_AttributeDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/AttributeDef:1.0"
+ )
+ )->mode (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_AttributeDef_ThruPOA_Proxy_Impl::mode (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "mode",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_AttributeDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/AttributeDef:1.0"
+ )
+ )->mode (
+ mode
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_CORBA_AttributeDef::POA_CORBA_AttributeDef (void)
+{
+ this->optable_ = &tao_CORBA_AttributeDef_optable;
+}
+
+// copy ctor
+POA_CORBA_AttributeDef::POA_CORBA_AttributeDef (const POA_CORBA_AttributeDef& rhs)
+ : POA_CORBA_Contained (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_CORBA_AttributeDef::~POA_CORBA_AttributeDef (void)
+{
+}
+
+void POA_CORBA_AttributeDef::_get_type_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_AttributeDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_AttributeDef *, _tao_object_reference);
+
+ CORBA::TypeCode_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_AttributeDef_type_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA::TypeCode_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_AttributeDef::_get_type_def_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_AttributeDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_AttributeDef *, _tao_object_reference);
+
+ CORBA_IDLType_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_AttributeDef_type_def_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->type_def (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_IDLType_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_AttributeDef::_set_type_def_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_AttributeDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_AttributeDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA_IDLType_var type_def;
+ if (!(
+ (_tao_in >> type_def.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_AttributeDef_type_def_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ type_def.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->type_def (
+ type_def.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_AttributeDef::_get_mode_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_AttributeDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_AttributeDef *, _tao_object_reference);
+
+ CORBA::AttributeMode _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_AttributeDef_mode_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->mode (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA::AttributeMode _tao_retval_info = _tao_retval;
+ ri.result (_tao_retval_info);
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_AttributeDef::_set_mode_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_AttributeDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_AttributeDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA::AttributeMode mode;
+ if (!(
+ (_tao_in >> mode)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_AttributeDef_mode_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ mode
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->mode (
+ mode
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_AttributeDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_AttributeDef *_tao_impl = (POA_CORBA_AttributeDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_AttributeDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_AttributeDef *_tao_impl = (POA_CORBA_AttributeDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_AttributeDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_AttributeDef *_tao_impl = (POA_CORBA_AttributeDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_CORBA_AttributeDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/AttributeDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Contained:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_CORBA_AttributeDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/AttributeDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_AttributeDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Contained:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Contained_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Object:1.0") == 0)
+ return ACE_static_cast(PortableServer::Servant, this);
+ return 0;
+}
+
+void POA_CORBA_AttributeDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_CORBA_AttributeDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/CORBA/AttributeDef:1.0";
+}
+
+CORBA_AttributeDef*
+POA_CORBA_AttributeDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::CORBA_AttributeDef::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_CORBA_OperationDef_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 22:45:39 */
+/* C++ code produced by gperf version 2.8 (ACE version) */
+/* Command-line: gperf -m -M -J -c -C -D -E -T -f 0 -F 0 -a -o -t -p -K opname_ -L C++ -Z TAO_CORBA_OperationDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_CORBA_OperationDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 15, 0, 10, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 0, 5,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 0, 20, 37, 37, 37, 37, 10, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37,
+#else
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 0, 37, 0, 37, 37,
+ 15, 0, 10, 37, 37, 37, 37, 37, 37, 0,
+ 5, 37, 37, 37, 37, 0, 20, 37, 37, 37,
+ 37, 10, 37, 37, 37, 37, 37, 37,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_CORBA_OperationDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 27,
+ MIN_WORD_LENGTH = 4,
+ MAX_WORD_LENGTH = 26,
+ MIN_HASH_VALUE = 4,
+ MAX_HASH_VALUE = 36,
+ HASH_VALUE_RANGE = 33,
+ DUPLICATES = 10,
+ WORDLIST_SIZE = 31
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},
+ {"move", &POA_CORBA_OperationDef::move_skel},
+ {"_is_a", &POA_CORBA_OperationDef::_is_a_skel},
+ {"_get_mode", &POA_CORBA_OperationDef::_get_mode_skel},
+ {"_set_name", &POA_CORBA_OperationDef::_set_name_skel},
+ {"_get_name", &POA_CORBA_OperationDef::_get_name_skel},
+ {"_set_mode", &POA_CORBA_OperationDef::_set_mode_skel},
+ {"_interface", &POA_CORBA_OperationDef::_interface_skel},
+ {"_get_params", &POA_CORBA_OperationDef::_get_params_skel},
+ {"_set_params", &POA_CORBA_OperationDef::_set_params_skel},
+ {"_get_contexts", &POA_CORBA_OperationDef::_get_contexts_skel},
+ {"_set_contexts", &POA_CORBA_OperationDef::_set_contexts_skel},
+ {"_get_exceptions", &POA_CORBA_OperationDef::_get_exceptions_skel},
+ {"_set_exceptions", &POA_CORBA_OperationDef::_set_exceptions_skel},
+ {"_get_version", &POA_CORBA_OperationDef::_get_version_skel},
+ {"_set_version", &POA_CORBA_OperationDef::_set_version_skel},
+ {"_get_absolute_name", &POA_CORBA_OperationDef::_get_absolute_name_skel},
+ {"_get_defined_in", &POA_CORBA_OperationDef::_get_defined_in_skel},
+ {"_get_id", &POA_CORBA_OperationDef::_get_id_skel},
+ {"_set_id", &POA_CORBA_OperationDef::_set_id_skel},
+ {"describe", &POA_CORBA_OperationDef::describe_skel},
+ {"_get_result_def", &POA_CORBA_OperationDef::_get_result_def_skel},
+ {"_set_result_def", &POA_CORBA_OperationDef::_set_result_def_skel},
+ {"_get_def_kind", &POA_CORBA_OperationDef::_get_def_kind_skel},
+ {"_get_result", &POA_CORBA_OperationDef::_get_result_skel},
+ {"destroy", &POA_CORBA_OperationDef::destroy_skel},
+ {"_non_existent", &POA_CORBA_OperationDef::_non_existent_skel},
+ {"_get_containing_repository", &POA_CORBA_OperationDef::_get_containing_repository_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 class TAO_operation_db_entry *resword;
+
+ switch (key)
+ {
+ case 4:
+ resword = &wordlist[4]; break;
+ case 5:
+ resword = &wordlist[5]; break;
+ case 9:
+ resword = &wordlist[6];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ resword = &wordlist[7];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ resword = &wordlist[8];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ resword = &wordlist[9];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ return 0;
+ case 10:
+ resword = &wordlist[10]; break;
+ case 11:
+ resword = &wordlist[11];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ resword = &wordlist[12];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ return 0;
+ case 13:
+ resword = &wordlist[13];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ resword = &wordlist[14];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ return 0;
+ case 15:
+ resword = &wordlist[15];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ resword = &wordlist[16];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ return 0;
+ case 17:
+ resword = &wordlist[17];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ resword = &wordlist[18];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ return 0;
+ case 18:
+ resword = &wordlist[19]; break;
+ case 20:
+ resword = &wordlist[20]; break;
+ case 22:
+ resword = &wordlist[21];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ resword = &wordlist[22];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ return 0;
+ case 23:
+ resword = &wordlist[23]; break;
+ case 25:
+ resword = &wordlist[24];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ resword = &wordlist[25];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ return 0;
+ case 28:
+ resword = &wordlist[26]; break;
+ case 31:
+ resword = &wordlist[27]; break;
+ case 32:
+ resword = &wordlist[28]; break;
+ case 33:
+ resword = &wordlist[29]; break;
+ case 36:
+ resword = &wordlist[30]; break;
+ default: return 0;
+ }
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1))
+ return resword;
+ return 0;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 22:45:39 */
+static TAO_CORBA_OperationDef_Perfect_Hash_OpTable tao_CORBA_OperationDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+class TAO_ServerRequestInfo_CORBA_OperationDef_result_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_OperationDef_result_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_OperationDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA::TypeCode_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_OperationDef_result_get (const TAO_ServerRequestInfo_CORBA_OperationDef_result_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_OperationDef_result_get &);
+
+private:
+ POA_CORBA_OperationDef *_tao_impl;
+ CORBA::TypeCode_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_OperationDef_result_get::TAO_ServerRequestInfo_CORBA_OperationDef_result_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_OperationDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_OperationDef_result_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_OperationDef_result_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_OperationDef_result_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_OperationDef_result_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_OperationDef_result_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_OperationDef_result_get::result (CORBA::TypeCode_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_OperationDef_result_def_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_OperationDef_result_def_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_OperationDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_IDLType_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_OperationDef_result_def_get (const TAO_ServerRequestInfo_CORBA_OperationDef_result_def_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_OperationDef_result_def_get &);
+
+private:
+ POA_CORBA_OperationDef *_tao_impl;
+ CORBA_IDLType_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_OperationDef_result_def_get::TAO_ServerRequestInfo_CORBA_OperationDef_result_def_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_OperationDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_OperationDef_result_def_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_OperationDef_result_def_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_OperationDef_result_def_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_OperationDef_result_def_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_OperationDef_result_def_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_OperationDef_result_def_get::result (CORBA_IDLType_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_OperationDef_result_def_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_OperationDef_result_def_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_OperationDef *tao_impl
+ ,
+ CORBA_IDLType_ptr result_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_OperationDef_result_def_set (const TAO_ServerRequestInfo_CORBA_OperationDef_result_def_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_OperationDef_result_def_set &);
+
+private:
+ POA_CORBA_OperationDef *_tao_impl;
+ CORBA_IDLType_ptr result_def_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_OperationDef_result_def_set::TAO_ServerRequestInfo_CORBA_OperationDef_result_def_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_OperationDef *tao_impl,
+ CORBA_IDLType_ptr result_def
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ result_def_ (result_def)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_OperationDef_result_def_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= this->result_def_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_OperationDef_result_def_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_OperationDef_result_def_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_OperationDef_result_def_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_OperationDef_result_def_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+class TAO_ServerRequestInfo_CORBA_OperationDef_params_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_OperationDef_params_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_OperationDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_ParDescriptionSeq * result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_OperationDef_params_get (const TAO_ServerRequestInfo_CORBA_OperationDef_params_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_OperationDef_params_get &);
+
+private:
+ POA_CORBA_OperationDef *_tao_impl;
+ CORBA_ParDescriptionSeq * _result;
+};
+
+TAO_ServerRequestInfo_CORBA_OperationDef_params_get::TAO_ServerRequestInfo_CORBA_OperationDef_params_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_OperationDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_OperationDef_params_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_OperationDef_params_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_OperationDef_params_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_OperationDef_params_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_OperationDef_params_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_OperationDef_params_get::result (CORBA_ParDescriptionSeq * result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_OperationDef_params_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_OperationDef_params_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_OperationDef *tao_impl
+ ,
+ const CORBA_ParDescriptionSeq & params
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_OperationDef_params_set (const TAO_ServerRequestInfo_CORBA_OperationDef_params_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_OperationDef_params_set &);
+
+private:
+ POA_CORBA_OperationDef *_tao_impl;
+ const CORBA_ParDescriptionSeq & params_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_OperationDef_params_set::TAO_ServerRequestInfo_CORBA_OperationDef_params_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_OperationDef *tao_impl,
+ const CORBA_ParDescriptionSeq & params
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ params_ (params)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_OperationDef_params_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= this->params_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_OperationDef_params_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_OperationDef_params_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_OperationDef_params_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_OperationDef_params_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+class TAO_ServerRequestInfo_CORBA_OperationDef_mode_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_OperationDef_mode_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_OperationDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA::OperationMode result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_OperationDef_mode_get (const TAO_ServerRequestInfo_CORBA_OperationDef_mode_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_OperationDef_mode_get &);
+
+private:
+ POA_CORBA_OperationDef *_tao_impl;
+ CORBA::OperationMode _result;
+};
+
+TAO_ServerRequestInfo_CORBA_OperationDef_mode_get::TAO_ServerRequestInfo_CORBA_OperationDef_mode_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_OperationDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_OperationDef_mode_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_OperationDef_mode_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_OperationDef_mode_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_OperationDef_mode_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_OperationDef_mode_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_OperationDef_mode_get::result (CORBA::OperationMode result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_OperationDef_mode_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_OperationDef_mode_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_OperationDef *tao_impl
+ ,
+ CORBA::OperationMode & mode
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_OperationDef_mode_set (const TAO_ServerRequestInfo_CORBA_OperationDef_mode_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_OperationDef_mode_set &);
+
+private:
+ POA_CORBA_OperationDef *_tao_impl;
+ const CORBA::OperationMode & mode_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_OperationDef_mode_set::TAO_ServerRequestInfo_CORBA_OperationDef_mode_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_OperationDef *tao_impl,
+ CORBA::OperationMode & mode
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ mode_ (mode)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_OperationDef_mode_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= this->mode_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_OperationDef_mode_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_OperationDef_mode_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_OperationDef_mode_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_OperationDef_mode_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+class TAO_ServerRequestInfo_CORBA_OperationDef_contexts_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_OperationDef_contexts_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_OperationDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_ContextIdSeq * result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_OperationDef_contexts_get (const TAO_ServerRequestInfo_CORBA_OperationDef_contexts_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_OperationDef_contexts_get &);
+
+private:
+ POA_CORBA_OperationDef *_tao_impl;
+ CORBA_ContextIdSeq * _result;
+};
+
+TAO_ServerRequestInfo_CORBA_OperationDef_contexts_get::TAO_ServerRequestInfo_CORBA_OperationDef_contexts_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_OperationDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_OperationDef_contexts_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_OperationDef_contexts_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_OperationDef_contexts_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_OperationDef_contexts_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_OperationDef_contexts_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_OperationDef_contexts_get::result (CORBA_ContextIdSeq * result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_OperationDef_contexts_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_OperationDef_contexts_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_OperationDef *tao_impl
+ ,
+ const CORBA_ContextIdSeq & contexts
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_OperationDef_contexts_set (const TAO_ServerRequestInfo_CORBA_OperationDef_contexts_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_OperationDef_contexts_set &);
+
+private:
+ POA_CORBA_OperationDef *_tao_impl;
+ const CORBA_ContextIdSeq & contexts_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_OperationDef_contexts_set::TAO_ServerRequestInfo_CORBA_OperationDef_contexts_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_OperationDef *tao_impl,
+ const CORBA_ContextIdSeq & contexts
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ contexts_ (contexts)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_OperationDef_contexts_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= this->contexts_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_OperationDef_contexts_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_OperationDef_contexts_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_OperationDef_contexts_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_OperationDef_contexts_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+class TAO_ServerRequestInfo_CORBA_OperationDef_exceptions_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_OperationDef_exceptions_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_OperationDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_ExceptionDefSeq * result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_OperationDef_exceptions_get (const TAO_ServerRequestInfo_CORBA_OperationDef_exceptions_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_OperationDef_exceptions_get &);
+
+private:
+ POA_CORBA_OperationDef *_tao_impl;
+ CORBA_ExceptionDefSeq * _result;
+};
+
+TAO_ServerRequestInfo_CORBA_OperationDef_exceptions_get::TAO_ServerRequestInfo_CORBA_OperationDef_exceptions_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_OperationDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_OperationDef_exceptions_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_OperationDef_exceptions_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_OperationDef_exceptions_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_OperationDef_exceptions_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_OperationDef_exceptions_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_OperationDef_exceptions_get::result (CORBA_ExceptionDefSeq * result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_OperationDef_exceptions_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_OperationDef_exceptions_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_OperationDef *tao_impl
+ ,
+ const CORBA_ExceptionDefSeq & exceptions
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_OperationDef_exceptions_set (const TAO_ServerRequestInfo_CORBA_OperationDef_exceptions_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_OperationDef_exceptions_set &);
+
+private:
+ POA_CORBA_OperationDef *_tao_impl;
+ const CORBA_ExceptionDefSeq & exceptions_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_OperationDef_exceptions_set::TAO_ServerRequestInfo_CORBA_OperationDef_exceptions_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_OperationDef *tao_impl,
+ const CORBA_ExceptionDefSeq & exceptions
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ exceptions_ (exceptions)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_OperationDef_exceptions_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= this->exceptions_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_OperationDef_exceptions_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_OperationDef_exceptions_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_OperationDef_exceptions_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_OperationDef_exceptions_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+_TAO_CORBA_OperationDef_Strategized_Proxy_Broker *_TAO_CORBA_OperationDef_Strategized_Proxy_Broker::the_TAO_CORBA_OperationDef_Strategized_Proxy_Broker (void)
+{
+ static _TAO_CORBA_OperationDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+_TAO_CORBA_OperationDef_Strategized_Proxy_Broker::_TAO_CORBA_OperationDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+_TAO_CORBA_OperationDef_Strategized_Proxy_Broker::~_TAO_CORBA_OperationDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+_TAO_CORBA_OperationDef_Proxy_Impl&
+_TAO_CORBA_OperationDef_Strategized_Proxy_Broker::select_proxy (
+ ::CORBA_OperationDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+_TAO_CORBA_OperationDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ _TAO_CORBA_OperationDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::_TAO_CORBA_OperationDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+_TAO_CORBA_OperationDef_Proxy_Broker *
+_TAO_CORBA_OperationDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::_TAO_CORBA_OperationDef_Strategized_Proxy_Broker::the_TAO_CORBA_OperationDef_Strategized_Proxy_Broker();
+}
+
+int
+_TAO_CORBA_OperationDef_Proxy_Broker_Factory_Initializer (long)
+{
+ _TAO_CORBA_OperationDef_Proxy_Broker_Factory_function_pointer =
+ _TAO_CORBA_OperationDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int _TAO_CORBA_OperationDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ _TAO_CORBA_OperationDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, _TAO_CORBA_OperationDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+_TAO_CORBA_OperationDef_ThruPOA_Proxy_Impl::_TAO_CORBA_OperationDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+CORBA::TypeCode_ptr _TAO_CORBA_OperationDef_ThruPOA_Proxy_Impl::result (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::TypeCode_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "result",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_OperationDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/OperationDef:1.0"
+ )
+ )->result (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+CORBA_IDLType_ptr _TAO_CORBA_OperationDef_ThruPOA_Proxy_Impl::result_def (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_IDLType_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "result_def",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_OperationDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/OperationDef:1.0"
+ )
+ )->result_def (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_OperationDef_ThruPOA_Proxy_Impl::result_def (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA_IDLType_ptr result_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "result_def",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_OperationDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/OperationDef:1.0"
+ )
+ )->result_def (
+ result_def
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+CORBA_ParDescriptionSeq * _TAO_CORBA_OperationDef_ThruPOA_Proxy_Impl::params (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_ParDescriptionSeq_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "params",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_OperationDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/OperationDef:1.0"
+ )
+ )->params (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_OperationDef_ThruPOA_Proxy_Impl::params (
+ CORBA_Object *_collocated_tao_target_,
+ const CORBA_ParDescriptionSeq & params
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "params",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_OperationDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/OperationDef:1.0"
+ )
+ )->params (
+ params
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+CORBA::OperationMode _TAO_CORBA_OperationDef_ThruPOA_Proxy_Impl::mode (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::OperationMode _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "mode",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (_tao_retval);
+ return ACE_reinterpret_cast (
+ POA_CORBA_OperationDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/OperationDef:1.0"
+ )
+ )->mode (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_OperationDef_ThruPOA_Proxy_Impl::mode (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::OperationMode mode
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "mode",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_OperationDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/OperationDef:1.0"
+ )
+ )->mode (
+ mode
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+CORBA_ContextIdSeq * _TAO_CORBA_OperationDef_ThruPOA_Proxy_Impl::contexts (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_ContextIdSeq_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "contexts",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_OperationDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/OperationDef:1.0"
+ )
+ )->contexts (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_OperationDef_ThruPOA_Proxy_Impl::contexts (
+ CORBA_Object *_collocated_tao_target_,
+ const CORBA_ContextIdSeq & contexts
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "contexts",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_OperationDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/OperationDef:1.0"
+ )
+ )->contexts (
+ contexts
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+CORBA_ExceptionDefSeq * _TAO_CORBA_OperationDef_ThruPOA_Proxy_Impl::exceptions (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_ExceptionDefSeq_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "exceptions",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_OperationDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/OperationDef:1.0"
+ )
+ )->exceptions (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_OperationDef_ThruPOA_Proxy_Impl::exceptions (
+ CORBA_Object *_collocated_tao_target_,
+ const CORBA_ExceptionDefSeq & exceptions
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "exceptions",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_OperationDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/OperationDef:1.0"
+ )
+ )->exceptions (
+ exceptions
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_CORBA_OperationDef::POA_CORBA_OperationDef (void)
+{
+ this->optable_ = &tao_CORBA_OperationDef_optable;
+}
+
+// copy ctor
+POA_CORBA_OperationDef::POA_CORBA_OperationDef (const POA_CORBA_OperationDef& rhs)
+ : POA_CORBA_Contained (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_CORBA_OperationDef::~POA_CORBA_OperationDef (void)
+{
+}
+
+void POA_CORBA_OperationDef::_get_result_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_OperationDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_OperationDef *, _tao_object_reference);
+
+ CORBA::TypeCode_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_OperationDef_result_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->result (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA::TypeCode_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_OperationDef::_get_result_def_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_OperationDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_OperationDef *, _tao_object_reference);
+
+ CORBA_IDLType_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_OperationDef_result_def_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->result_def (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_IDLType_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_OperationDef::_set_result_def_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_OperationDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_OperationDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA_IDLType_var result_def;
+ if (!(
+ (_tao_in >> result_def.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_OperationDef_result_def_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ result_def.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->result_def (
+ result_def.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_OperationDef::_get_params_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_OperationDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_OperationDef *, _tao_object_reference);
+
+ CORBA_ParDescriptionSeq_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_OperationDef_params_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->params (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_ParDescriptionSeq * _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_OperationDef::_set_params_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_OperationDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_OperationDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA_ParDescriptionSeq params;
+ if (!(
+ (_tao_in >> params)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_OperationDef_params_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ params
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->params (
+ params
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_OperationDef::_get_mode_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_OperationDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_OperationDef *, _tao_object_reference);
+
+ CORBA::OperationMode _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_OperationDef_mode_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->mode (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA::OperationMode _tao_retval_info = _tao_retval;
+ ri.result (_tao_retval_info);
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_OperationDef::_set_mode_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_OperationDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_OperationDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA::OperationMode mode;
+ if (!(
+ (_tao_in >> mode)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_OperationDef_mode_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ mode
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->mode (
+ mode
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_OperationDef::_get_contexts_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_OperationDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_OperationDef *, _tao_object_reference);
+
+ CORBA_ContextIdSeq_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_OperationDef_contexts_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->contexts (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_ContextIdSeq * _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_OperationDef::_set_contexts_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_OperationDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_OperationDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA_ContextIdSeq contexts;
+ if (!(
+ (_tao_in >> contexts)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_OperationDef_contexts_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ contexts
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->contexts (
+ contexts
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_OperationDef::_get_exceptions_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_OperationDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_OperationDef *, _tao_object_reference);
+
+ CORBA_ExceptionDefSeq_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_OperationDef_exceptions_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->exceptions (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_ExceptionDefSeq * _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_OperationDef::_set_exceptions_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_OperationDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_OperationDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA_ExceptionDefSeq exceptions;
+ if (!(
+ (_tao_in >> exceptions)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_OperationDef_exceptions_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ exceptions
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->exceptions (
+ exceptions
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_OperationDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_OperationDef *_tao_impl = (POA_CORBA_OperationDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_OperationDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_OperationDef *_tao_impl = (POA_CORBA_OperationDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_OperationDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_OperationDef *_tao_impl = (POA_CORBA_OperationDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_CORBA_OperationDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/OperationDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Contained:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_CORBA_OperationDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/OperationDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_OperationDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Contained:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Contained_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Object:1.0") == 0)
+ return ACE_static_cast(PortableServer::Servant, this);
+ return 0;
+}
+
+void POA_CORBA_OperationDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_CORBA_OperationDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/CORBA/OperationDef:1.0";
+}
+
+CORBA_OperationDef*
+POA_CORBA_OperationDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::CORBA_OperationDef::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_CORBA_InterfaceDef_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 22:45:40 */
+/* C++ code produced by gperf version 2.8 (ACE version) */
+/* Command-line: gperf -m -M -J -c -C -D -E -T -f 0 -F 0 -a -o -t -p -K opname_ -L C++ -Z TAO_CORBA_InterfaceDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_CORBA_InterfaceDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 25,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 0,
+ 71, 0, 20, 0, 71, 71, 71, 5, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 20, 0, 5,
+ 71, 15, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 25, 11, 71, 71, 71, 20, 0, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71,
+#else
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 25, 71, 0, 71, 0,
+ 20, 0, 71, 71, 71, 5, 71, 71, 20, 0,
+ 5, 71, 15, 71, 71, 25, 11, 71, 71, 71,
+ 20, 0, 71, 71, 71, 71, 71, 71,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_CORBA_InterfaceDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 40,
+ MIN_WORD_LENGTH = 4,
+ MAX_WORD_LENGTH = 26,
+ MIN_HASH_VALUE = 4,
+ MAX_HASH_VALUE = 70,
+ HASH_VALUE_RANGE = 67,
+ DUPLICATES = 9,
+ WORDLIST_SIZE = 44
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},
+ {"move", &POA_CORBA_InterfaceDef::move_skel},
+ {"is_a", &POA_CORBA_InterfaceDef::is_a_skel},
+ {"create_enum", &POA_CORBA_InterfaceDef::create_enum_skel},
+ {"create_value", &POA_CORBA_InterfaceDef::create_value_skel},
+ {"create_module", &POA_CORBA_InterfaceDef::create_module_skel},
+ {"create_native", &POA_CORBA_InterfaceDef::create_native_skel},
+ {"create_attribute", &POA_CORBA_InterfaceDef::create_attribute_skel},
+ {"create_interface", &POA_CORBA_InterfaceDef::create_interface_skel},
+ {"create_union", &POA_CORBA_InterfaceDef::create_union_skel},
+ {"create_operation", &POA_CORBA_InterfaceDef::create_operation_skel},
+ {"create_exception", &POA_CORBA_InterfaceDef::create_exception_skel},
+ {"create_local_interface", &POA_CORBA_InterfaceDef::create_local_interface_skel},
+ {"create_struct", &POA_CORBA_InterfaceDef::create_struct_skel},
+ {"create_abstract_interface", &POA_CORBA_InterfaceDef::create_abstract_interface_skel},
+ {"create_constant", &POA_CORBA_InterfaceDef::create_constant_skel},
+ {"destroy", &POA_CORBA_InterfaceDef::destroy_skel},
+ {"describe", &POA_CORBA_InterfaceDef::describe_skel},
+ {"_is_a", &POA_CORBA_InterfaceDef::_is_a_skel},
+ {"lookup_name", &POA_CORBA_InterfaceDef::lookup_name_skel},
+ {"contents", &POA_CORBA_InterfaceDef::contents_skel},
+ {"_get_name", &POA_CORBA_InterfaceDef::_get_name_skel},
+ {"_get_type", &POA_CORBA_InterfaceDef::_get_type_skel},
+ {"_set_name", &POA_CORBA_InterfaceDef::_set_name_skel},
+ {"_interface", &POA_CORBA_InterfaceDef::_interface_skel},
+ {"create_value_box", &POA_CORBA_InterfaceDef::create_value_box_skel},
+ {"create_alias", &POA_CORBA_InterfaceDef::create_alias_skel},
+ {"describe_interface", &POA_CORBA_InterfaceDef::describe_interface_skel},
+ {"lookup", &POA_CORBA_InterfaceDef::lookup_skel},
+ {"_get_version", &POA_CORBA_InterfaceDef::_get_version_skel},
+ {"_set_version", &POA_CORBA_InterfaceDef::_set_version_skel},
+ {"_get_absolute_name", &POA_CORBA_InterfaceDef::_get_absolute_name_skel},
+ {"_get_defined_in", &POA_CORBA_InterfaceDef::_get_defined_in_skel},
+ {"_non_existent", &POA_CORBA_InterfaceDef::_non_existent_skel},
+ {"_get_containing_repository", &POA_CORBA_InterfaceDef::_get_containing_repository_skel},
+ {"_get_id", &POA_CORBA_InterfaceDef::_get_id_skel},
+ {"_set_id", &POA_CORBA_InterfaceDef::_set_id_skel},
+ {"_get_def_kind", &POA_CORBA_InterfaceDef::_get_def_kind_skel},
+ {"describe_contents", &POA_CORBA_InterfaceDef::describe_contents_skel},
+ {"_get_base_interfaces", &POA_CORBA_InterfaceDef::_get_base_interfaces_skel},
+ {"_set_base_interfaces", &POA_CORBA_InterfaceDef::_set_base_interfaces_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -1, -1, -1, -1, 4, -8, -2, -10, -2, 5, -1, 6, 7, -78,
+ -13, -2, -79, 12, -1, -24, -3, -77, 15, -1, 16, 17, 18, 19,
+ 20, -1, 21, 22, -1, 23, -85, 27, 28, 29, 30, -32, -2, 31,
+ -73, 34, -1, 35, -1, -38, -2, 36, -1, 37, -75, -1, -1, -1,
+ -1, -1, 40, -1, -1, -1, 41, -1, -1, -1, -1, -1, -42, -2,
+ -72,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < WORDLIST_SIZE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 22:45:41 */
+static TAO_CORBA_InterfaceDef_Perfect_Hash_OpTable tao_CORBA_InterfaceDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+class TAO_ServerRequestInfo_CORBA_InterfaceDef_base_interfaces_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_InterfaceDef_base_interfaces_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_InterfaceDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_InterfaceDefSeq * result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_InterfaceDef_base_interfaces_get (const TAO_ServerRequestInfo_CORBA_InterfaceDef_base_interfaces_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_InterfaceDef_base_interfaces_get &);
+
+private:
+ POA_CORBA_InterfaceDef *_tao_impl;
+ CORBA_InterfaceDefSeq * _result;
+};
+
+TAO_ServerRequestInfo_CORBA_InterfaceDef_base_interfaces_get::TAO_ServerRequestInfo_CORBA_InterfaceDef_base_interfaces_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_InterfaceDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_InterfaceDef_base_interfaces_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_InterfaceDef_base_interfaces_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_InterfaceDef_base_interfaces_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_InterfaceDef_base_interfaces_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_InterfaceDef_base_interfaces_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_InterfaceDef_base_interfaces_get::result (CORBA_InterfaceDefSeq * result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_InterfaceDef_base_interfaces_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_InterfaceDef_base_interfaces_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_InterfaceDef *tao_impl
+ ,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_InterfaceDef_base_interfaces_set (const TAO_ServerRequestInfo_CORBA_InterfaceDef_base_interfaces_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_InterfaceDef_base_interfaces_set &);
+
+private:
+ POA_CORBA_InterfaceDef *_tao_impl;
+ const CORBA_InterfaceDefSeq & base_interfaces_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_InterfaceDef_base_interfaces_set::TAO_ServerRequestInfo_CORBA_InterfaceDef_base_interfaces_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_InterfaceDef *tao_impl,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ base_interfaces_ (base_interfaces)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_InterfaceDef_base_interfaces_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= this->base_interfaces_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_InterfaceDef_base_interfaces_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_InterfaceDef_base_interfaces_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_InterfaceDef_base_interfaces_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_InterfaceDef_base_interfaces_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+class TAO_ServerRequestInfo_CORBA_InterfaceDef_is_a : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_InterfaceDef_is_a (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_InterfaceDef *tao_impl
+ ,
+ const char * interface_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA::Boolean result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_InterfaceDef_is_a (const TAO_ServerRequestInfo_CORBA_InterfaceDef_is_a &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_InterfaceDef_is_a &);
+
+private:
+ POA_CORBA_InterfaceDef *_tao_impl;
+ const char * interface_id_;
+ CORBA::Boolean _result;
+};
+
+TAO_ServerRequestInfo_CORBA_InterfaceDef_is_a::TAO_ServerRequestInfo_CORBA_InterfaceDef_is_a (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_InterfaceDef *tao_impl,
+ const char * interface_id
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ interface_id_ (interface_id)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_InterfaceDef_is_a::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= interface_id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_InterfaceDef_is_a::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_InterfaceDef_is_a::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= CORBA::Any::from_boolean (this->_result);
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_InterfaceDef_is_a::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_InterfaceDef_is_a::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_InterfaceDef_is_a::result (CORBA::Boolean result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_InterfaceDef_describe_interface : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_InterfaceDef_describe_interface (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_InterfaceDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_InterfaceDef::FullInterfaceDescription * result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_InterfaceDef_describe_interface (const TAO_ServerRequestInfo_CORBA_InterfaceDef_describe_interface &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_InterfaceDef_describe_interface &);
+
+private:
+ POA_CORBA_InterfaceDef *_tao_impl;
+ CORBA_InterfaceDef::FullInterfaceDescription * _result;
+};
+
+TAO_ServerRequestInfo_CORBA_InterfaceDef_describe_interface::TAO_ServerRequestInfo_CORBA_InterfaceDef_describe_interface (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_InterfaceDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_InterfaceDef_describe_interface::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_InterfaceDef_describe_interface::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_InterfaceDef_describe_interface::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_InterfaceDef_describe_interface::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_InterfaceDef_describe_interface::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_InterfaceDef_describe_interface::result (CORBA_InterfaceDef::FullInterfaceDescription * result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_InterfaceDef_create_attribute : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_InterfaceDef_create_attribute (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_InterfaceDef *tao_impl
+ ,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ CORBA::AttributeMode & mode
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_AttributeDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_InterfaceDef_create_attribute (const TAO_ServerRequestInfo_CORBA_InterfaceDef_create_attribute &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_InterfaceDef_create_attribute &);
+
+private:
+ POA_CORBA_InterfaceDef *_tao_impl;
+ const char * id_;
+ const char * name_;
+ const char * version_;
+ CORBA_IDLType_ptr type_;
+ const CORBA::AttributeMode & mode_;
+ CORBA_AttributeDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_InterfaceDef_create_attribute::TAO_ServerRequestInfo_CORBA_InterfaceDef_create_attribute (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_InterfaceDef *tao_impl,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ CORBA::AttributeMode & mode
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ id_ (id),
+ name_ (name),
+ version_ (version),
+ type_ (type),
+ mode_ (mode)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_InterfaceDef_create_attribute::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (5);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= name_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= version_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->type_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->mode_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_InterfaceDef_create_attribute::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_InterfaceDef_create_attribute::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_InterfaceDef_create_attribute::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_InterfaceDef_create_attribute::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_InterfaceDef_create_attribute::result (CORBA_AttributeDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_InterfaceDef_create_operation : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_InterfaceDef_create_operation (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_InterfaceDef *tao_impl
+ ,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr result,
+ CORBA::OperationMode & mode,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions,
+ const CORBA_ContextIdSeq & contexts
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_OperationDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_InterfaceDef_create_operation (const TAO_ServerRequestInfo_CORBA_InterfaceDef_create_operation &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_InterfaceDef_create_operation &);
+
+private:
+ POA_CORBA_InterfaceDef *_tao_impl;
+ const char * id_;
+ const char * name_;
+ const char * version_;
+ CORBA_IDLType_ptr result_;
+ const CORBA::OperationMode & mode_;
+ const CORBA_ParDescriptionSeq & params_;
+ const CORBA_ExceptionDefSeq & exceptions_;
+ const CORBA_ContextIdSeq & contexts_;
+ CORBA_OperationDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_InterfaceDef_create_operation::TAO_ServerRequestInfo_CORBA_InterfaceDef_create_operation (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_InterfaceDef *tao_impl,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr result,
+ CORBA::OperationMode & mode,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions,
+ const CORBA_ContextIdSeq & contexts
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ id_ (id),
+ name_ (name),
+ version_ (version),
+ result_ (result),
+ mode_ (mode),
+ params_ (params),
+ exceptions_ (exceptions),
+ contexts_ (contexts)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_InterfaceDef_create_operation::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (8);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= name_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= version_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->result_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->mode_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->params_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->exceptions_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->contexts_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_InterfaceDef_create_operation::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_InterfaceDef_create_operation::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_InterfaceDef_create_operation::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_InterfaceDef_create_operation::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_InterfaceDef_create_operation::result (CORBA_OperationDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+_TAO_CORBA_InterfaceDef_Strategized_Proxy_Broker *_TAO_CORBA_InterfaceDef_Strategized_Proxy_Broker::the_TAO_CORBA_InterfaceDef_Strategized_Proxy_Broker (void)
+{
+ static _TAO_CORBA_InterfaceDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+_TAO_CORBA_InterfaceDef_Strategized_Proxy_Broker::_TAO_CORBA_InterfaceDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+_TAO_CORBA_InterfaceDef_Strategized_Proxy_Broker::~_TAO_CORBA_InterfaceDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+_TAO_CORBA_InterfaceDef_Proxy_Impl&
+_TAO_CORBA_InterfaceDef_Strategized_Proxy_Broker::select_proxy (
+ ::CORBA_InterfaceDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+_TAO_CORBA_InterfaceDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ _TAO_CORBA_InterfaceDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::_TAO_CORBA_InterfaceDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+_TAO_CORBA_InterfaceDef_Proxy_Broker *
+_TAO_CORBA_InterfaceDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::_TAO_CORBA_InterfaceDef_Strategized_Proxy_Broker::the_TAO_CORBA_InterfaceDef_Strategized_Proxy_Broker();
+}
+
+int
+_TAO_CORBA_InterfaceDef_Proxy_Broker_Factory_Initializer (long)
+{
+ _TAO_CORBA_InterfaceDef_Proxy_Broker_Factory_function_pointer =
+ _TAO_CORBA_InterfaceDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int _TAO_CORBA_InterfaceDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ _TAO_CORBA_InterfaceDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, _TAO_CORBA_InterfaceDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+_TAO_CORBA_InterfaceDef_ThruPOA_Proxy_Impl::_TAO_CORBA_InterfaceDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+CORBA_InterfaceDefSeq * _TAO_CORBA_InterfaceDef_ThruPOA_Proxy_Impl::base_interfaces (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_InterfaceDefSeq_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "base_interfaces",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_InterfaceDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/InterfaceDef:1.0"
+ )
+ )->base_interfaces (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_InterfaceDef_ThruPOA_Proxy_Impl::base_interfaces (
+ CORBA_Object *_collocated_tao_target_,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "base_interfaces",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_InterfaceDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/InterfaceDef:1.0"
+ )
+ )->base_interfaces (
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+CORBA::Boolean _TAO_CORBA_InterfaceDef_ThruPOA_Proxy_Impl::is_a (
+ CORBA_Object *_collocated_tao_target_,
+ const char * interface_id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::Boolean _tao_retval = 0;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "is_a",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (_tao_retval);
+ return ACE_reinterpret_cast (
+ POA_CORBA_InterfaceDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/InterfaceDef:1.0"
+ )
+ )->is_a (
+ interface_id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+CORBA_InterfaceDef::FullInterfaceDescription * _TAO_CORBA_InterfaceDef_ThruPOA_Proxy_Impl::describe_interface (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_InterfaceDef::FullInterfaceDescription_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "describe_interface",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_InterfaceDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/InterfaceDef:1.0"
+ )
+ )->describe_interface (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+CORBA_AttributeDef_ptr _TAO_CORBA_InterfaceDef_ThruPOA_Proxy_Impl::create_attribute (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_AttributeDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "create_attribute",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_InterfaceDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/InterfaceDef:1.0"
+ )
+ )->create_attribute (
+ id,
+ name,
+ version,
+ type,
+ mode
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+CORBA_OperationDef_ptr _TAO_CORBA_InterfaceDef_ThruPOA_Proxy_Impl::create_operation (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr result,
+ CORBA::OperationMode mode,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions,
+ const CORBA_ContextIdSeq & contexts
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_OperationDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "create_operation",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_InterfaceDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/InterfaceDef:1.0"
+ )
+ )->create_operation (
+ id,
+ name,
+ version,
+ result,
+ mode,
+ params,
+ exceptions,
+ contexts
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_CORBA_InterfaceDef::POA_CORBA_InterfaceDef (void)
+{
+ this->optable_ = &tao_CORBA_InterfaceDef_optable;
+}
+
+// copy ctor
+POA_CORBA_InterfaceDef::POA_CORBA_InterfaceDef (const POA_CORBA_InterfaceDef& rhs)
+ : POA_CORBA_Container (rhs),
+ POA_CORBA_Contained (rhs),
+ POA_CORBA_IDLType (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_CORBA_InterfaceDef::~POA_CORBA_InterfaceDef (void)
+{
+}
+
+void POA_CORBA_InterfaceDef::_get_base_interfaces_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_InterfaceDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_InterfaceDef *, _tao_object_reference);
+
+ CORBA_InterfaceDefSeq_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_InterfaceDef_base_interfaces_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->base_interfaces (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_InterfaceDefSeq * _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_InterfaceDef::_set_base_interfaces_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_InterfaceDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_InterfaceDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA_InterfaceDefSeq base_interfaces;
+ if (!(
+ (_tao_in >> base_interfaces)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_InterfaceDef_base_interfaces_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->base_interfaces (
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_InterfaceDef::is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_InterfaceDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_InterfaceDef *, _tao_object_reference);
+
+ CORBA::Boolean _tao_retval = 0;
+ CORBA::String_var interface_id;
+ if (!(
+ (_tao_in >> interface_id.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_InterfaceDef_is_a ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ interface_id.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->is_a (
+ interface_id.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA::Boolean _tao_retval_info = _tao_retval;
+ ri.result (_tao_retval_info);
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << CORBA::Any::from_boolean (_tao_retval))
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_InterfaceDef::describe_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_InterfaceDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_InterfaceDef *, _tao_object_reference);
+
+ CORBA_InterfaceDef::FullInterfaceDescription_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_InterfaceDef_describe_interface ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->describe_interface (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_InterfaceDef::FullInterfaceDescription * _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_InterfaceDef::create_attribute_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_InterfaceDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_InterfaceDef *, _tao_object_reference);
+
+ CORBA_AttributeDef_var _tao_retval;
+ CORBA::String_var id;
+ CORBA::String_var name;
+ CORBA::String_var version;
+ CORBA_IDLType_var type;
+ CORBA::AttributeMode mode;
+ if (!(
+ (_tao_in >> id.out ()) &&
+ (_tao_in >> name.out ()) &&
+ (_tao_in >> version.out ()) &&
+ (_tao_in >> type.out ()) &&
+ (_tao_in >> mode)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_InterfaceDef_create_attribute ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ id.in (),
+ name.in (),
+ version.in (),
+ type.in (),
+ mode
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->create_attribute (
+ id.in (),
+ name.in (),
+ version.in (),
+ type.in (),
+ mode
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_AttributeDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_InterfaceDef::create_operation_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_InterfaceDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_InterfaceDef *, _tao_object_reference);
+
+ CORBA_OperationDef_var _tao_retval;
+ CORBA::String_var id;
+ CORBA::String_var name;
+ CORBA::String_var version;
+ CORBA_IDLType_var result;
+ CORBA::OperationMode mode;
+ CORBA_ParDescriptionSeq params;
+ CORBA_ExceptionDefSeq exceptions;
+ CORBA_ContextIdSeq contexts;
+ if (!(
+ (_tao_in >> id.out ()) &&
+ (_tao_in >> name.out ()) &&
+ (_tao_in >> version.out ()) &&
+ (_tao_in >> result.out ()) &&
+ (_tao_in >> mode) &&
+ (_tao_in >> params) &&
+ (_tao_in >> exceptions) &&
+ (_tao_in >> contexts)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_InterfaceDef_create_operation ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ id.in (),
+ name.in (),
+ version.in (),
+ result.in (),
+ mode,
+ params,
+ exceptions,
+ contexts
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->create_operation (
+ id.in (),
+ name.in (),
+ version.in (),
+ result.in (),
+ mode,
+ params,
+ exceptions,
+ contexts
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_OperationDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_InterfaceDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_InterfaceDef *_tao_impl = (POA_CORBA_InterfaceDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_InterfaceDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_InterfaceDef *_tao_impl = (POA_CORBA_InterfaceDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_InterfaceDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_InterfaceDef *_tao_impl = (POA_CORBA_InterfaceDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_CORBA_InterfaceDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/InterfaceDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Container:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Contained:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IDLType:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_CORBA_InterfaceDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/InterfaceDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_InterfaceDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Container:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Container_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Contained:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Contained_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IDLType:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IDLType_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Object:1.0") == 0)
+ return ACE_static_cast(PortableServer::Servant, this);
+ return 0;
+}
+
+void POA_CORBA_InterfaceDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_CORBA_InterfaceDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/CORBA/InterfaceDef:1.0";
+}
+
+CORBA_InterfaceDef*
+POA_CORBA_InterfaceDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::CORBA_InterfaceDef::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_CORBA_AbstractInterfaceDef_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 22:45:42 */
+/* C++ code produced by gperf version 2.8 (ACE version) */
+/* Command-line: gperf -m -M -J -c -C -D -E -T -f 0 -F 0 -a -o -t -p -K opname_ -L C++ -Z TAO_CORBA_AbstractInterfaceDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_CORBA_AbstractInterfaceDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 25,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 0,
+ 71, 0, 20, 0, 71, 71, 71, 5, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 20, 0, 5,
+ 71, 15, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 25, 11, 71, 71, 71, 20, 0, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71,
+#else
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 25, 71, 0, 71, 0,
+ 20, 0, 71, 71, 71, 5, 71, 71, 20, 0,
+ 5, 71, 15, 71, 71, 25, 11, 71, 71, 71,
+ 20, 0, 71, 71, 71, 71, 71, 71,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_CORBA_AbstractInterfaceDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 40,
+ MIN_WORD_LENGTH = 4,
+ MAX_WORD_LENGTH = 26,
+ MIN_HASH_VALUE = 4,
+ MAX_HASH_VALUE = 70,
+ HASH_VALUE_RANGE = 67,
+ DUPLICATES = 9,
+ WORDLIST_SIZE = 44
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},
+ {"move", &POA_CORBA_AbstractInterfaceDef::move_skel},
+ {"is_a", &POA_CORBA_AbstractInterfaceDef::is_a_skel},
+ {"create_enum", &POA_CORBA_AbstractInterfaceDef::create_enum_skel},
+ {"create_value", &POA_CORBA_AbstractInterfaceDef::create_value_skel},
+ {"create_module", &POA_CORBA_AbstractInterfaceDef::create_module_skel},
+ {"create_native", &POA_CORBA_AbstractInterfaceDef::create_native_skel},
+ {"create_attribute", &POA_CORBA_AbstractInterfaceDef::create_attribute_skel},
+ {"create_interface", &POA_CORBA_AbstractInterfaceDef::create_interface_skel},
+ {"create_union", &POA_CORBA_AbstractInterfaceDef::create_union_skel},
+ {"create_operation", &POA_CORBA_AbstractInterfaceDef::create_operation_skel},
+ {"create_exception", &POA_CORBA_AbstractInterfaceDef::create_exception_skel},
+ {"create_local_interface", &POA_CORBA_AbstractInterfaceDef::create_local_interface_skel},
+ {"create_struct", &POA_CORBA_AbstractInterfaceDef::create_struct_skel},
+ {"create_abstract_interface", &POA_CORBA_AbstractInterfaceDef::create_abstract_interface_skel},
+ {"create_constant", &POA_CORBA_AbstractInterfaceDef::create_constant_skel},
+ {"destroy", &POA_CORBA_AbstractInterfaceDef::destroy_skel},
+ {"describe", &POA_CORBA_AbstractInterfaceDef::describe_skel},
+ {"_is_a", &POA_CORBA_AbstractInterfaceDef::_is_a_skel},
+ {"lookup_name", &POA_CORBA_AbstractInterfaceDef::lookup_name_skel},
+ {"contents", &POA_CORBA_AbstractInterfaceDef::contents_skel},
+ {"_get_name", &POA_CORBA_AbstractInterfaceDef::_get_name_skel},
+ {"_get_type", &POA_CORBA_AbstractInterfaceDef::_get_type_skel},
+ {"_set_name", &POA_CORBA_AbstractInterfaceDef::_set_name_skel},
+ {"_interface", &POA_CORBA_AbstractInterfaceDef::_interface_skel},
+ {"create_value_box", &POA_CORBA_AbstractInterfaceDef::create_value_box_skel},
+ {"create_alias", &POA_CORBA_AbstractInterfaceDef::create_alias_skel},
+ {"describe_interface", &POA_CORBA_AbstractInterfaceDef::describe_interface_skel},
+ {"lookup", &POA_CORBA_AbstractInterfaceDef::lookup_skel},
+ {"_get_version", &POA_CORBA_AbstractInterfaceDef::_get_version_skel},
+ {"_set_version", &POA_CORBA_AbstractInterfaceDef::_set_version_skel},
+ {"_get_absolute_name", &POA_CORBA_AbstractInterfaceDef::_get_absolute_name_skel},
+ {"_get_defined_in", &POA_CORBA_AbstractInterfaceDef::_get_defined_in_skel},
+ {"_non_existent", &POA_CORBA_AbstractInterfaceDef::_non_existent_skel},
+ {"_get_containing_repository", &POA_CORBA_AbstractInterfaceDef::_get_containing_repository_skel},
+ {"_get_id", &POA_CORBA_AbstractInterfaceDef::_get_id_skel},
+ {"_set_id", &POA_CORBA_AbstractInterfaceDef::_set_id_skel},
+ {"_get_def_kind", &POA_CORBA_AbstractInterfaceDef::_get_def_kind_skel},
+ {"describe_contents", &POA_CORBA_AbstractInterfaceDef::describe_contents_skel},
+ {"_get_base_interfaces", &POA_CORBA_AbstractInterfaceDef::_get_base_interfaces_skel},
+ {"_set_base_interfaces", &POA_CORBA_AbstractInterfaceDef::_set_base_interfaces_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -1, -1, -1, -1, 4, -8, -2, -10, -2, 5, -1, 6, 7, -78,
+ -13, -2, -79, 12, -1, -24, -3, -77, 15, -1, 16, 17, 18, 19,
+ 20, -1, 21, 22, -1, 23, -85, 27, 28, 29, 30, -32, -2, 31,
+ -73, 34, -1, 35, -1, -38, -2, 36, -1, 37, -75, -1, -1, -1,
+ -1, -1, 40, -1, -1, -1, 41, -1, -1, -1, -1, -1, -42, -2,
+ -72,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < WORDLIST_SIZE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 22:45:42 */
+static TAO_CORBA_AbstractInterfaceDef_Perfect_Hash_OpTable tao_CORBA_AbstractInterfaceDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+_TAO_CORBA_AbstractInterfaceDef_Strategized_Proxy_Broker *_TAO_CORBA_AbstractInterfaceDef_Strategized_Proxy_Broker::the_TAO_CORBA_AbstractInterfaceDef_Strategized_Proxy_Broker (void)
+{
+ static _TAO_CORBA_AbstractInterfaceDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+_TAO_CORBA_AbstractInterfaceDef_Strategized_Proxy_Broker::_TAO_CORBA_AbstractInterfaceDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+_TAO_CORBA_AbstractInterfaceDef_Strategized_Proxy_Broker::~_TAO_CORBA_AbstractInterfaceDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+_TAO_CORBA_AbstractInterfaceDef_Proxy_Impl&
+_TAO_CORBA_AbstractInterfaceDef_Strategized_Proxy_Broker::select_proxy (
+ ::CORBA_AbstractInterfaceDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+_TAO_CORBA_AbstractInterfaceDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ _TAO_CORBA_AbstractInterfaceDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::_TAO_CORBA_AbstractInterfaceDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+_TAO_CORBA_AbstractInterfaceDef_Proxy_Broker *
+_TAO_CORBA_AbstractInterfaceDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::_TAO_CORBA_AbstractInterfaceDef_Strategized_Proxy_Broker::the_TAO_CORBA_AbstractInterfaceDef_Strategized_Proxy_Broker();
+}
+
+int
+_TAO_CORBA_AbstractInterfaceDef_Proxy_Broker_Factory_Initializer (long)
+{
+ _TAO_CORBA_AbstractInterfaceDef_Proxy_Broker_Factory_function_pointer =
+ _TAO_CORBA_AbstractInterfaceDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int _TAO_CORBA_AbstractInterfaceDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ _TAO_CORBA_AbstractInterfaceDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, _TAO_CORBA_AbstractInterfaceDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+_TAO_CORBA_AbstractInterfaceDef_ThruPOA_Proxy_Impl::_TAO_CORBA_AbstractInterfaceDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_CORBA_AbstractInterfaceDef::POA_CORBA_AbstractInterfaceDef (void)
+{
+ this->optable_ = &tao_CORBA_AbstractInterfaceDef_optable;
+}
+
+// copy ctor
+POA_CORBA_AbstractInterfaceDef::POA_CORBA_AbstractInterfaceDef (const POA_CORBA_AbstractInterfaceDef& rhs)
+ : POA_CORBA_InterfaceDef (rhs),
+ POA_CORBA_Container (rhs),
+ POA_CORBA_Contained (rhs),
+ POA_CORBA_IDLType (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_CORBA_AbstractInterfaceDef::~POA_CORBA_AbstractInterfaceDef (void)
+{
+}
+
+void POA_CORBA_AbstractInterfaceDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_AbstractInterfaceDef *_tao_impl = (POA_CORBA_AbstractInterfaceDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_AbstractInterfaceDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_AbstractInterfaceDef *_tao_impl = (POA_CORBA_AbstractInterfaceDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_AbstractInterfaceDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_AbstractInterfaceDef *_tao_impl = (POA_CORBA_AbstractInterfaceDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_CORBA_AbstractInterfaceDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/AbstractInterfaceDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/InterfaceDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Container:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Contained:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IDLType:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_CORBA_AbstractInterfaceDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/AbstractInterfaceDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_AbstractInterfaceDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/InterfaceDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_InterfaceDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Container:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Container_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Contained:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Contained_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IDLType:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IDLType_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Object:1.0") == 0)
+ return ACE_static_cast(PortableServer::Servant, this);
+ return 0;
+}
+
+void POA_CORBA_AbstractInterfaceDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_CORBA_AbstractInterfaceDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/CORBA/AbstractInterfaceDef:1.0";
+}
+
+CORBA_AbstractInterfaceDef*
+POA_CORBA_AbstractInterfaceDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::CORBA_AbstractInterfaceDef::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_CORBA_LocalInterfaceDef_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 22:45:43 */
+/* C++ code produced by gperf version 2.8 (ACE version) */
+/* Command-line: gperf -m -M -J -c -C -D -E -T -f 0 -F 0 -a -o -t -p -K opname_ -L C++ -Z TAO_CORBA_LocalInterfaceDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_CORBA_LocalInterfaceDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 25,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 0,
+ 71, 0, 20, 0, 71, 71, 71, 5, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 20, 0, 5,
+ 71, 15, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 25, 11, 71, 71, 71, 20, 0, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71,
+#else
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
+ 71, 71, 71, 71, 71, 25, 71, 0, 71, 0,
+ 20, 0, 71, 71, 71, 5, 71, 71, 20, 0,
+ 5, 71, 15, 71, 71, 25, 11, 71, 71, 71,
+ 20, 0, 71, 71, 71, 71, 71, 71,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_CORBA_LocalInterfaceDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 40,
+ MIN_WORD_LENGTH = 4,
+ MAX_WORD_LENGTH = 26,
+ MIN_HASH_VALUE = 4,
+ MAX_HASH_VALUE = 70,
+ HASH_VALUE_RANGE = 67,
+ DUPLICATES = 9,
+ WORDLIST_SIZE = 44
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},
+ {"move", &POA_CORBA_LocalInterfaceDef::move_skel},
+ {"is_a", &POA_CORBA_LocalInterfaceDef::is_a_skel},
+ {"create_enum", &POA_CORBA_LocalInterfaceDef::create_enum_skel},
+ {"create_value", &POA_CORBA_LocalInterfaceDef::create_value_skel},
+ {"create_module", &POA_CORBA_LocalInterfaceDef::create_module_skel},
+ {"create_native", &POA_CORBA_LocalInterfaceDef::create_native_skel},
+ {"create_attribute", &POA_CORBA_LocalInterfaceDef::create_attribute_skel},
+ {"create_interface", &POA_CORBA_LocalInterfaceDef::create_interface_skel},
+ {"create_union", &POA_CORBA_LocalInterfaceDef::create_union_skel},
+ {"create_operation", &POA_CORBA_LocalInterfaceDef::create_operation_skel},
+ {"create_exception", &POA_CORBA_LocalInterfaceDef::create_exception_skel},
+ {"create_local_interface", &POA_CORBA_LocalInterfaceDef::create_local_interface_skel},
+ {"create_struct", &POA_CORBA_LocalInterfaceDef::create_struct_skel},
+ {"create_abstract_interface", &POA_CORBA_LocalInterfaceDef::create_abstract_interface_skel},
+ {"create_constant", &POA_CORBA_LocalInterfaceDef::create_constant_skel},
+ {"destroy", &POA_CORBA_LocalInterfaceDef::destroy_skel},
+ {"describe", &POA_CORBA_LocalInterfaceDef::describe_skel},
+ {"_is_a", &POA_CORBA_LocalInterfaceDef::_is_a_skel},
+ {"lookup_name", &POA_CORBA_LocalInterfaceDef::lookup_name_skel},
+ {"contents", &POA_CORBA_LocalInterfaceDef::contents_skel},
+ {"_get_name", &POA_CORBA_LocalInterfaceDef::_get_name_skel},
+ {"_get_type", &POA_CORBA_LocalInterfaceDef::_get_type_skel},
+ {"_set_name", &POA_CORBA_LocalInterfaceDef::_set_name_skel},
+ {"_interface", &POA_CORBA_LocalInterfaceDef::_interface_skel},
+ {"create_value_box", &POA_CORBA_LocalInterfaceDef::create_value_box_skel},
+ {"create_alias", &POA_CORBA_LocalInterfaceDef::create_alias_skel},
+ {"describe_interface", &POA_CORBA_LocalInterfaceDef::describe_interface_skel},
+ {"lookup", &POA_CORBA_LocalInterfaceDef::lookup_skel},
+ {"_get_version", &POA_CORBA_LocalInterfaceDef::_get_version_skel},
+ {"_set_version", &POA_CORBA_LocalInterfaceDef::_set_version_skel},
+ {"_get_absolute_name", &POA_CORBA_LocalInterfaceDef::_get_absolute_name_skel},
+ {"_get_defined_in", &POA_CORBA_LocalInterfaceDef::_get_defined_in_skel},
+ {"_non_existent", &POA_CORBA_LocalInterfaceDef::_non_existent_skel},
+ {"_get_containing_repository", &POA_CORBA_LocalInterfaceDef::_get_containing_repository_skel},
+ {"_get_id", &POA_CORBA_LocalInterfaceDef::_get_id_skel},
+ {"_set_id", &POA_CORBA_LocalInterfaceDef::_set_id_skel},
+ {"_get_def_kind", &POA_CORBA_LocalInterfaceDef::_get_def_kind_skel},
+ {"describe_contents", &POA_CORBA_LocalInterfaceDef::describe_contents_skel},
+ {"_get_base_interfaces", &POA_CORBA_LocalInterfaceDef::_get_base_interfaces_skel},
+ {"_set_base_interfaces", &POA_CORBA_LocalInterfaceDef::_set_base_interfaces_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -1, -1, -1, -1, 4, -8, -2, -10, -2, 5, -1, 6, 7, -78,
+ -13, -2, -79, 12, -1, -24, -3, -77, 15, -1, 16, 17, 18, 19,
+ 20, -1, 21, 22, -1, 23, -85, 27, 28, 29, 30, -32, -2, 31,
+ -73, 34, -1, 35, -1, -38, -2, 36, -1, 37, -75, -1, -1, -1,
+ -1, -1, 40, -1, -1, -1, 41, -1, -1, -1, -1, -1, -42, -2,
+ -72,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < WORDLIST_SIZE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 22:45:43 */
+static TAO_CORBA_LocalInterfaceDef_Perfect_Hash_OpTable tao_CORBA_LocalInterfaceDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+_TAO_CORBA_LocalInterfaceDef_Strategized_Proxy_Broker *_TAO_CORBA_LocalInterfaceDef_Strategized_Proxy_Broker::the_TAO_CORBA_LocalInterfaceDef_Strategized_Proxy_Broker (void)
+{
+ static _TAO_CORBA_LocalInterfaceDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+_TAO_CORBA_LocalInterfaceDef_Strategized_Proxy_Broker::_TAO_CORBA_LocalInterfaceDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+_TAO_CORBA_LocalInterfaceDef_Strategized_Proxy_Broker::~_TAO_CORBA_LocalInterfaceDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+_TAO_CORBA_LocalInterfaceDef_Proxy_Impl&
+_TAO_CORBA_LocalInterfaceDef_Strategized_Proxy_Broker::select_proxy (
+ ::CORBA_LocalInterfaceDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+_TAO_CORBA_LocalInterfaceDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ _TAO_CORBA_LocalInterfaceDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::_TAO_CORBA_LocalInterfaceDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+_TAO_CORBA_LocalInterfaceDef_Proxy_Broker *
+_TAO_CORBA_LocalInterfaceDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::_TAO_CORBA_LocalInterfaceDef_Strategized_Proxy_Broker::the_TAO_CORBA_LocalInterfaceDef_Strategized_Proxy_Broker();
+}
+
+int
+_TAO_CORBA_LocalInterfaceDef_Proxy_Broker_Factory_Initializer (long)
+{
+ _TAO_CORBA_LocalInterfaceDef_Proxy_Broker_Factory_function_pointer =
+ _TAO_CORBA_LocalInterfaceDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int _TAO_CORBA_LocalInterfaceDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ _TAO_CORBA_LocalInterfaceDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, _TAO_CORBA_LocalInterfaceDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+_TAO_CORBA_LocalInterfaceDef_ThruPOA_Proxy_Impl::_TAO_CORBA_LocalInterfaceDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_CORBA_LocalInterfaceDef::POA_CORBA_LocalInterfaceDef (void)
+{
+ this->optable_ = &tao_CORBA_LocalInterfaceDef_optable;
+}
+
+// copy ctor
+POA_CORBA_LocalInterfaceDef::POA_CORBA_LocalInterfaceDef (const POA_CORBA_LocalInterfaceDef& rhs)
+ : POA_CORBA_InterfaceDef (rhs),
+ POA_CORBA_Container (rhs),
+ POA_CORBA_Contained (rhs),
+ POA_CORBA_IDLType (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_CORBA_LocalInterfaceDef::~POA_CORBA_LocalInterfaceDef (void)
+{
+}
+
+void POA_CORBA_LocalInterfaceDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_LocalInterfaceDef *_tao_impl = (POA_CORBA_LocalInterfaceDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_LocalInterfaceDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_LocalInterfaceDef *_tao_impl = (POA_CORBA_LocalInterfaceDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_LocalInterfaceDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_LocalInterfaceDef *_tao_impl = (POA_CORBA_LocalInterfaceDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_CORBA_LocalInterfaceDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/LocalInterfaceDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/InterfaceDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Container:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Contained:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IDLType:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_CORBA_LocalInterfaceDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/LocalInterfaceDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_LocalInterfaceDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/InterfaceDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_InterfaceDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Container:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Container_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Contained:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Contained_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IDLType:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IDLType_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Object:1.0") == 0)
+ return ACE_static_cast(PortableServer::Servant, this);
+ return 0;
+}
+
+void POA_CORBA_LocalInterfaceDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_CORBA_LocalInterfaceDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/CORBA/LocalInterfaceDef:1.0";
+}
+
+CORBA_LocalInterfaceDef*
+POA_CORBA_LocalInterfaceDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::CORBA_LocalInterfaceDef::_unchecked_narrow (obj.in ());
+}
+
+
+
+#endif /* ifndef */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IFR_BasicS.h b/TAO/orbsvcs/orbsvcs/IFRService/IFR_BasicS.h
new file mode 100644
index 00000000000..eefdd907bda
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_BasicS.h
@@ -0,0 +1,6490 @@
+// -*- C++ -*-
+//
+// $Id$
+
+// **** Code generated by the The ACE ORB (TAO) IDL Compiler ****
+// TAO and the TAO IDL Compiler have been developed by:
+// Center for Distributed Object Computing
+// Washington University
+// St. Louis, MO
+// USA
+// http://www.cs.wustl.edu/~schmidt/doc-center.html
+// and
+// Distributed Object Computing Laboratory
+// University of California at Irvine
+// Irvine, CA
+// USA
+// http://doc.ece.uci.edu/
+//
+// Information about TAO is available at:
+// http://www.cs.wustl.edu/~schmidt/TAO.html
+
+#ifndef _TAO_IDL__________ORBSVCS_IFR_SERVICE_ORIG_IFR_BASICS_H_
+#define _TAO_IDL__________ORBSVCS_IFR_SERVICE_ORIG_IFR_BASICS_H_
+
+#include "ace/pre.h"
+#include "IFR_BaseS.h"
+#include "tao/IFR_Client/IFR_BasicC.h"
+
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+
+#include "tao/PortableServer/PortableServer.h"
+#include "tao/PortableServer/Servant_Base.h"
+#include "tao/PortableServer/Collocated_Object.h"
+#include "tao/PortableServer/ThruPOA_Object_Proxy_Impl.h"
+#include "tao/PortableServer/Direct_Object_Proxy_Impl.h"
+#if defined(_MSC_VER)
+#if (_MSC_VER >= 1200)
+#pragma warning(push)
+#endif /* _MSC_VER >= 1200 */
+#pragma warning(disable:4250)
+#endif /* _MSC_VER */
+
+#if defined (__BORLANDC__)
+#pragma option push -w-rvl -w-rch -w-ccc -w-inl
+#endif /* __BORLANDC__ */
+
+class POA_CORBA_Repository;
+typedef POA_CORBA_Repository *POA_CORBA_Repository_ptr;
+// Forward Classes Declaration
+class _TAO_CORBA_Repository_ThruPOA_Proxy_Impl;
+class _TAO_CORBA_Repository_Strategized_Proxy_Broker;
+
+class POA_CORBA_Repository : public virtual POA_CORBA_Container
+{
+protected:
+ POA_CORBA_Repository (void);
+
+public:
+ POA_CORBA_Repository (const POA_CORBA_Repository& rhs);
+ virtual ~POA_CORBA_Repository (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::CORBA_Repository *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ virtual CORBA_Contained_ptr lookup_id (
+ const char * search_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void lookup_id_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA::TypeCode_ptr get_canonical_typecode (
+ CORBA::TypeCode_ptr tc
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void get_canonical_typecode_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_PrimitiveDef_ptr get_primitive (
+ CORBA::PrimitiveKind kind
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void get_primitive_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_StringDef_ptr create_string (
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void create_string_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_WstringDef_ptr create_wstring (
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void create_wstring_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_SequenceDef_ptr create_sequence (
+ CORBA::ULong bound,
+ CORBA_IDLType_ptr element_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void create_sequence_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_ArrayDef_ptr create_array (
+ CORBA::ULong length,
+ CORBA_IDLType_ptr element_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void create_array_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_FixedDef_ptr create_fixed (
+ CORBA::UShort digits,
+ CORBA::Short scale
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void create_fixed_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void lookup_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void lookup_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_module_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_constant_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_struct_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_union_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_enum_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_alias_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_value_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_value_box_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_exception_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_native_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_abstract_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_local_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+};
+
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Declaration
+//
+
+class _TAO_CORBA_Repository_Strategized_Proxy_Broker : public virtual ::_TAO_CORBA_Repository_Proxy_Broker
+{
+public:
+ _TAO_CORBA_Repository_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_CORBA_Repository_Strategized_Proxy_Broker (void);
+
+ virtual ::_TAO_CORBA_Repository_Proxy_Impl &select_proxy (
+ ::CORBA_Repository *object
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::_TAO_CORBA_Repository_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+public:
+ static _TAO_CORBA_Repository_Strategized_Proxy_Broker *the_TAO_CORBA_Repository_Strategized_Proxy_Broker (void);
+};
+
+
+//
+// End Strategized Proxy Broker Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Impl. Declaration
+//
+
+class _TAO_CORBA_Repository_ThruPOA_Proxy_Impl :
+ public virtual ::_TAO_CORBA_Repository_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_Container_ThruPOA_Proxy_Impl
+
+{
+public:
+ _TAO_CORBA_Repository_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_CORBA_Repository_ThruPOA_Proxy_Impl (void) { }
+
+ virtual CORBA_Contained_ptr lookup_id (
+ CORBA_Object *_collocated_tao_target_,
+ const char * search_id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA::TypeCode_ptr get_canonical_typecode (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::TypeCode_ptr tc
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_PrimitiveDef_ptr get_primitive (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::PrimitiveKind kind
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_StringDef_ptr create_string (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_WstringDef_ptr create_wstring (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_SequenceDef_ptr create_sequence (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::ULong bound,
+ CORBA_IDLType_ptr element_type
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_ArrayDef_ptr create_array (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::ULong length,
+ CORBA_IDLType_ptr element_type
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_FixedDef_ptr create_fixed (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::UShort digits,
+ CORBA::Short scale
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+
+};
+
+//
+// ThruPOA Proxy Impl. Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+class POA_CORBA_ModuleDef;
+typedef POA_CORBA_ModuleDef *POA_CORBA_ModuleDef_ptr;
+// Forward Classes Declaration
+class _TAO_CORBA_ModuleDef_ThruPOA_Proxy_Impl;
+class _TAO_CORBA_ModuleDef_Strategized_Proxy_Broker;
+
+class POA_CORBA_ModuleDef : public virtual POA_CORBA_Container, public virtual POA_CORBA_Contained
+{
+protected:
+ POA_CORBA_ModuleDef (void);
+
+public:
+ POA_CORBA_ModuleDef (const POA_CORBA_ModuleDef& rhs);
+ virtual ~POA_CORBA_ModuleDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::CORBA_ModuleDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ static void lookup_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void lookup_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_module_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_constant_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_struct_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_union_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_enum_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_alias_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_value_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_value_box_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_exception_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_native_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_abstract_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_local_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+};
+
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Declaration
+//
+
+class _TAO_CORBA_ModuleDef_Strategized_Proxy_Broker : public virtual ::_TAO_CORBA_ModuleDef_Proxy_Broker
+{
+public:
+ _TAO_CORBA_ModuleDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_CORBA_ModuleDef_Strategized_Proxy_Broker (void);
+
+ virtual ::_TAO_CORBA_ModuleDef_Proxy_Impl &select_proxy (
+ ::CORBA_ModuleDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::_TAO_CORBA_ModuleDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+public:
+ static _TAO_CORBA_ModuleDef_Strategized_Proxy_Broker *the_TAO_CORBA_ModuleDef_Strategized_Proxy_Broker (void);
+};
+
+
+//
+// End Strategized Proxy Broker Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Impl. Declaration
+//
+
+class _TAO_CORBA_ModuleDef_ThruPOA_Proxy_Impl :
+ public virtual ::_TAO_CORBA_ModuleDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_Container_ThruPOA_Proxy_Impl,
+ public virtual ::_TAO_CORBA_Contained_ThruPOA_Proxy_Impl
+
+{
+public:
+ _TAO_CORBA_ModuleDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_CORBA_ModuleDef_ThruPOA_Proxy_Impl (void) { }
+
+};
+
+
+//
+// ThruPOA Proxy Impl. Declaration
+///////////////////////////////////////////////////////////////////////
+
+class POA_CORBA_ConstantDef;
+typedef POA_CORBA_ConstantDef *POA_CORBA_ConstantDef_ptr;
+// Forward Classes Declaration
+class _TAO_CORBA_ConstantDef_ThruPOA_Proxy_Impl;
+class _TAO_CORBA_ConstantDef_Strategized_Proxy_Broker;
+
+class POA_CORBA_ConstantDef : public virtual POA_CORBA_Contained
+{
+protected:
+ POA_CORBA_ConstantDef (void);
+
+public:
+ POA_CORBA_ConstantDef (const POA_CORBA_ConstantDef& rhs);
+ virtual ~POA_CORBA_ConstantDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::CORBA_ConstantDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ virtual CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_type_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_IDLType_ptr type_def (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_type_def_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void type_def (
+ CORBA_IDLType_ptr type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_type_def_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA::Any * value (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_value_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void value (
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_value_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+};
+
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Declaration
+//
+
+class _TAO_CORBA_ConstantDef_Strategized_Proxy_Broker : public virtual ::_TAO_CORBA_ConstantDef_Proxy_Broker
+{
+public:
+ _TAO_CORBA_ConstantDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_CORBA_ConstantDef_Strategized_Proxy_Broker (void);
+
+ virtual ::_TAO_CORBA_ConstantDef_Proxy_Impl &select_proxy (
+ ::CORBA_ConstantDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::_TAO_CORBA_ConstantDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+public:
+ static _TAO_CORBA_ConstantDef_Strategized_Proxy_Broker *the_TAO_CORBA_ConstantDef_Strategized_Proxy_Broker (void);
+};
+
+
+//
+// End Strategized Proxy Broker Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Impl. Declaration
+//
+
+class _TAO_CORBA_ConstantDef_ThruPOA_Proxy_Impl :
+ public virtual ::_TAO_CORBA_ConstantDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_Contained_ThruPOA_Proxy_Impl
+
+{
+public:
+ _TAO_CORBA_ConstantDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_CORBA_ConstantDef_ThruPOA_Proxy_Impl (void) { }
+
+ virtual CORBA::TypeCode_ptr type (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_IDLType_ptr type_def (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void type_def (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA_IDLType_ptr type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA::Any * value (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void value (
+ CORBA_Object *_collocated_tao_target_,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+
+};
+
+//
+// ThruPOA Proxy Impl. Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+class POA_CORBA_StructDef;
+typedef POA_CORBA_StructDef *POA_CORBA_StructDef_ptr;
+// Forward Classes Declaration
+class _TAO_CORBA_StructDef_ThruPOA_Proxy_Impl;
+class _TAO_CORBA_StructDef_Strategized_Proxy_Broker;
+
+class POA_CORBA_StructDef : public virtual POA_CORBA_TypedefDef, public virtual POA_CORBA_Container
+{
+protected:
+ POA_CORBA_StructDef (void);
+
+public:
+ POA_CORBA_StructDef (const POA_CORBA_StructDef& rhs);
+ virtual ~POA_CORBA_StructDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::CORBA_StructDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ virtual CORBA_StructMemberSeq * members (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_members_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void members (
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_members_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void lookup_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void lookup_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_module_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_constant_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_struct_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_union_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_enum_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_alias_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_value_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_value_box_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_exception_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_native_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_abstract_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_local_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+};
+
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Declaration
+//
+
+class _TAO_CORBA_StructDef_Strategized_Proxy_Broker : public virtual ::_TAO_CORBA_StructDef_Proxy_Broker
+{
+public:
+ _TAO_CORBA_StructDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_CORBA_StructDef_Strategized_Proxy_Broker (void);
+
+ virtual ::_TAO_CORBA_StructDef_Proxy_Impl &select_proxy (
+ ::CORBA_StructDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::_TAO_CORBA_StructDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+public:
+ static _TAO_CORBA_StructDef_Strategized_Proxy_Broker *the_TAO_CORBA_StructDef_Strategized_Proxy_Broker (void);
+};
+
+
+//
+// End Strategized Proxy Broker Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Impl. Declaration
+//
+
+class _TAO_CORBA_StructDef_ThruPOA_Proxy_Impl :
+ public virtual ::_TAO_CORBA_StructDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_TypedefDef_ThruPOA_Proxy_Impl,
+ public virtual ::_TAO_CORBA_Container_ThruPOA_Proxy_Impl
+
+{
+public:
+ _TAO_CORBA_StructDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_CORBA_StructDef_ThruPOA_Proxy_Impl (void) { }
+
+ virtual CORBA_StructMemberSeq * members (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void members (
+ CORBA_Object *_collocated_tao_target_,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+
+};
+
+//
+// ThruPOA Proxy Impl. Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+class POA_CORBA_UnionDef;
+typedef POA_CORBA_UnionDef *POA_CORBA_UnionDef_ptr;
+// Forward Classes Declaration
+class _TAO_CORBA_UnionDef_ThruPOA_Proxy_Impl;
+class _TAO_CORBA_UnionDef_Strategized_Proxy_Broker;
+
+class POA_CORBA_UnionDef : public virtual POA_CORBA_TypedefDef, public virtual POA_CORBA_Container
+{
+protected:
+ POA_CORBA_UnionDef (void);
+
+public:
+ POA_CORBA_UnionDef (const POA_CORBA_UnionDef& rhs);
+ virtual ~POA_CORBA_UnionDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::CORBA_UnionDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ virtual CORBA::TypeCode_ptr discriminator_type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_discriminator_type_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_IDLType_ptr discriminator_type_def (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_discriminator_type_def_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void discriminator_type_def (
+ CORBA_IDLType_ptr discriminator_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_discriminator_type_def_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_UnionMemberSeq * members (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_members_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void members (
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_members_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void lookup_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void lookup_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_module_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_constant_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_struct_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_union_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_enum_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_alias_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_value_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_value_box_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_exception_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_native_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_abstract_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_local_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+};
+
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Declaration
+//
+
+class _TAO_CORBA_UnionDef_Strategized_Proxy_Broker : public virtual ::_TAO_CORBA_UnionDef_Proxy_Broker
+{
+public:
+ _TAO_CORBA_UnionDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_CORBA_UnionDef_Strategized_Proxy_Broker (void);
+
+ virtual ::_TAO_CORBA_UnionDef_Proxy_Impl &select_proxy (
+ ::CORBA_UnionDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::_TAO_CORBA_UnionDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+public:
+ static _TAO_CORBA_UnionDef_Strategized_Proxy_Broker *the_TAO_CORBA_UnionDef_Strategized_Proxy_Broker (void);
+};
+
+
+//
+// End Strategized Proxy Broker Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Impl. Declaration
+//
+
+class _TAO_CORBA_UnionDef_ThruPOA_Proxy_Impl :
+ public virtual ::_TAO_CORBA_UnionDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_TypedefDef_ThruPOA_Proxy_Impl,
+ public virtual ::_TAO_CORBA_Container_ThruPOA_Proxy_Impl
+
+{
+public:
+ _TAO_CORBA_UnionDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_CORBA_UnionDef_ThruPOA_Proxy_Impl (void) { }
+
+ virtual CORBA::TypeCode_ptr discriminator_type (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_IDLType_ptr discriminator_type_def (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void discriminator_type_def (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA_IDLType_ptr discriminator_type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_UnionMemberSeq * members (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void members (
+ CORBA_Object *_collocated_tao_target_,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+
+};
+
+//
+// ThruPOA Proxy Impl. Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+class POA_CORBA_EnumDef;
+typedef POA_CORBA_EnumDef *POA_CORBA_EnumDef_ptr;
+// Forward Classes Declaration
+class _TAO_CORBA_EnumDef_ThruPOA_Proxy_Impl;
+class _TAO_CORBA_EnumDef_Strategized_Proxy_Broker;
+
+class POA_CORBA_EnumDef : public virtual POA_CORBA_TypedefDef
+{
+protected:
+ POA_CORBA_EnumDef (void);
+
+public:
+ POA_CORBA_EnumDef (const POA_CORBA_EnumDef& rhs);
+ virtual ~POA_CORBA_EnumDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::CORBA_EnumDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ virtual CORBA_EnumMemberSeq * members (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_members_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void members (
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_members_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+};
+
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Declaration
+//
+
+class _TAO_CORBA_EnumDef_Strategized_Proxy_Broker : public virtual ::_TAO_CORBA_EnumDef_Proxy_Broker
+{
+public:
+ _TAO_CORBA_EnumDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_CORBA_EnumDef_Strategized_Proxy_Broker (void);
+
+ virtual ::_TAO_CORBA_EnumDef_Proxy_Impl &select_proxy (
+ ::CORBA_EnumDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::_TAO_CORBA_EnumDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+public:
+ static _TAO_CORBA_EnumDef_Strategized_Proxy_Broker *the_TAO_CORBA_EnumDef_Strategized_Proxy_Broker (void);
+};
+
+
+//
+// End Strategized Proxy Broker Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Impl. Declaration
+//
+
+class _TAO_CORBA_EnumDef_ThruPOA_Proxy_Impl :
+ public virtual ::_TAO_CORBA_EnumDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_TypedefDef_ThruPOA_Proxy_Impl
+
+{
+public:
+ _TAO_CORBA_EnumDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_CORBA_EnumDef_ThruPOA_Proxy_Impl (void) { }
+
+ virtual CORBA_EnumMemberSeq * members (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void members (
+ CORBA_Object *_collocated_tao_target_,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+
+};
+
+//
+// ThruPOA Proxy Impl. Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+class POA_CORBA_AliasDef;
+typedef POA_CORBA_AliasDef *POA_CORBA_AliasDef_ptr;
+// Forward Classes Declaration
+class _TAO_CORBA_AliasDef_ThruPOA_Proxy_Impl;
+class _TAO_CORBA_AliasDef_Strategized_Proxy_Broker;
+
+class POA_CORBA_AliasDef : public virtual POA_CORBA_TypedefDef
+{
+protected:
+ POA_CORBA_AliasDef (void);
+
+public:
+ POA_CORBA_AliasDef (const POA_CORBA_AliasDef& rhs);
+ virtual ~POA_CORBA_AliasDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::CORBA_AliasDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ virtual CORBA_IDLType_ptr original_type_def (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_original_type_def_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void original_type_def (
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_original_type_def_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+};
+
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Declaration
+//
+
+class _TAO_CORBA_AliasDef_Strategized_Proxy_Broker : public virtual ::_TAO_CORBA_AliasDef_Proxy_Broker
+{
+public:
+ _TAO_CORBA_AliasDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_CORBA_AliasDef_Strategized_Proxy_Broker (void);
+
+ virtual ::_TAO_CORBA_AliasDef_Proxy_Impl &select_proxy (
+ ::CORBA_AliasDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::_TAO_CORBA_AliasDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+public:
+ static _TAO_CORBA_AliasDef_Strategized_Proxy_Broker *the_TAO_CORBA_AliasDef_Strategized_Proxy_Broker (void);
+};
+
+
+//
+// End Strategized Proxy Broker Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Impl. Declaration
+//
+
+class _TAO_CORBA_AliasDef_ThruPOA_Proxy_Impl :
+ public virtual ::_TAO_CORBA_AliasDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_TypedefDef_ThruPOA_Proxy_Impl
+
+{
+public:
+ _TAO_CORBA_AliasDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_CORBA_AliasDef_ThruPOA_Proxy_Impl (void) { }
+
+ virtual CORBA_IDLType_ptr original_type_def (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void original_type_def (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+
+};
+
+//
+// ThruPOA Proxy Impl. Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+class POA_CORBA_NativeDef;
+typedef POA_CORBA_NativeDef *POA_CORBA_NativeDef_ptr;
+// Forward Classes Declaration
+class _TAO_CORBA_NativeDef_ThruPOA_Proxy_Impl;
+class _TAO_CORBA_NativeDef_Strategized_Proxy_Broker;
+
+class POA_CORBA_NativeDef : public virtual POA_CORBA_TypedefDef
+{
+protected:
+ POA_CORBA_NativeDef (void);
+
+public:
+ POA_CORBA_NativeDef (const POA_CORBA_NativeDef& rhs);
+ virtual ~POA_CORBA_NativeDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::CORBA_NativeDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ static void _get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+};
+
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Declaration
+//
+
+class _TAO_CORBA_NativeDef_Strategized_Proxy_Broker : public virtual ::_TAO_CORBA_NativeDef_Proxy_Broker
+{
+public:
+ _TAO_CORBA_NativeDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_CORBA_NativeDef_Strategized_Proxy_Broker (void);
+
+ virtual ::_TAO_CORBA_NativeDef_Proxy_Impl &select_proxy (
+ ::CORBA_NativeDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::_TAO_CORBA_NativeDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+public:
+ static _TAO_CORBA_NativeDef_Strategized_Proxy_Broker *the_TAO_CORBA_NativeDef_Strategized_Proxy_Broker (void);
+};
+
+
+//
+// End Strategized Proxy Broker Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Impl. Declaration
+//
+
+class _TAO_CORBA_NativeDef_ThruPOA_Proxy_Impl :
+ public virtual ::_TAO_CORBA_NativeDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_TypedefDef_ThruPOA_Proxy_Impl
+
+{
+public:
+ _TAO_CORBA_NativeDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_CORBA_NativeDef_ThruPOA_Proxy_Impl (void) { }
+
+};
+
+
+//
+// ThruPOA Proxy Impl. Declaration
+///////////////////////////////////////////////////////////////////////
+
+class POA_CORBA_PrimitiveDef;
+typedef POA_CORBA_PrimitiveDef *POA_CORBA_PrimitiveDef_ptr;
+// Forward Classes Declaration
+class _TAO_CORBA_PrimitiveDef_ThruPOA_Proxy_Impl;
+class _TAO_CORBA_PrimitiveDef_Strategized_Proxy_Broker;
+
+class POA_CORBA_PrimitiveDef : public virtual POA_CORBA_IDLType
+{
+protected:
+ POA_CORBA_PrimitiveDef (void);
+
+public:
+ POA_CORBA_PrimitiveDef (const POA_CORBA_PrimitiveDef& rhs);
+ virtual ~POA_CORBA_PrimitiveDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::CORBA_PrimitiveDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ virtual CORBA::PrimitiveKind kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_kind_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+};
+
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Declaration
+//
+
+class _TAO_CORBA_PrimitiveDef_Strategized_Proxy_Broker : public virtual ::_TAO_CORBA_PrimitiveDef_Proxy_Broker
+{
+public:
+ _TAO_CORBA_PrimitiveDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_CORBA_PrimitiveDef_Strategized_Proxy_Broker (void);
+
+ virtual ::_TAO_CORBA_PrimitiveDef_Proxy_Impl &select_proxy (
+ ::CORBA_PrimitiveDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::_TAO_CORBA_PrimitiveDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+public:
+ static _TAO_CORBA_PrimitiveDef_Strategized_Proxy_Broker *the_TAO_CORBA_PrimitiveDef_Strategized_Proxy_Broker (void);
+};
+
+
+//
+// End Strategized Proxy Broker Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Impl. Declaration
+//
+
+class _TAO_CORBA_PrimitiveDef_ThruPOA_Proxy_Impl :
+ public virtual ::_TAO_CORBA_PrimitiveDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_IDLType_ThruPOA_Proxy_Impl
+
+{
+public:
+ _TAO_CORBA_PrimitiveDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_CORBA_PrimitiveDef_ThruPOA_Proxy_Impl (void) { }
+
+ virtual CORBA::PrimitiveKind kind (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+
+};
+
+//
+// ThruPOA Proxy Impl. Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+class POA_CORBA_StringDef;
+typedef POA_CORBA_StringDef *POA_CORBA_StringDef_ptr;
+// Forward Classes Declaration
+class _TAO_CORBA_StringDef_ThruPOA_Proxy_Impl;
+class _TAO_CORBA_StringDef_Strategized_Proxy_Broker;
+
+class POA_CORBA_StringDef : public virtual POA_CORBA_IDLType
+{
+protected:
+ POA_CORBA_StringDef (void);
+
+public:
+ POA_CORBA_StringDef (const POA_CORBA_StringDef& rhs);
+ virtual ~POA_CORBA_StringDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::CORBA_StringDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ virtual CORBA::ULong bound (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_bound_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void bound (
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_bound_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+};
+
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Declaration
+//
+
+class _TAO_CORBA_StringDef_Strategized_Proxy_Broker : public virtual ::_TAO_CORBA_StringDef_Proxy_Broker
+{
+public:
+ _TAO_CORBA_StringDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_CORBA_StringDef_Strategized_Proxy_Broker (void);
+
+ virtual ::_TAO_CORBA_StringDef_Proxy_Impl &select_proxy (
+ ::CORBA_StringDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::_TAO_CORBA_StringDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+public:
+ static _TAO_CORBA_StringDef_Strategized_Proxy_Broker *the_TAO_CORBA_StringDef_Strategized_Proxy_Broker (void);
+};
+
+
+//
+// End Strategized Proxy Broker Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Impl. Declaration
+//
+
+class _TAO_CORBA_StringDef_ThruPOA_Proxy_Impl :
+ public virtual ::_TAO_CORBA_StringDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_IDLType_ThruPOA_Proxy_Impl
+
+{
+public:
+ _TAO_CORBA_StringDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_CORBA_StringDef_ThruPOA_Proxy_Impl (void) { }
+
+ virtual CORBA::ULong bound (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void bound (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+
+};
+
+//
+// ThruPOA Proxy Impl. Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+class POA_CORBA_WstringDef;
+typedef POA_CORBA_WstringDef *POA_CORBA_WstringDef_ptr;
+// Forward Classes Declaration
+class _TAO_CORBA_WstringDef_ThruPOA_Proxy_Impl;
+class _TAO_CORBA_WstringDef_Strategized_Proxy_Broker;
+
+class POA_CORBA_WstringDef : public virtual POA_CORBA_IDLType
+{
+protected:
+ POA_CORBA_WstringDef (void);
+
+public:
+ POA_CORBA_WstringDef (const POA_CORBA_WstringDef& rhs);
+ virtual ~POA_CORBA_WstringDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::CORBA_WstringDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ virtual CORBA::ULong bound (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_bound_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void bound (
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_bound_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+};
+
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Declaration
+//
+
+class _TAO_CORBA_WstringDef_Strategized_Proxy_Broker : public virtual ::_TAO_CORBA_WstringDef_Proxy_Broker
+{
+public:
+ _TAO_CORBA_WstringDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_CORBA_WstringDef_Strategized_Proxy_Broker (void);
+
+ virtual ::_TAO_CORBA_WstringDef_Proxy_Impl &select_proxy (
+ ::CORBA_WstringDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::_TAO_CORBA_WstringDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+public:
+ static _TAO_CORBA_WstringDef_Strategized_Proxy_Broker *the_TAO_CORBA_WstringDef_Strategized_Proxy_Broker (void);
+};
+
+
+//
+// End Strategized Proxy Broker Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Impl. Declaration
+//
+
+class _TAO_CORBA_WstringDef_ThruPOA_Proxy_Impl :
+ public virtual ::_TAO_CORBA_WstringDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_IDLType_ThruPOA_Proxy_Impl
+
+{
+public:
+ _TAO_CORBA_WstringDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_CORBA_WstringDef_ThruPOA_Proxy_Impl (void) { }
+
+ virtual CORBA::ULong bound (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void bound (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+
+};
+
+//
+// ThruPOA Proxy Impl. Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+class POA_CORBA_SequenceDef;
+typedef POA_CORBA_SequenceDef *POA_CORBA_SequenceDef_ptr;
+// Forward Classes Declaration
+class _TAO_CORBA_SequenceDef_ThruPOA_Proxy_Impl;
+class _TAO_CORBA_SequenceDef_Strategized_Proxy_Broker;
+
+class POA_CORBA_SequenceDef : public virtual POA_CORBA_IDLType
+{
+protected:
+ POA_CORBA_SequenceDef (void);
+
+public:
+ POA_CORBA_SequenceDef (const POA_CORBA_SequenceDef& rhs);
+ virtual ~POA_CORBA_SequenceDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::CORBA_SequenceDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ virtual CORBA::ULong bound (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_bound_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void bound (
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_bound_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA::TypeCode_ptr element_type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_element_type_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_IDLType_ptr element_type_def (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_element_type_def_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void element_type_def (
+ CORBA_IDLType_ptr element_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_element_type_def_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+};
+
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Declaration
+//
+
+class _TAO_CORBA_SequenceDef_Strategized_Proxy_Broker : public virtual ::_TAO_CORBA_SequenceDef_Proxy_Broker
+{
+public:
+ _TAO_CORBA_SequenceDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_CORBA_SequenceDef_Strategized_Proxy_Broker (void);
+
+ virtual ::_TAO_CORBA_SequenceDef_Proxy_Impl &select_proxy (
+ ::CORBA_SequenceDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::_TAO_CORBA_SequenceDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+public:
+ static _TAO_CORBA_SequenceDef_Strategized_Proxy_Broker *the_TAO_CORBA_SequenceDef_Strategized_Proxy_Broker (void);
+};
+
+
+//
+// End Strategized Proxy Broker Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Impl. Declaration
+//
+
+class _TAO_CORBA_SequenceDef_ThruPOA_Proxy_Impl :
+ public virtual ::_TAO_CORBA_SequenceDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_IDLType_ThruPOA_Proxy_Impl
+
+{
+public:
+ _TAO_CORBA_SequenceDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_CORBA_SequenceDef_ThruPOA_Proxy_Impl (void) { }
+
+ virtual CORBA::ULong bound (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void bound (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA::TypeCode_ptr element_type (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_IDLType_ptr element_type_def (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void element_type_def (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA_IDLType_ptr element_type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+
+};
+
+//
+// ThruPOA Proxy Impl. Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+class POA_CORBA_ArrayDef;
+typedef POA_CORBA_ArrayDef *POA_CORBA_ArrayDef_ptr;
+// Forward Classes Declaration
+class _TAO_CORBA_ArrayDef_ThruPOA_Proxy_Impl;
+class _TAO_CORBA_ArrayDef_Strategized_Proxy_Broker;
+
+class POA_CORBA_ArrayDef : public virtual POA_CORBA_IDLType
+{
+protected:
+ POA_CORBA_ArrayDef (void);
+
+public:
+ POA_CORBA_ArrayDef (const POA_CORBA_ArrayDef& rhs);
+ virtual ~POA_CORBA_ArrayDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::CORBA_ArrayDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ virtual CORBA::ULong length (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_length_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void length (
+ CORBA::ULong length
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_length_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA::TypeCode_ptr element_type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_element_type_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_IDLType_ptr element_type_def (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_element_type_def_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void element_type_def (
+ CORBA_IDLType_ptr element_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_element_type_def_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+};
+
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Declaration
+//
+
+class _TAO_CORBA_ArrayDef_Strategized_Proxy_Broker : public virtual ::_TAO_CORBA_ArrayDef_Proxy_Broker
+{
+public:
+ _TAO_CORBA_ArrayDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_CORBA_ArrayDef_Strategized_Proxy_Broker (void);
+
+ virtual ::_TAO_CORBA_ArrayDef_Proxy_Impl &select_proxy (
+ ::CORBA_ArrayDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::_TAO_CORBA_ArrayDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+public:
+ static _TAO_CORBA_ArrayDef_Strategized_Proxy_Broker *the_TAO_CORBA_ArrayDef_Strategized_Proxy_Broker (void);
+};
+
+
+//
+// End Strategized Proxy Broker Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Impl. Declaration
+//
+
+class _TAO_CORBA_ArrayDef_ThruPOA_Proxy_Impl :
+ public virtual ::_TAO_CORBA_ArrayDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_IDLType_ThruPOA_Proxy_Impl
+
+{
+public:
+ _TAO_CORBA_ArrayDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_CORBA_ArrayDef_ThruPOA_Proxy_Impl (void) { }
+
+ virtual CORBA::ULong length (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void length (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::ULong length
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA::TypeCode_ptr element_type (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_IDLType_ptr element_type_def (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void element_type_def (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA_IDLType_ptr element_type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+
+};
+
+//
+// ThruPOA Proxy Impl. Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+class POA_CORBA_ExceptionDef;
+typedef POA_CORBA_ExceptionDef *POA_CORBA_ExceptionDef_ptr;
+// Forward Classes Declaration
+class _TAO_CORBA_ExceptionDef_ThruPOA_Proxy_Impl;
+class _TAO_CORBA_ExceptionDef_Strategized_Proxy_Broker;
+
+class POA_CORBA_ExceptionDef : public virtual POA_CORBA_Contained, public virtual POA_CORBA_Container
+{
+protected:
+ POA_CORBA_ExceptionDef (void);
+
+public:
+ POA_CORBA_ExceptionDef (const POA_CORBA_ExceptionDef& rhs);
+ virtual ~POA_CORBA_ExceptionDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::CORBA_ExceptionDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ virtual CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_type_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_StructMemberSeq * members (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_members_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void members (
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_members_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void lookup_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void lookup_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_module_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_constant_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_struct_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_union_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_enum_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_alias_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_value_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_value_box_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_exception_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_native_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_abstract_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_local_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+};
+
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Declaration
+//
+
+class _TAO_CORBA_ExceptionDef_Strategized_Proxy_Broker : public virtual ::_TAO_CORBA_ExceptionDef_Proxy_Broker
+{
+public:
+ _TAO_CORBA_ExceptionDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_CORBA_ExceptionDef_Strategized_Proxy_Broker (void);
+
+ virtual ::_TAO_CORBA_ExceptionDef_Proxy_Impl &select_proxy (
+ ::CORBA_ExceptionDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::_TAO_CORBA_ExceptionDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+public:
+ static _TAO_CORBA_ExceptionDef_Strategized_Proxy_Broker *the_TAO_CORBA_ExceptionDef_Strategized_Proxy_Broker (void);
+};
+
+
+//
+// End Strategized Proxy Broker Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Impl. Declaration
+//
+
+class _TAO_CORBA_ExceptionDef_ThruPOA_Proxy_Impl :
+ public virtual ::_TAO_CORBA_ExceptionDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_Contained_ThruPOA_Proxy_Impl,
+ public virtual ::_TAO_CORBA_Container_ThruPOA_Proxy_Impl
+
+{
+public:
+ _TAO_CORBA_ExceptionDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_CORBA_ExceptionDef_ThruPOA_Proxy_Impl (void) { }
+
+ virtual CORBA::TypeCode_ptr type (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_StructMemberSeq * members (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void members (
+ CORBA_Object *_collocated_tao_target_,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+
+};
+
+//
+// ThruPOA Proxy Impl. Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+class POA_CORBA_AttributeDef;
+typedef POA_CORBA_AttributeDef *POA_CORBA_AttributeDef_ptr;
+// Forward Classes Declaration
+class _TAO_CORBA_AttributeDef_ThruPOA_Proxy_Impl;
+class _TAO_CORBA_AttributeDef_Strategized_Proxy_Broker;
+
+class POA_CORBA_AttributeDef : public virtual POA_CORBA_Contained
+{
+protected:
+ POA_CORBA_AttributeDef (void);
+
+public:
+ POA_CORBA_AttributeDef (const POA_CORBA_AttributeDef& rhs);
+ virtual ~POA_CORBA_AttributeDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::CORBA_AttributeDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ virtual CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_type_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_IDLType_ptr type_def (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_type_def_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void type_def (
+ CORBA_IDLType_ptr type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_type_def_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA::AttributeMode mode (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_mode_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void mode (
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_mode_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+};
+
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Declaration
+//
+
+class _TAO_CORBA_AttributeDef_Strategized_Proxy_Broker : public virtual ::_TAO_CORBA_AttributeDef_Proxy_Broker
+{
+public:
+ _TAO_CORBA_AttributeDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_CORBA_AttributeDef_Strategized_Proxy_Broker (void);
+
+ virtual ::_TAO_CORBA_AttributeDef_Proxy_Impl &select_proxy (
+ ::CORBA_AttributeDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::_TAO_CORBA_AttributeDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+public:
+ static _TAO_CORBA_AttributeDef_Strategized_Proxy_Broker *the_TAO_CORBA_AttributeDef_Strategized_Proxy_Broker (void);
+};
+
+
+//
+// End Strategized Proxy Broker Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Impl. Declaration
+//
+
+class _TAO_CORBA_AttributeDef_ThruPOA_Proxy_Impl :
+ public virtual ::_TAO_CORBA_AttributeDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_Contained_ThruPOA_Proxy_Impl
+
+{
+public:
+ _TAO_CORBA_AttributeDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_CORBA_AttributeDef_ThruPOA_Proxy_Impl (void) { }
+
+ virtual CORBA::TypeCode_ptr type (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_IDLType_ptr type_def (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void type_def (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA_IDLType_ptr type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA::AttributeMode mode (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void mode (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+
+};
+
+//
+// ThruPOA Proxy Impl. Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+class POA_CORBA_OperationDef;
+typedef POA_CORBA_OperationDef *POA_CORBA_OperationDef_ptr;
+// Forward Classes Declaration
+class _TAO_CORBA_OperationDef_ThruPOA_Proxy_Impl;
+class _TAO_CORBA_OperationDef_Strategized_Proxy_Broker;
+
+class POA_CORBA_OperationDef : public virtual POA_CORBA_Contained
+{
+protected:
+ POA_CORBA_OperationDef (void);
+
+public:
+ POA_CORBA_OperationDef (const POA_CORBA_OperationDef& rhs);
+ virtual ~POA_CORBA_OperationDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::CORBA_OperationDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ virtual CORBA::TypeCode_ptr result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_result_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_IDLType_ptr result_def (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_result_def_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void result_def (
+ CORBA_IDLType_ptr result_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_result_def_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_ParDescriptionSeq * params (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_params_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void params (
+ const CORBA_ParDescriptionSeq & params
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_params_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA::OperationMode mode (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_mode_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void mode (
+ CORBA::OperationMode mode
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_mode_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_ContextIdSeq * contexts (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_contexts_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void contexts (
+ const CORBA_ContextIdSeq & contexts
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_contexts_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_ExceptionDefSeq * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_exceptions_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void exceptions (
+ const CORBA_ExceptionDefSeq & exceptions
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_exceptions_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+};
+
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Declaration
+//
+
+class _TAO_CORBA_OperationDef_Strategized_Proxy_Broker : public virtual ::_TAO_CORBA_OperationDef_Proxy_Broker
+{
+public:
+ _TAO_CORBA_OperationDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_CORBA_OperationDef_Strategized_Proxy_Broker (void);
+
+ virtual ::_TAO_CORBA_OperationDef_Proxy_Impl &select_proxy (
+ ::CORBA_OperationDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::_TAO_CORBA_OperationDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+public:
+ static _TAO_CORBA_OperationDef_Strategized_Proxy_Broker *the_TAO_CORBA_OperationDef_Strategized_Proxy_Broker (void);
+};
+
+
+//
+// End Strategized Proxy Broker Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Impl. Declaration
+//
+
+class _TAO_CORBA_OperationDef_ThruPOA_Proxy_Impl :
+ public virtual ::_TAO_CORBA_OperationDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_Contained_ThruPOA_Proxy_Impl
+
+{
+public:
+ _TAO_CORBA_OperationDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_CORBA_OperationDef_ThruPOA_Proxy_Impl (void) { }
+
+ virtual CORBA::TypeCode_ptr result (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_IDLType_ptr result_def (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void result_def (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA_IDLType_ptr result_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_ParDescriptionSeq * params (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void params (
+ CORBA_Object *_collocated_tao_target_,
+ const CORBA_ParDescriptionSeq & params
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA::OperationMode mode (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void mode (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::OperationMode mode
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_ContextIdSeq * contexts (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void contexts (
+ CORBA_Object *_collocated_tao_target_,
+ const CORBA_ContextIdSeq & contexts
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_ExceptionDefSeq * exceptions (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void exceptions (
+ CORBA_Object *_collocated_tao_target_,
+ const CORBA_ExceptionDefSeq & exceptions
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+
+};
+
+//
+// ThruPOA Proxy Impl. Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+class POA_CORBA_InterfaceDef;
+typedef POA_CORBA_InterfaceDef *POA_CORBA_InterfaceDef_ptr;
+// Forward Classes Declaration
+class _TAO_CORBA_InterfaceDef_ThruPOA_Proxy_Impl;
+class _TAO_CORBA_InterfaceDef_Strategized_Proxy_Broker;
+
+class POA_CORBA_InterfaceDef : public virtual POA_CORBA_Container, public virtual POA_CORBA_Contained, public virtual POA_CORBA_IDLType
+{
+protected:
+ POA_CORBA_InterfaceDef (void);
+
+public:
+ POA_CORBA_InterfaceDef (const POA_CORBA_InterfaceDef& rhs);
+ virtual ~POA_CORBA_InterfaceDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::CORBA_InterfaceDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ virtual CORBA_InterfaceDefSeq * base_interfaces (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_base_interfaces_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void base_interfaces (
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_base_interfaces_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA::Boolean is_a (
+ const char * interface_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void is_a_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_InterfaceDef::FullInterfaceDescription * describe_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void describe_interface_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_AttributeDef_ptr create_attribute (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void create_attribute_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_OperationDef_ptr create_operation (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr result,
+ CORBA::OperationMode mode,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions,
+ const CORBA_ContextIdSeq & contexts
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void create_operation_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void lookup_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void lookup_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_module_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_constant_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_struct_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_union_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_enum_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_alias_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_value_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_value_box_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_exception_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_native_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_abstract_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_local_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+};
+
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Declaration
+//
+
+class _TAO_CORBA_InterfaceDef_Strategized_Proxy_Broker : public virtual ::_TAO_CORBA_InterfaceDef_Proxy_Broker
+{
+public:
+ _TAO_CORBA_InterfaceDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_CORBA_InterfaceDef_Strategized_Proxy_Broker (void);
+
+ virtual ::_TAO_CORBA_InterfaceDef_Proxy_Impl &select_proxy (
+ ::CORBA_InterfaceDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::_TAO_CORBA_InterfaceDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+public:
+ static _TAO_CORBA_InterfaceDef_Strategized_Proxy_Broker *the_TAO_CORBA_InterfaceDef_Strategized_Proxy_Broker (void);
+};
+
+
+//
+// End Strategized Proxy Broker Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Impl. Declaration
+//
+
+class _TAO_CORBA_InterfaceDef_ThruPOA_Proxy_Impl :
+ public virtual ::_TAO_CORBA_InterfaceDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_Container_ThruPOA_Proxy_Impl,
+ public virtual ::_TAO_CORBA_Contained_ThruPOA_Proxy_Impl,
+ public virtual ::_TAO_CORBA_IDLType_ThruPOA_Proxy_Impl
+
+{
+public:
+ _TAO_CORBA_InterfaceDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_CORBA_InterfaceDef_ThruPOA_Proxy_Impl (void) { }
+
+ virtual CORBA_InterfaceDefSeq * base_interfaces (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void base_interfaces (
+ CORBA_Object *_collocated_tao_target_,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA::Boolean is_a (
+ CORBA_Object *_collocated_tao_target_,
+ const char * interface_id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_InterfaceDef::FullInterfaceDescription * describe_interface (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_AttributeDef_ptr create_attribute (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_OperationDef_ptr create_operation (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr result,
+ CORBA::OperationMode mode,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions,
+ const CORBA_ContextIdSeq & contexts
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+
+};
+
+//
+// ThruPOA Proxy Impl. Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+class POA_CORBA_AbstractInterfaceDef;
+typedef POA_CORBA_AbstractInterfaceDef *POA_CORBA_AbstractInterfaceDef_ptr;
+// Forward Classes Declaration
+class _TAO_CORBA_AbstractInterfaceDef_ThruPOA_Proxy_Impl;
+class _TAO_CORBA_AbstractInterfaceDef_Strategized_Proxy_Broker;
+
+class POA_CORBA_AbstractInterfaceDef : public virtual POA_CORBA_InterfaceDef
+{
+protected:
+ POA_CORBA_AbstractInterfaceDef (void);
+
+public:
+ POA_CORBA_AbstractInterfaceDef (const POA_CORBA_AbstractInterfaceDef& rhs);
+ virtual ~POA_CORBA_AbstractInterfaceDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::CORBA_AbstractInterfaceDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ static void _get_base_interfaces_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_base_interfaces_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_attribute_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_operation_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void lookup_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void lookup_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_module_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_constant_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_struct_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_union_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_enum_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_alias_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_value_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_value_box_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_exception_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_native_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_abstract_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_local_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+};
+
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Declaration
+//
+
+class _TAO_CORBA_AbstractInterfaceDef_Strategized_Proxy_Broker : public virtual ::_TAO_CORBA_AbstractInterfaceDef_Proxy_Broker
+{
+public:
+ _TAO_CORBA_AbstractInterfaceDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_CORBA_AbstractInterfaceDef_Strategized_Proxy_Broker (void);
+
+ virtual ::_TAO_CORBA_AbstractInterfaceDef_Proxy_Impl &select_proxy (
+ ::CORBA_AbstractInterfaceDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::_TAO_CORBA_AbstractInterfaceDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+public:
+ static _TAO_CORBA_AbstractInterfaceDef_Strategized_Proxy_Broker *the_TAO_CORBA_AbstractInterfaceDef_Strategized_Proxy_Broker (void);
+};
+
+
+//
+// End Strategized Proxy Broker Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Impl. Declaration
+//
+
+class _TAO_CORBA_AbstractInterfaceDef_ThruPOA_Proxy_Impl :
+ public virtual ::_TAO_CORBA_AbstractInterfaceDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_InterfaceDef_ThruPOA_Proxy_Impl
+
+{
+public:
+ _TAO_CORBA_AbstractInterfaceDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_CORBA_AbstractInterfaceDef_ThruPOA_Proxy_Impl (void) { }
+
+};
+
+
+//
+// ThruPOA Proxy Impl. Declaration
+///////////////////////////////////////////////////////////////////////
+
+class POA_CORBA_LocalInterfaceDef;
+typedef POA_CORBA_LocalInterfaceDef *POA_CORBA_LocalInterfaceDef_ptr;
+// Forward Classes Declaration
+class _TAO_CORBA_LocalInterfaceDef_ThruPOA_Proxy_Impl;
+class _TAO_CORBA_LocalInterfaceDef_Strategized_Proxy_Broker;
+
+class POA_CORBA_LocalInterfaceDef : public virtual POA_CORBA_InterfaceDef
+{
+protected:
+ POA_CORBA_LocalInterfaceDef (void);
+
+public:
+ POA_CORBA_LocalInterfaceDef (const POA_CORBA_LocalInterfaceDef& rhs);
+ virtual ~POA_CORBA_LocalInterfaceDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::CORBA_LocalInterfaceDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ static void _get_base_interfaces_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_base_interfaces_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_attribute_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_operation_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void lookup_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void lookup_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_module_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_constant_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_struct_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_union_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_enum_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_alias_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_value_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_value_box_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_exception_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_native_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_abstract_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_local_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+};
+
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Declaration
+//
+
+class _TAO_CORBA_LocalInterfaceDef_Strategized_Proxy_Broker : public virtual ::_TAO_CORBA_LocalInterfaceDef_Proxy_Broker
+{
+public:
+ _TAO_CORBA_LocalInterfaceDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_CORBA_LocalInterfaceDef_Strategized_Proxy_Broker (void);
+
+ virtual ::_TAO_CORBA_LocalInterfaceDef_Proxy_Impl &select_proxy (
+ ::CORBA_LocalInterfaceDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::_TAO_CORBA_LocalInterfaceDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+public:
+ static _TAO_CORBA_LocalInterfaceDef_Strategized_Proxy_Broker *the_TAO_CORBA_LocalInterfaceDef_Strategized_Proxy_Broker (void);
+};
+
+
+//
+// End Strategized Proxy Broker Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Impl. Declaration
+//
+
+class _TAO_CORBA_LocalInterfaceDef_ThruPOA_Proxy_Impl :
+ public virtual ::_TAO_CORBA_LocalInterfaceDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_InterfaceDef_ThruPOA_Proxy_Impl
+
+{
+public:
+ _TAO_CORBA_LocalInterfaceDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_CORBA_LocalInterfaceDef_ThruPOA_Proxy_Impl (void) { }
+
+};
+
+
+//
+// ThruPOA Proxy Impl. Declaration
+///////////////////////////////////////////////////////////////////////
+
+#include "IFR_BasicS_T.h"
+
+#if defined (__ACE_INLINE__)
+#include "IFR_BasicS.i"
+#endif /* defined INLINE */
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#if defined (__BORLANDC__)
+#pragma option pop
+#endif /* __BORLANDC__ */
+
+#include "ace/post.h"
+#endif /* ifndef */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IFR_BasicS.i b/TAO/orbsvcs/orbsvcs/IFRService/IFR_BasicS.i
new file mode 100644
index 00000000000..9b6f1854e59
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_BasicS.i
@@ -0,0 +1,5151 @@
+// -*- C++ -*-
+//
+// $Id$
+
+// **** Code generated by the The ACE ORB (TAO) IDL Compiler ****
+// TAO and the TAO IDL Compiler have been developed by:
+// Center for Distributed Object Computing
+// Washington University
+// St. Louis, MO
+// USA
+// http://www.cs.wustl.edu/~schmidt/doc-center.html
+// and
+// Distributed Object Computing Laboratory
+// University of California at Irvine
+// Irvine, CA
+// USA
+// http://doc.ece.uci.edu/
+//
+// Information about TAO is available at:
+// http://www.cs.wustl.edu/~schmidt/TAO.html
+
+ACE_INLINE void POA_CORBA_Repository::lookup_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_Repository_ptr) obj;
+ POA_CORBA_Container::lookup_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_Repository::contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_Repository_ptr) obj;
+ POA_CORBA_Container::contents_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_Repository::lookup_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_Repository_ptr) obj;
+ POA_CORBA_Container::lookup_name_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_Repository::describe_contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_Repository_ptr) obj;
+ POA_CORBA_Container::describe_contents_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_Repository::create_module_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_Repository_ptr) obj;
+ POA_CORBA_Container::create_module_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_Repository::create_constant_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_Repository_ptr) obj;
+ POA_CORBA_Container::create_constant_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_Repository::create_struct_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_Repository_ptr) obj;
+ POA_CORBA_Container::create_struct_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_Repository::create_union_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_Repository_ptr) obj;
+ POA_CORBA_Container::create_union_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_Repository::create_enum_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_Repository_ptr) obj;
+ POA_CORBA_Container::create_enum_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_Repository::create_alias_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_Repository_ptr) obj;
+ POA_CORBA_Container::create_alias_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_Repository::create_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_Repository_ptr) obj;
+ POA_CORBA_Container::create_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_Repository::create_value_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_Repository_ptr) obj;
+ POA_CORBA_Container::create_value_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_Repository::create_value_box_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_Repository_ptr) obj;
+ POA_CORBA_Container::create_value_box_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_Repository::create_exception_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_Repository_ptr) obj;
+ POA_CORBA_Container::create_exception_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_Repository::create_native_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_Repository_ptr) obj;
+ POA_CORBA_Container::create_native_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_Repository::create_abstract_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_Repository_ptr) obj;
+ POA_CORBA_Container::create_abstract_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_Repository::create_local_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_Repository_ptr) obj;
+ POA_CORBA_Container::create_local_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_Repository::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_Repository_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_Repository::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_Repository_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ModuleDef::lookup_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ModuleDef_ptr) obj;
+ POA_CORBA_Container::lookup_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ModuleDef::contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ModuleDef_ptr) obj;
+ POA_CORBA_Container::contents_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ModuleDef::lookup_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ModuleDef_ptr) obj;
+ POA_CORBA_Container::lookup_name_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ModuleDef::describe_contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ModuleDef_ptr) obj;
+ POA_CORBA_Container::describe_contents_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ModuleDef::create_module_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ModuleDef_ptr) obj;
+ POA_CORBA_Container::create_module_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ModuleDef::create_constant_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ModuleDef_ptr) obj;
+ POA_CORBA_Container::create_constant_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ModuleDef::create_struct_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ModuleDef_ptr) obj;
+ POA_CORBA_Container::create_struct_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ModuleDef::create_union_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ModuleDef_ptr) obj;
+ POA_CORBA_Container::create_union_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ModuleDef::create_enum_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ModuleDef_ptr) obj;
+ POA_CORBA_Container::create_enum_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ModuleDef::create_alias_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ModuleDef_ptr) obj;
+ POA_CORBA_Container::create_alias_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ModuleDef::create_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ModuleDef_ptr) obj;
+ POA_CORBA_Container::create_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ModuleDef::create_value_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ModuleDef_ptr) obj;
+ POA_CORBA_Container::create_value_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ModuleDef::create_value_box_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ModuleDef_ptr) obj;
+ POA_CORBA_Container::create_value_box_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ModuleDef::create_exception_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ModuleDef_ptr) obj;
+ POA_CORBA_Container::create_exception_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ModuleDef::create_native_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ModuleDef_ptr) obj;
+ POA_CORBA_Container::create_native_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ModuleDef::create_abstract_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ModuleDef_ptr) obj;
+ POA_CORBA_Container::create_abstract_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ModuleDef::create_local_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ModuleDef_ptr) obj;
+ POA_CORBA_Container::create_local_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ModuleDef::_get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ModuleDef_ptr) obj;
+ POA_CORBA_Contained::_get_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ModuleDef::_set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ModuleDef_ptr) obj;
+ POA_CORBA_Contained::_set_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ModuleDef::_get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ModuleDef_ptr) obj;
+ POA_CORBA_Contained::_get_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ModuleDef::_set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ModuleDef_ptr) obj;
+ POA_CORBA_Contained::_set_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ModuleDef::_get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ModuleDef_ptr) obj;
+ POA_CORBA_Contained::_get_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ModuleDef::_set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ModuleDef_ptr) obj;
+ POA_CORBA_Contained::_set_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ModuleDef::_get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ModuleDef_ptr) obj;
+ POA_CORBA_Contained::_get_defined_in_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ModuleDef::_get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ModuleDef_ptr) obj;
+ POA_CORBA_Contained::_get_absolute_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ModuleDef::_get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ModuleDef_ptr) obj;
+ POA_CORBA_Contained::_get_containing_repository_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ModuleDef::describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ModuleDef_ptr) obj;
+ POA_CORBA_Contained::describe_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ModuleDef::move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ModuleDef_ptr) obj;
+ POA_CORBA_Contained::move_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ModuleDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_ModuleDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ModuleDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_ModuleDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ConstantDef::_get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ConstantDef_ptr) obj;
+ POA_CORBA_Contained::_get_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ConstantDef::_set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ConstantDef_ptr) obj;
+ POA_CORBA_Contained::_set_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ConstantDef::_get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ConstantDef_ptr) obj;
+ POA_CORBA_Contained::_get_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ConstantDef::_set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ConstantDef_ptr) obj;
+ POA_CORBA_Contained::_set_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ConstantDef::_get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ConstantDef_ptr) obj;
+ POA_CORBA_Contained::_get_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ConstantDef::_set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ConstantDef_ptr) obj;
+ POA_CORBA_Contained::_set_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ConstantDef::_get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ConstantDef_ptr) obj;
+ POA_CORBA_Contained::_get_defined_in_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ConstantDef::_get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ConstantDef_ptr) obj;
+ POA_CORBA_Contained::_get_absolute_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ConstantDef::_get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ConstantDef_ptr) obj;
+ POA_CORBA_Contained::_get_containing_repository_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ConstantDef::describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ConstantDef_ptr) obj;
+ POA_CORBA_Contained::describe_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ConstantDef::move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ConstantDef_ptr) obj;
+ POA_CORBA_Contained::move_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ConstantDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_ConstantDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ConstantDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_ConstantDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StructDef::lookup_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_StructDef_ptr) obj;
+ POA_CORBA_Container::lookup_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StructDef::contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_StructDef_ptr) obj;
+ POA_CORBA_Container::contents_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StructDef::lookup_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_StructDef_ptr) obj;
+ POA_CORBA_Container::lookup_name_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StructDef::describe_contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_StructDef_ptr) obj;
+ POA_CORBA_Container::describe_contents_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StructDef::create_module_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_StructDef_ptr) obj;
+ POA_CORBA_Container::create_module_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StructDef::create_constant_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_StructDef_ptr) obj;
+ POA_CORBA_Container::create_constant_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StructDef::create_struct_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_StructDef_ptr) obj;
+ POA_CORBA_Container::create_struct_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StructDef::create_union_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_StructDef_ptr) obj;
+ POA_CORBA_Container::create_union_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StructDef::create_enum_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_StructDef_ptr) obj;
+ POA_CORBA_Container::create_enum_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StructDef::create_alias_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_StructDef_ptr) obj;
+ POA_CORBA_Container::create_alias_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StructDef::create_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_StructDef_ptr) obj;
+ POA_CORBA_Container::create_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StructDef::create_value_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_StructDef_ptr) obj;
+ POA_CORBA_Container::create_value_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StructDef::create_value_box_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_StructDef_ptr) obj;
+ POA_CORBA_Container::create_value_box_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StructDef::create_exception_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_StructDef_ptr) obj;
+ POA_CORBA_Container::create_exception_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StructDef::create_native_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_StructDef_ptr) obj;
+ POA_CORBA_Container::create_native_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StructDef::create_abstract_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_StructDef_ptr) obj;
+ POA_CORBA_Container::create_abstract_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StructDef::create_local_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_StructDef_ptr) obj;
+ POA_CORBA_Container::create_local_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StructDef::_get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_StructDef_ptr) obj;
+ POA_CORBA_Contained::_get_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StructDef::_set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_StructDef_ptr) obj;
+ POA_CORBA_Contained::_set_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StructDef::_get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_StructDef_ptr) obj;
+ POA_CORBA_Contained::_get_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StructDef::_set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_StructDef_ptr) obj;
+ POA_CORBA_Contained::_set_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StructDef::_get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_StructDef_ptr) obj;
+ POA_CORBA_Contained::_get_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StructDef::_set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_StructDef_ptr) obj;
+ POA_CORBA_Contained::_set_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StructDef::_get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_StructDef_ptr) obj;
+ POA_CORBA_Contained::_get_defined_in_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StructDef::_get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_StructDef_ptr) obj;
+ POA_CORBA_Contained::_get_absolute_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StructDef::_get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_StructDef_ptr) obj;
+ POA_CORBA_Contained::_get_containing_repository_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StructDef::describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_StructDef_ptr) obj;
+ POA_CORBA_Contained::describe_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StructDef::move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_StructDef_ptr) obj;
+ POA_CORBA_Contained::move_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StructDef::_get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IDLType_ptr impl = (POA_CORBA_StructDef_ptr) obj;
+ POA_CORBA_IDLType::_get_type_skel (
+ req,
+ (POA_CORBA_IDLType_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StructDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_StructDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StructDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_StructDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_UnionDef::lookup_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_UnionDef_ptr) obj;
+ POA_CORBA_Container::lookup_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_UnionDef::contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_UnionDef_ptr) obj;
+ POA_CORBA_Container::contents_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_UnionDef::lookup_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_UnionDef_ptr) obj;
+ POA_CORBA_Container::lookup_name_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_UnionDef::describe_contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_UnionDef_ptr) obj;
+ POA_CORBA_Container::describe_contents_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_UnionDef::create_module_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_UnionDef_ptr) obj;
+ POA_CORBA_Container::create_module_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_UnionDef::create_constant_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_UnionDef_ptr) obj;
+ POA_CORBA_Container::create_constant_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_UnionDef::create_struct_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_UnionDef_ptr) obj;
+ POA_CORBA_Container::create_struct_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_UnionDef::create_union_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_UnionDef_ptr) obj;
+ POA_CORBA_Container::create_union_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_UnionDef::create_enum_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_UnionDef_ptr) obj;
+ POA_CORBA_Container::create_enum_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_UnionDef::create_alias_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_UnionDef_ptr) obj;
+ POA_CORBA_Container::create_alias_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_UnionDef::create_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_UnionDef_ptr) obj;
+ POA_CORBA_Container::create_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_UnionDef::create_value_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_UnionDef_ptr) obj;
+ POA_CORBA_Container::create_value_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_UnionDef::create_value_box_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_UnionDef_ptr) obj;
+ POA_CORBA_Container::create_value_box_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_UnionDef::create_exception_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_UnionDef_ptr) obj;
+ POA_CORBA_Container::create_exception_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_UnionDef::create_native_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_UnionDef_ptr) obj;
+ POA_CORBA_Container::create_native_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_UnionDef::create_abstract_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_UnionDef_ptr) obj;
+ POA_CORBA_Container::create_abstract_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_UnionDef::create_local_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_UnionDef_ptr) obj;
+ POA_CORBA_Container::create_local_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_UnionDef::_get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_UnionDef_ptr) obj;
+ POA_CORBA_Contained::_get_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_UnionDef::_set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_UnionDef_ptr) obj;
+ POA_CORBA_Contained::_set_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_UnionDef::_get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_UnionDef_ptr) obj;
+ POA_CORBA_Contained::_get_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_UnionDef::_set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_UnionDef_ptr) obj;
+ POA_CORBA_Contained::_set_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_UnionDef::_get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_UnionDef_ptr) obj;
+ POA_CORBA_Contained::_get_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_UnionDef::_set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_UnionDef_ptr) obj;
+ POA_CORBA_Contained::_set_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_UnionDef::_get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_UnionDef_ptr) obj;
+ POA_CORBA_Contained::_get_defined_in_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_UnionDef::_get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_UnionDef_ptr) obj;
+ POA_CORBA_Contained::_get_absolute_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_UnionDef::_get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_UnionDef_ptr) obj;
+ POA_CORBA_Contained::_get_containing_repository_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_UnionDef::describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_UnionDef_ptr) obj;
+ POA_CORBA_Contained::describe_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_UnionDef::move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_UnionDef_ptr) obj;
+ POA_CORBA_Contained::move_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_UnionDef::_get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IDLType_ptr impl = (POA_CORBA_UnionDef_ptr) obj;
+ POA_CORBA_IDLType::_get_type_skel (
+ req,
+ (POA_CORBA_IDLType_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_UnionDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_UnionDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_UnionDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_UnionDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_EnumDef::_get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_EnumDef_ptr) obj;
+ POA_CORBA_Contained::_get_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_EnumDef::_set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_EnumDef_ptr) obj;
+ POA_CORBA_Contained::_set_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_EnumDef::_get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_EnumDef_ptr) obj;
+ POA_CORBA_Contained::_get_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_EnumDef::_set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_EnumDef_ptr) obj;
+ POA_CORBA_Contained::_set_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_EnumDef::_get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_EnumDef_ptr) obj;
+ POA_CORBA_Contained::_get_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_EnumDef::_set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_EnumDef_ptr) obj;
+ POA_CORBA_Contained::_set_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_EnumDef::_get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_EnumDef_ptr) obj;
+ POA_CORBA_Contained::_get_defined_in_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_EnumDef::_get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_EnumDef_ptr) obj;
+ POA_CORBA_Contained::_get_absolute_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_EnumDef::_get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_EnumDef_ptr) obj;
+ POA_CORBA_Contained::_get_containing_repository_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_EnumDef::describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_EnumDef_ptr) obj;
+ POA_CORBA_Contained::describe_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_EnumDef::move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_EnumDef_ptr) obj;
+ POA_CORBA_Contained::move_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_EnumDef::_get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IDLType_ptr impl = (POA_CORBA_EnumDef_ptr) obj;
+ POA_CORBA_IDLType::_get_type_skel (
+ req,
+ (POA_CORBA_IDLType_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_EnumDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_EnumDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_EnumDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_EnumDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AliasDef::_get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_AliasDef_ptr) obj;
+ POA_CORBA_Contained::_get_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AliasDef::_set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_AliasDef_ptr) obj;
+ POA_CORBA_Contained::_set_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AliasDef::_get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_AliasDef_ptr) obj;
+ POA_CORBA_Contained::_get_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AliasDef::_set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_AliasDef_ptr) obj;
+ POA_CORBA_Contained::_set_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AliasDef::_get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_AliasDef_ptr) obj;
+ POA_CORBA_Contained::_get_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AliasDef::_set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_AliasDef_ptr) obj;
+ POA_CORBA_Contained::_set_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AliasDef::_get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_AliasDef_ptr) obj;
+ POA_CORBA_Contained::_get_defined_in_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AliasDef::_get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_AliasDef_ptr) obj;
+ POA_CORBA_Contained::_get_absolute_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AliasDef::_get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_AliasDef_ptr) obj;
+ POA_CORBA_Contained::_get_containing_repository_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AliasDef::describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_AliasDef_ptr) obj;
+ POA_CORBA_Contained::describe_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AliasDef::move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_AliasDef_ptr) obj;
+ POA_CORBA_Contained::move_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AliasDef::_get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IDLType_ptr impl = (POA_CORBA_AliasDef_ptr) obj;
+ POA_CORBA_IDLType::_get_type_skel (
+ req,
+ (POA_CORBA_IDLType_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AliasDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_AliasDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AliasDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_AliasDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_NativeDef::_get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_NativeDef_ptr) obj;
+ POA_CORBA_Contained::_get_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_NativeDef::_set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_NativeDef_ptr) obj;
+ POA_CORBA_Contained::_set_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_NativeDef::_get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_NativeDef_ptr) obj;
+ POA_CORBA_Contained::_get_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_NativeDef::_set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_NativeDef_ptr) obj;
+ POA_CORBA_Contained::_set_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_NativeDef::_get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_NativeDef_ptr) obj;
+ POA_CORBA_Contained::_get_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_NativeDef::_set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_NativeDef_ptr) obj;
+ POA_CORBA_Contained::_set_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_NativeDef::_get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_NativeDef_ptr) obj;
+ POA_CORBA_Contained::_get_defined_in_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_NativeDef::_get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_NativeDef_ptr) obj;
+ POA_CORBA_Contained::_get_absolute_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_NativeDef::_get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_NativeDef_ptr) obj;
+ POA_CORBA_Contained::_get_containing_repository_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_NativeDef::describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_NativeDef_ptr) obj;
+ POA_CORBA_Contained::describe_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_NativeDef::move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_NativeDef_ptr) obj;
+ POA_CORBA_Contained::move_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_NativeDef::_get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IDLType_ptr impl = (POA_CORBA_NativeDef_ptr) obj;
+ POA_CORBA_IDLType::_get_type_skel (
+ req,
+ (POA_CORBA_IDLType_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_NativeDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_NativeDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_NativeDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_NativeDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_PrimitiveDef::_get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IDLType_ptr impl = (POA_CORBA_PrimitiveDef_ptr) obj;
+ POA_CORBA_IDLType::_get_type_skel (
+ req,
+ (POA_CORBA_IDLType_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_PrimitiveDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_PrimitiveDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_PrimitiveDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_PrimitiveDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StringDef::_get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IDLType_ptr impl = (POA_CORBA_StringDef_ptr) obj;
+ POA_CORBA_IDLType::_get_type_skel (
+ req,
+ (POA_CORBA_IDLType_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StringDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_StringDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_StringDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_StringDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_WstringDef::_get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IDLType_ptr impl = (POA_CORBA_WstringDef_ptr) obj;
+ POA_CORBA_IDLType::_get_type_skel (
+ req,
+ (POA_CORBA_IDLType_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_WstringDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_WstringDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_WstringDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_WstringDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_SequenceDef::_get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IDLType_ptr impl = (POA_CORBA_SequenceDef_ptr) obj;
+ POA_CORBA_IDLType::_get_type_skel (
+ req,
+ (POA_CORBA_IDLType_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_SequenceDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_SequenceDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_SequenceDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_SequenceDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ArrayDef::_get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IDLType_ptr impl = (POA_CORBA_ArrayDef_ptr) obj;
+ POA_CORBA_IDLType::_get_type_skel (
+ req,
+ (POA_CORBA_IDLType_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ArrayDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_ArrayDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ArrayDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_ArrayDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ExceptionDef::_get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ExceptionDef_ptr) obj;
+ POA_CORBA_Contained::_get_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ExceptionDef::_set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ExceptionDef_ptr) obj;
+ POA_CORBA_Contained::_set_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ExceptionDef::_get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ExceptionDef_ptr) obj;
+ POA_CORBA_Contained::_get_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ExceptionDef::_set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ExceptionDef_ptr) obj;
+ POA_CORBA_Contained::_set_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ExceptionDef::_get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ExceptionDef_ptr) obj;
+ POA_CORBA_Contained::_get_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ExceptionDef::_set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ExceptionDef_ptr) obj;
+ POA_CORBA_Contained::_set_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ExceptionDef::_get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ExceptionDef_ptr) obj;
+ POA_CORBA_Contained::_get_defined_in_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ExceptionDef::_get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ExceptionDef_ptr) obj;
+ POA_CORBA_Contained::_get_absolute_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ExceptionDef::_get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ExceptionDef_ptr) obj;
+ POA_CORBA_Contained::_get_containing_repository_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ExceptionDef::describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ExceptionDef_ptr) obj;
+ POA_CORBA_Contained::describe_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ExceptionDef::move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ExceptionDef_ptr) obj;
+ POA_CORBA_Contained::move_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ExceptionDef::lookup_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ExceptionDef_ptr) obj;
+ POA_CORBA_Container::lookup_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ExceptionDef::contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ExceptionDef_ptr) obj;
+ POA_CORBA_Container::contents_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ExceptionDef::lookup_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ExceptionDef_ptr) obj;
+ POA_CORBA_Container::lookup_name_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ExceptionDef::describe_contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ExceptionDef_ptr) obj;
+ POA_CORBA_Container::describe_contents_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ExceptionDef::create_module_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ExceptionDef_ptr) obj;
+ POA_CORBA_Container::create_module_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ExceptionDef::create_constant_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ExceptionDef_ptr) obj;
+ POA_CORBA_Container::create_constant_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ExceptionDef::create_struct_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ExceptionDef_ptr) obj;
+ POA_CORBA_Container::create_struct_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ExceptionDef::create_union_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ExceptionDef_ptr) obj;
+ POA_CORBA_Container::create_union_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ExceptionDef::create_enum_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ExceptionDef_ptr) obj;
+ POA_CORBA_Container::create_enum_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ExceptionDef::create_alias_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ExceptionDef_ptr) obj;
+ POA_CORBA_Container::create_alias_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ExceptionDef::create_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ExceptionDef_ptr) obj;
+ POA_CORBA_Container::create_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ExceptionDef::create_value_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ExceptionDef_ptr) obj;
+ POA_CORBA_Container::create_value_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ExceptionDef::create_value_box_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ExceptionDef_ptr) obj;
+ POA_CORBA_Container::create_value_box_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ExceptionDef::create_exception_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ExceptionDef_ptr) obj;
+ POA_CORBA_Container::create_exception_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ExceptionDef::create_native_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ExceptionDef_ptr) obj;
+ POA_CORBA_Container::create_native_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ExceptionDef::create_abstract_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ExceptionDef_ptr) obj;
+ POA_CORBA_Container::create_abstract_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ExceptionDef::create_local_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ExceptionDef_ptr) obj;
+ POA_CORBA_Container::create_local_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ExceptionDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_ExceptionDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ExceptionDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_ExceptionDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AttributeDef::_get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_AttributeDef_ptr) obj;
+ POA_CORBA_Contained::_get_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AttributeDef::_set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_AttributeDef_ptr) obj;
+ POA_CORBA_Contained::_set_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AttributeDef::_get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_AttributeDef_ptr) obj;
+ POA_CORBA_Contained::_get_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AttributeDef::_set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_AttributeDef_ptr) obj;
+ POA_CORBA_Contained::_set_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AttributeDef::_get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_AttributeDef_ptr) obj;
+ POA_CORBA_Contained::_get_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AttributeDef::_set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_AttributeDef_ptr) obj;
+ POA_CORBA_Contained::_set_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AttributeDef::_get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_AttributeDef_ptr) obj;
+ POA_CORBA_Contained::_get_defined_in_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AttributeDef::_get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_AttributeDef_ptr) obj;
+ POA_CORBA_Contained::_get_absolute_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AttributeDef::_get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_AttributeDef_ptr) obj;
+ POA_CORBA_Contained::_get_containing_repository_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AttributeDef::describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_AttributeDef_ptr) obj;
+ POA_CORBA_Contained::describe_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AttributeDef::move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_AttributeDef_ptr) obj;
+ POA_CORBA_Contained::move_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AttributeDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_AttributeDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AttributeDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_AttributeDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_OperationDef::_get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_OperationDef_ptr) obj;
+ POA_CORBA_Contained::_get_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_OperationDef::_set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_OperationDef_ptr) obj;
+ POA_CORBA_Contained::_set_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_OperationDef::_get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_OperationDef_ptr) obj;
+ POA_CORBA_Contained::_get_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_OperationDef::_set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_OperationDef_ptr) obj;
+ POA_CORBA_Contained::_set_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_OperationDef::_get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_OperationDef_ptr) obj;
+ POA_CORBA_Contained::_get_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_OperationDef::_set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_OperationDef_ptr) obj;
+ POA_CORBA_Contained::_set_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_OperationDef::_get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_OperationDef_ptr) obj;
+ POA_CORBA_Contained::_get_defined_in_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_OperationDef::_get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_OperationDef_ptr) obj;
+ POA_CORBA_Contained::_get_absolute_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_OperationDef::_get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_OperationDef_ptr) obj;
+ POA_CORBA_Contained::_get_containing_repository_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_OperationDef::describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_OperationDef_ptr) obj;
+ POA_CORBA_Contained::describe_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_OperationDef::move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_OperationDef_ptr) obj;
+ POA_CORBA_Contained::move_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_OperationDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_OperationDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_OperationDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_OperationDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_InterfaceDef::lookup_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_InterfaceDef_ptr) obj;
+ POA_CORBA_Container::lookup_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_InterfaceDef::contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_InterfaceDef_ptr) obj;
+ POA_CORBA_Container::contents_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_InterfaceDef::lookup_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_InterfaceDef_ptr) obj;
+ POA_CORBA_Container::lookup_name_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_InterfaceDef::describe_contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_InterfaceDef_ptr) obj;
+ POA_CORBA_Container::describe_contents_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_InterfaceDef::create_module_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_InterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_module_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_InterfaceDef::create_constant_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_InterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_constant_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_InterfaceDef::create_struct_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_InterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_struct_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_InterfaceDef::create_union_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_InterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_union_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_InterfaceDef::create_enum_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_InterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_enum_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_InterfaceDef::create_alias_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_InterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_alias_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_InterfaceDef::create_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_InterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_InterfaceDef::create_value_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_InterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_value_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_InterfaceDef::create_value_box_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_InterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_value_box_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_InterfaceDef::create_exception_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_InterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_exception_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_InterfaceDef::create_native_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_InterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_native_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_InterfaceDef::create_abstract_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_InterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_abstract_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_InterfaceDef::create_local_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_InterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_local_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_InterfaceDef::_get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_InterfaceDef_ptr) obj;
+ POA_CORBA_Contained::_get_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_InterfaceDef::_set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_InterfaceDef_ptr) obj;
+ POA_CORBA_Contained::_set_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_InterfaceDef::_get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_InterfaceDef_ptr) obj;
+ POA_CORBA_Contained::_get_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_InterfaceDef::_set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_InterfaceDef_ptr) obj;
+ POA_CORBA_Contained::_set_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_InterfaceDef::_get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_InterfaceDef_ptr) obj;
+ POA_CORBA_Contained::_get_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_InterfaceDef::_set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_InterfaceDef_ptr) obj;
+ POA_CORBA_Contained::_set_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_InterfaceDef::_get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_InterfaceDef_ptr) obj;
+ POA_CORBA_Contained::_get_defined_in_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_InterfaceDef::_get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_InterfaceDef_ptr) obj;
+ POA_CORBA_Contained::_get_absolute_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_InterfaceDef::_get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_InterfaceDef_ptr) obj;
+ POA_CORBA_Contained::_get_containing_repository_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_InterfaceDef::describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_InterfaceDef_ptr) obj;
+ POA_CORBA_Contained::describe_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_InterfaceDef::move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_InterfaceDef_ptr) obj;
+ POA_CORBA_Contained::move_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_InterfaceDef::_get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IDLType_ptr impl = (POA_CORBA_InterfaceDef_ptr) obj;
+ POA_CORBA_IDLType::_get_type_skel (
+ req,
+ (POA_CORBA_IDLType_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_InterfaceDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_InterfaceDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_InterfaceDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_InterfaceDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::_get_base_interfaces_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_InterfaceDef_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_InterfaceDef::_get_base_interfaces_skel (
+ req,
+ (POA_CORBA_InterfaceDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::_set_base_interfaces_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_InterfaceDef_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_InterfaceDef::_set_base_interfaces_skel (
+ req,
+ (POA_CORBA_InterfaceDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_InterfaceDef_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_InterfaceDef::is_a_skel (
+ req,
+ (POA_CORBA_InterfaceDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::describe_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_InterfaceDef_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_InterfaceDef::describe_interface_skel (
+ req,
+ (POA_CORBA_InterfaceDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::create_attribute_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_InterfaceDef_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_InterfaceDef::create_attribute_skel (
+ req,
+ (POA_CORBA_InterfaceDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::create_operation_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_InterfaceDef_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_InterfaceDef::create_operation_skel (
+ req,
+ (POA_CORBA_InterfaceDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::lookup_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_Container::lookup_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_Container::contents_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::lookup_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_Container::lookup_name_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::describe_contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_Container::describe_contents_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::create_module_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_module_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::create_constant_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_constant_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::create_struct_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_struct_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::create_union_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_union_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::create_enum_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_enum_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::create_alias_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_alias_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::create_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::create_value_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_value_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::create_value_box_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_value_box_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::create_exception_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_exception_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::create_native_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_native_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::create_abstract_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_abstract_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::create_local_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_local_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::_get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_Contained::_get_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::_set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_Contained::_set_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::_get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_Contained::_get_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::_set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_Contained::_set_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::_get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_Contained::_get_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::_set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_Contained::_set_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::_get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_Contained::_get_defined_in_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::_get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_Contained::_get_absolute_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::_get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_Contained::_get_containing_repository_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_Contained::describe_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_Contained::move_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::_get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IDLType_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_IDLType::_get_type_skel (
+ req,
+ (POA_CORBA_IDLType_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_AbstractInterfaceDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_AbstractInterfaceDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::_get_base_interfaces_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_InterfaceDef_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_InterfaceDef::_get_base_interfaces_skel (
+ req,
+ (POA_CORBA_InterfaceDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::_set_base_interfaces_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_InterfaceDef_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_InterfaceDef::_set_base_interfaces_skel (
+ req,
+ (POA_CORBA_InterfaceDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_InterfaceDef_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_InterfaceDef::is_a_skel (
+ req,
+ (POA_CORBA_InterfaceDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::describe_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_InterfaceDef_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_InterfaceDef::describe_interface_skel (
+ req,
+ (POA_CORBA_InterfaceDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::create_attribute_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_InterfaceDef_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_InterfaceDef::create_attribute_skel (
+ req,
+ (POA_CORBA_InterfaceDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::create_operation_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_InterfaceDef_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_InterfaceDef::create_operation_skel (
+ req,
+ (POA_CORBA_InterfaceDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::lookup_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_Container::lookup_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_Container::contents_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::lookup_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_Container::lookup_name_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::describe_contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_Container::describe_contents_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::create_module_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_module_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::create_constant_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_constant_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::create_struct_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_struct_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::create_union_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_union_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::create_enum_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_enum_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::create_alias_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_alias_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::create_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::create_value_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_value_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::create_value_box_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_value_box_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::create_exception_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_exception_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::create_native_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_native_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::create_abstract_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_abstract_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::create_local_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_Container::create_local_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::_get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_Contained::_get_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::_set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_Contained::_set_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::_get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_Contained::_get_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::_set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_Contained::_set_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::_get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_Contained::_get_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::_set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_Contained::_set_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::_get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_Contained::_get_defined_in_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::_get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_Contained::_get_absolute_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::_get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_Contained::_get_containing_repository_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_Contained::describe_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_Contained::move_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::_get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IDLType_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_IDLType::_get_type_skel (
+ req,
+ (POA_CORBA_IDLType_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_LocalInterfaceDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_LocalInterfaceDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IFR_BasicS_T.cpp b/TAO/orbsvcs/orbsvcs/IFRService/IFR_BasicS_T.cpp
new file mode 100644
index 00000000000..a4b909b8d80
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_BasicS_T.cpp
@@ -0,0 +1,32 @@
+// -*- C++ -*-
+//
+// $Id$
+
+// **** Code generated by the The ACE ORB (TAO) IDL Compiler ****
+// TAO and the TAO IDL Compiler have been developed by:
+// Center for Distributed Object Computing
+// Washington University
+// St. Louis, MO
+// USA
+// http://www.cs.wustl.edu/~schmidt/doc-center.html
+// and
+// Distributed Object Computing Laboratory
+// University of California at Irvine
+// Irvine, CA
+// USA
+// http://doc.ece.uci.edu/
+//
+// Information about TAO is available at:
+// http://www.cs.wustl.edu/~schmidt/TAO.html
+
+#ifndef _TAO_IDL_IFR_BASICS_T_CPP_
+#define _TAO_IDL_IFR_BASICS_T_CPP_
+
+#include "IFR_BasicS_T.h"
+
+#if !defined (__ACE_INLINE__)
+#include "IFR_BasicS_T.i"
+#endif /* !defined INLINE */
+
+
+#endif /* ifndef */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IFR_BasicS_T.h b/TAO/orbsvcs/orbsvcs/IFRService/IFR_BasicS_T.h
new file mode 100644
index 00000000000..a9e5d0de606
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_BasicS_T.h
@@ -0,0 +1,4400 @@
+// -*- C++ -*-
+//
+// $Id$
+
+// **** Code generated by the The ACE ORB (TAO) IDL Compiler ****
+// TAO and the TAO IDL Compiler have been developed by:
+// Center for Distributed Object Computing
+// Washington University
+// St. Louis, MO
+// USA
+// http://www.cs.wustl.edu/~schmidt/doc-center.html
+// and
+// Distributed Object Computing Laboratory
+// University of California at Irvine
+// Irvine, CA
+// USA
+// http://doc.ece.uci.edu/
+//
+// Information about TAO is available at:
+// http://www.cs.wustl.edu/~schmidt/TAO.html
+
+#ifndef _TAO_IDL_IFR_BASICS_T_H_
+#define _TAO_IDL_IFR_BASICS_T_H_
+
+#include "ace/pre.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_HAS_USING_KEYWORD)
+
+TAO_NAMESPACE POA_CORBA
+{
+}
+TAO_NAMESPACE_CLOSE // module CORBA
+
+// TIE class: Refer to CORBA v2.2, Section 20.34.4
+template <class T>
+class POA_CORBA_Repository_tie : public POA_CORBA_Repository
+{
+public:
+ POA_CORBA_Repository_tie (T &t);
+ // the T& ctor
+ POA_CORBA_Repository_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ POA_CORBA_Repository_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ POA_CORBA_Repository_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~POA_CORBA_Repository_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA_Contained_ptr lookup_id (
+ const char * search_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::TypeCode_ptr get_canonical_typecode (
+ CORBA::TypeCode_ptr tc
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_PrimitiveDef_ptr get_primitive (
+ CORBA::PrimitiveKind kind
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_StringDef_ptr create_string (
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_WstringDef_ptr create_wstring (
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_SequenceDef_ptr create_sequence (
+ CORBA::ULong bound,
+ CORBA_IDLType_ptr element_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ArrayDef_ptr create_array (
+ CORBA::ULong length,
+ CORBA_IDLType_ptr element_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_FixedDef_ptr create_fixed (
+ CORBA::UShort digits,
+ CORBA::Short scale
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained_ptr lookup (
+ const char * search_name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ContainedSeq * contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ContainedSeq * lookup_name (
+ const char * search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container::DescriptionSeq * describe_contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited,
+ CORBA::Long max_returned_objs
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ModuleDef_ptr create_module (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ConstantDef_ptr create_constant (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_StructDef_ptr create_struct (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_UnionDef_ptr create_union (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_EnumDef_ptr create_enum (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_AliasDef_ptr create_alias (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_InterfaceDef_ptr create_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueDef_ptr create_value (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA::Boolean is_custom,
+ CORBA::Boolean is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ CORBA::Boolean is_truncatable,
+ const CORBA_ValueDefSeq & abstract_base_values,
+ const CORBA_InterfaceDefSeq & supported_interfaces,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueBoxDef_ptr create_value_box (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ExceptionDef_ptr create_exception (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_NativeDef_ptr create_native (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_AbstractInterfaceDef_ptr create_abstract_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_AbstractInterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_LocalInterfaceDef_ptr create_local_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ POA_CORBA_Repository_tie (const POA_CORBA_Repository_tie &);
+ void operator= (const POA_CORBA_Repository_tie &);
+};
+
+// TIE class: Refer to CORBA v2.2, Section 20.34.4
+template <class T>
+class POA_CORBA_ModuleDef_tie : public POA_CORBA_ModuleDef
+{
+public:
+ POA_CORBA_ModuleDef_tie (T &t);
+ // the T& ctor
+ POA_CORBA_ModuleDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ POA_CORBA_ModuleDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ POA_CORBA_ModuleDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~POA_CORBA_ModuleDef_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA_Contained_ptr lookup (
+ const char * search_name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ContainedSeq * contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ContainedSeq * lookup_name (
+ const char * search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container::DescriptionSeq * describe_contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited,
+ CORBA::Long max_returned_objs
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ModuleDef_ptr create_module (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ConstantDef_ptr create_constant (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_StructDef_ptr create_struct (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_UnionDef_ptr create_union (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_EnumDef_ptr create_enum (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_AliasDef_ptr create_alias (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_InterfaceDef_ptr create_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueDef_ptr create_value (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA::Boolean is_custom,
+ CORBA::Boolean is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ CORBA::Boolean is_truncatable,
+ const CORBA_ValueDefSeq & abstract_base_values,
+ const CORBA_InterfaceDefSeq & supported_interfaces,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueBoxDef_ptr create_value_box (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ExceptionDef_ptr create_exception (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_NativeDef_ptr create_native (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_AbstractInterfaceDef_ptr create_abstract_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_AbstractInterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_LocalInterfaceDef_ptr create_local_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * id (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void id (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void name (
+ const char * name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * version (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void version (
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container_ptr defined_in (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Repository_ptr containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained::Description * describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ POA_CORBA_ModuleDef_tie (const POA_CORBA_ModuleDef_tie &);
+ void operator= (const POA_CORBA_ModuleDef_tie &);
+};
+
+// TIE class: Refer to CORBA v2.2, Section 20.34.4
+template <class T>
+class POA_CORBA_ConstantDef_tie : public POA_CORBA_ConstantDef
+{
+public:
+ POA_CORBA_ConstantDef_tie (T &t);
+ // the T& ctor
+ POA_CORBA_ConstantDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ POA_CORBA_ConstantDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ POA_CORBA_ConstantDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~POA_CORBA_ConstantDef_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_IDLType_ptr type_def (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void type_def (
+ CORBA_IDLType_ptr type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::Any * value (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void value (
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * id (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void id (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void name (
+ const char * name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * version (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void version (
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container_ptr defined_in (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Repository_ptr containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained::Description * describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ POA_CORBA_ConstantDef_tie (const POA_CORBA_ConstantDef_tie &);
+ void operator= (const POA_CORBA_ConstantDef_tie &);
+};
+
+// TIE class: Refer to CORBA v2.2, Section 20.34.4
+template <class T>
+class POA_CORBA_StructDef_tie : public POA_CORBA_StructDef
+{
+public:
+ POA_CORBA_StructDef_tie (T &t);
+ // the T& ctor
+ POA_CORBA_StructDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ POA_CORBA_StructDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ POA_CORBA_StructDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~POA_CORBA_StructDef_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA_StructMemberSeq * members (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void members (
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained_ptr lookup (
+ const char * search_name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ContainedSeq * contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ContainedSeq * lookup_name (
+ const char * search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container::DescriptionSeq * describe_contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited,
+ CORBA::Long max_returned_objs
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ModuleDef_ptr create_module (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ConstantDef_ptr create_constant (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_StructDef_ptr create_struct (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_UnionDef_ptr create_union (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_EnumDef_ptr create_enum (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_AliasDef_ptr create_alias (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_InterfaceDef_ptr create_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueDef_ptr create_value (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA::Boolean is_custom,
+ CORBA::Boolean is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ CORBA::Boolean is_truncatable,
+ const CORBA_ValueDefSeq & abstract_base_values,
+ const CORBA_InterfaceDefSeq & supported_interfaces,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueBoxDef_ptr create_value_box (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ExceptionDef_ptr create_exception (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_NativeDef_ptr create_native (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_AbstractInterfaceDef_ptr create_abstract_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_AbstractInterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_LocalInterfaceDef_ptr create_local_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * id (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void id (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void name (
+ const char * name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * version (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void version (
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container_ptr defined_in (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Repository_ptr containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained::Description * describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ POA_CORBA_StructDef_tie (const POA_CORBA_StructDef_tie &);
+ void operator= (const POA_CORBA_StructDef_tie &);
+};
+
+// TIE class: Refer to CORBA v2.2, Section 20.34.4
+template <class T>
+class POA_CORBA_UnionDef_tie : public POA_CORBA_UnionDef
+{
+public:
+ POA_CORBA_UnionDef_tie (T &t);
+ // the T& ctor
+ POA_CORBA_UnionDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ POA_CORBA_UnionDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ POA_CORBA_UnionDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~POA_CORBA_UnionDef_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA::TypeCode_ptr discriminator_type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_IDLType_ptr discriminator_type_def (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void discriminator_type_def (
+ CORBA_IDLType_ptr discriminator_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_UnionMemberSeq * members (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void members (
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained_ptr lookup (
+ const char * search_name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ContainedSeq * contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ContainedSeq * lookup_name (
+ const char * search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container::DescriptionSeq * describe_contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited,
+ CORBA::Long max_returned_objs
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ModuleDef_ptr create_module (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ConstantDef_ptr create_constant (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_StructDef_ptr create_struct (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_UnionDef_ptr create_union (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_EnumDef_ptr create_enum (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_AliasDef_ptr create_alias (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_InterfaceDef_ptr create_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueDef_ptr create_value (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA::Boolean is_custom,
+ CORBA::Boolean is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ CORBA::Boolean is_truncatable,
+ const CORBA_ValueDefSeq & abstract_base_values,
+ const CORBA_InterfaceDefSeq & supported_interfaces,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueBoxDef_ptr create_value_box (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ExceptionDef_ptr create_exception (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_NativeDef_ptr create_native (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_AbstractInterfaceDef_ptr create_abstract_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_AbstractInterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_LocalInterfaceDef_ptr create_local_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * id (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void id (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void name (
+ const char * name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * version (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void version (
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container_ptr defined_in (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Repository_ptr containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained::Description * describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ POA_CORBA_UnionDef_tie (const POA_CORBA_UnionDef_tie &);
+ void operator= (const POA_CORBA_UnionDef_tie &);
+};
+
+// TIE class: Refer to CORBA v2.2, Section 20.34.4
+template <class T>
+class POA_CORBA_EnumDef_tie : public POA_CORBA_EnumDef
+{
+public:
+ POA_CORBA_EnumDef_tie (T &t);
+ // the T& ctor
+ POA_CORBA_EnumDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ POA_CORBA_EnumDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ POA_CORBA_EnumDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~POA_CORBA_EnumDef_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA_EnumMemberSeq * members (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void members (
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * id (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void id (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void name (
+ const char * name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * version (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void version (
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container_ptr defined_in (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Repository_ptr containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained::Description * describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ POA_CORBA_EnumDef_tie (const POA_CORBA_EnumDef_tie &);
+ void operator= (const POA_CORBA_EnumDef_tie &);
+};
+
+// TIE class: Refer to CORBA v2.2, Section 20.34.4
+template <class T>
+class POA_CORBA_AliasDef_tie : public POA_CORBA_AliasDef
+{
+public:
+ POA_CORBA_AliasDef_tie (T &t);
+ // the T& ctor
+ POA_CORBA_AliasDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ POA_CORBA_AliasDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ POA_CORBA_AliasDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~POA_CORBA_AliasDef_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA_IDLType_ptr original_type_def (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void original_type_def (
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * id (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void id (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void name (
+ const char * name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * version (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void version (
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container_ptr defined_in (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Repository_ptr containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained::Description * describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ POA_CORBA_AliasDef_tie (const POA_CORBA_AliasDef_tie &);
+ void operator= (const POA_CORBA_AliasDef_tie &);
+};
+
+// TIE class: Refer to CORBA v2.2, Section 20.34.4
+template <class T>
+class POA_CORBA_NativeDef_tie : public POA_CORBA_NativeDef
+{
+public:
+ POA_CORBA_NativeDef_tie (T &t);
+ // the T& ctor
+ POA_CORBA_NativeDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ POA_CORBA_NativeDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ POA_CORBA_NativeDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~POA_CORBA_NativeDef_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ char * id (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void id (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void name (
+ const char * name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * version (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void version (
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container_ptr defined_in (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Repository_ptr containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained::Description * describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ POA_CORBA_NativeDef_tie (const POA_CORBA_NativeDef_tie &);
+ void operator= (const POA_CORBA_NativeDef_tie &);
+};
+
+// TIE class: Refer to CORBA v2.2, Section 20.34.4
+template <class T>
+class POA_CORBA_PrimitiveDef_tie : public POA_CORBA_PrimitiveDef
+{
+public:
+ POA_CORBA_PrimitiveDef_tie (T &t);
+ // the T& ctor
+ POA_CORBA_PrimitiveDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ POA_CORBA_PrimitiveDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ POA_CORBA_PrimitiveDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~POA_CORBA_PrimitiveDef_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA::PrimitiveKind kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ POA_CORBA_PrimitiveDef_tie (const POA_CORBA_PrimitiveDef_tie &);
+ void operator= (const POA_CORBA_PrimitiveDef_tie &);
+};
+
+// TIE class: Refer to CORBA v2.2, Section 20.34.4
+template <class T>
+class POA_CORBA_StringDef_tie : public POA_CORBA_StringDef
+{
+public:
+ POA_CORBA_StringDef_tie (T &t);
+ // the T& ctor
+ POA_CORBA_StringDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ POA_CORBA_StringDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ POA_CORBA_StringDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~POA_CORBA_StringDef_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA::ULong bound (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void bound (
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ POA_CORBA_StringDef_tie (const POA_CORBA_StringDef_tie &);
+ void operator= (const POA_CORBA_StringDef_tie &);
+};
+
+// TIE class: Refer to CORBA v2.2, Section 20.34.4
+template <class T>
+class POA_CORBA_WstringDef_tie : public POA_CORBA_WstringDef
+{
+public:
+ POA_CORBA_WstringDef_tie (T &t);
+ // the T& ctor
+ POA_CORBA_WstringDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ POA_CORBA_WstringDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ POA_CORBA_WstringDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~POA_CORBA_WstringDef_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA::ULong bound (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void bound (
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ POA_CORBA_WstringDef_tie (const POA_CORBA_WstringDef_tie &);
+ void operator= (const POA_CORBA_WstringDef_tie &);
+};
+
+// TIE class: Refer to CORBA v2.2, Section 20.34.4
+template <class T>
+class POA_CORBA_SequenceDef_tie : public POA_CORBA_SequenceDef
+{
+public:
+ POA_CORBA_SequenceDef_tie (T &t);
+ // the T& ctor
+ POA_CORBA_SequenceDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ POA_CORBA_SequenceDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ POA_CORBA_SequenceDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~POA_CORBA_SequenceDef_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA::ULong bound (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void bound (
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::TypeCode_ptr element_type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_IDLType_ptr element_type_def (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void element_type_def (
+ CORBA_IDLType_ptr element_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ POA_CORBA_SequenceDef_tie (const POA_CORBA_SequenceDef_tie &);
+ void operator= (const POA_CORBA_SequenceDef_tie &);
+};
+
+// TIE class: Refer to CORBA v2.2, Section 20.34.4
+template <class T>
+class POA_CORBA_ArrayDef_tie : public POA_CORBA_ArrayDef
+{
+public:
+ POA_CORBA_ArrayDef_tie (T &t);
+ // the T& ctor
+ POA_CORBA_ArrayDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ POA_CORBA_ArrayDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ POA_CORBA_ArrayDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~POA_CORBA_ArrayDef_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA::ULong length (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void length (
+ CORBA::ULong length
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::TypeCode_ptr element_type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_IDLType_ptr element_type_def (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void element_type_def (
+ CORBA_IDLType_ptr element_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ POA_CORBA_ArrayDef_tie (const POA_CORBA_ArrayDef_tie &);
+ void operator= (const POA_CORBA_ArrayDef_tie &);
+};
+
+// TIE class: Refer to CORBA v2.2, Section 20.34.4
+template <class T>
+class POA_CORBA_ExceptionDef_tie : public POA_CORBA_ExceptionDef
+{
+public:
+ POA_CORBA_ExceptionDef_tie (T &t);
+ // the T& ctor
+ POA_CORBA_ExceptionDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ POA_CORBA_ExceptionDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ POA_CORBA_ExceptionDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~POA_CORBA_ExceptionDef_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_StructMemberSeq * members (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void members (
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * id (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void id (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void name (
+ const char * name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * version (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void version (
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container_ptr defined_in (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Repository_ptr containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained::Description * describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained_ptr lookup (
+ const char * search_name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ContainedSeq * contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ContainedSeq * lookup_name (
+ const char * search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container::DescriptionSeq * describe_contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited,
+ CORBA::Long max_returned_objs
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ModuleDef_ptr create_module (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ConstantDef_ptr create_constant (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_StructDef_ptr create_struct (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_UnionDef_ptr create_union (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_EnumDef_ptr create_enum (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_AliasDef_ptr create_alias (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_InterfaceDef_ptr create_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueDef_ptr create_value (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA::Boolean is_custom,
+ CORBA::Boolean is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ CORBA::Boolean is_truncatable,
+ const CORBA_ValueDefSeq & abstract_base_values,
+ const CORBA_InterfaceDefSeq & supported_interfaces,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueBoxDef_ptr create_value_box (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ExceptionDef_ptr create_exception (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_NativeDef_ptr create_native (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_AbstractInterfaceDef_ptr create_abstract_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_AbstractInterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_LocalInterfaceDef_ptr create_local_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ POA_CORBA_ExceptionDef_tie (const POA_CORBA_ExceptionDef_tie &);
+ void operator= (const POA_CORBA_ExceptionDef_tie &);
+};
+
+// TIE class: Refer to CORBA v2.2, Section 20.34.4
+template <class T>
+class POA_CORBA_AttributeDef_tie : public POA_CORBA_AttributeDef
+{
+public:
+ POA_CORBA_AttributeDef_tie (T &t);
+ // the T& ctor
+ POA_CORBA_AttributeDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ POA_CORBA_AttributeDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ POA_CORBA_AttributeDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~POA_CORBA_AttributeDef_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_IDLType_ptr type_def (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void type_def (
+ CORBA_IDLType_ptr type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::AttributeMode mode (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void mode (
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * id (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void id (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void name (
+ const char * name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * version (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void version (
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container_ptr defined_in (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Repository_ptr containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained::Description * describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ POA_CORBA_AttributeDef_tie (const POA_CORBA_AttributeDef_tie &);
+ void operator= (const POA_CORBA_AttributeDef_tie &);
+};
+
+// TIE class: Refer to CORBA v2.2, Section 20.34.4
+template <class T>
+class POA_CORBA_OperationDef_tie : public POA_CORBA_OperationDef
+{
+public:
+ POA_CORBA_OperationDef_tie (T &t);
+ // the T& ctor
+ POA_CORBA_OperationDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ POA_CORBA_OperationDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ POA_CORBA_OperationDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~POA_CORBA_OperationDef_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA::TypeCode_ptr result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_IDLType_ptr result_def (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void result_def (
+ CORBA_IDLType_ptr result_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ParDescriptionSeq * params (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void params (
+ const CORBA_ParDescriptionSeq & params
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::OperationMode mode (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void mode (
+ CORBA::OperationMode mode
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ContextIdSeq * contexts (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void contexts (
+ const CORBA_ContextIdSeq & contexts
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ExceptionDefSeq * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void exceptions (
+ const CORBA_ExceptionDefSeq & exceptions
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * id (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void id (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void name (
+ const char * name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * version (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void version (
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container_ptr defined_in (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Repository_ptr containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained::Description * describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ POA_CORBA_OperationDef_tie (const POA_CORBA_OperationDef_tie &);
+ void operator= (const POA_CORBA_OperationDef_tie &);
+};
+
+// TIE class: Refer to CORBA v2.2, Section 20.34.4
+template <class T>
+class POA_CORBA_InterfaceDef_tie : public POA_CORBA_InterfaceDef
+{
+public:
+ POA_CORBA_InterfaceDef_tie (T &t);
+ // the T& ctor
+ POA_CORBA_InterfaceDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ POA_CORBA_InterfaceDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ POA_CORBA_InterfaceDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~POA_CORBA_InterfaceDef_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA_InterfaceDefSeq * base_interfaces (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void base_interfaces (
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::Boolean is_a (
+ const char * interface_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_InterfaceDef::FullInterfaceDescription * describe_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_AttributeDef_ptr create_attribute (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_OperationDef_ptr create_operation (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr result,
+ CORBA::OperationMode mode,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions,
+ const CORBA_ContextIdSeq & contexts
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained_ptr lookup (
+ const char * search_name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ContainedSeq * contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ContainedSeq * lookup_name (
+ const char * search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container::DescriptionSeq * describe_contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited,
+ CORBA::Long max_returned_objs
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ModuleDef_ptr create_module (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ConstantDef_ptr create_constant (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_StructDef_ptr create_struct (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_UnionDef_ptr create_union (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_EnumDef_ptr create_enum (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_AliasDef_ptr create_alias (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_InterfaceDef_ptr create_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueDef_ptr create_value (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA::Boolean is_custom,
+ CORBA::Boolean is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ CORBA::Boolean is_truncatable,
+ const CORBA_ValueDefSeq & abstract_base_values,
+ const CORBA_InterfaceDefSeq & supported_interfaces,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueBoxDef_ptr create_value_box (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ExceptionDef_ptr create_exception (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_NativeDef_ptr create_native (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_AbstractInterfaceDef_ptr create_abstract_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_AbstractInterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_LocalInterfaceDef_ptr create_local_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * id (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void id (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void name (
+ const char * name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * version (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void version (
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container_ptr defined_in (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Repository_ptr containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained::Description * describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ POA_CORBA_InterfaceDef_tie (const POA_CORBA_InterfaceDef_tie &);
+ void operator= (const POA_CORBA_InterfaceDef_tie &);
+};
+
+// TIE class: Refer to CORBA v2.2, Section 20.34.4
+template <class T>
+class POA_CORBA_AbstractInterfaceDef_tie : public POA_CORBA_AbstractInterfaceDef
+{
+public:
+ POA_CORBA_AbstractInterfaceDef_tie (T &t);
+ // the T& ctor
+ POA_CORBA_AbstractInterfaceDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ POA_CORBA_AbstractInterfaceDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ POA_CORBA_AbstractInterfaceDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~POA_CORBA_AbstractInterfaceDef_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 (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA_InterfaceDefSeq * base_interfaces (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void base_interfaces (
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::Boolean is_a (
+ const char * interface_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_InterfaceDef::FullInterfaceDescription * describe_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_AttributeDef_ptr create_attribute (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_OperationDef_ptr create_operation (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr result,
+ CORBA::OperationMode mode,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions,
+ const CORBA_ContextIdSeq & contexts
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained_ptr lookup (
+ const char * search_name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ContainedSeq * contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ContainedSeq * lookup_name (
+ const char * search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container::DescriptionSeq * describe_contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited,
+ CORBA::Long max_returned_objs
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ModuleDef_ptr create_module (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ConstantDef_ptr create_constant (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_StructDef_ptr create_struct (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_UnionDef_ptr create_union (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_EnumDef_ptr create_enum (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_AliasDef_ptr create_alias (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_InterfaceDef_ptr create_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueDef_ptr create_value (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA::Boolean is_custom,
+ CORBA::Boolean is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ CORBA::Boolean is_truncatable,
+ const CORBA_ValueDefSeq & abstract_base_values,
+ const CORBA_InterfaceDefSeq & supported_interfaces,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueBoxDef_ptr create_value_box (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ExceptionDef_ptr create_exception (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_NativeDef_ptr create_native (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_AbstractInterfaceDef_ptr create_abstract_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_AbstractInterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_LocalInterfaceDef_ptr create_local_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * id (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void id (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void name (
+ const char * name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * version (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void version (
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container_ptr defined_in (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Repository_ptr containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained::Description * describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ POA_CORBA_AbstractInterfaceDef_tie (const POA_CORBA_AbstractInterfaceDef_tie &);
+ void operator= (const POA_CORBA_AbstractInterfaceDef_tie &);
+};
+
+// TIE class: Refer to CORBA v2.2, Section 20.34.4
+template <class T>
+class POA_CORBA_LocalInterfaceDef_tie : public POA_CORBA_LocalInterfaceDef
+{
+public:
+ POA_CORBA_LocalInterfaceDef_tie (T &t);
+ // the T& ctor
+ POA_CORBA_LocalInterfaceDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ POA_CORBA_LocalInterfaceDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ POA_CORBA_LocalInterfaceDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~POA_CORBA_LocalInterfaceDef_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 (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA_InterfaceDefSeq * base_interfaces (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void base_interfaces (
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::Boolean is_a (
+ const char * interface_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_InterfaceDef::FullInterfaceDescription * describe_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_AttributeDef_ptr create_attribute (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_OperationDef_ptr create_operation (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr result,
+ CORBA::OperationMode mode,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions,
+ const CORBA_ContextIdSeq & contexts
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained_ptr lookup (
+ const char * search_name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ContainedSeq * contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ContainedSeq * lookup_name (
+ const char * search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container::DescriptionSeq * describe_contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited,
+ CORBA::Long max_returned_objs
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ModuleDef_ptr create_module (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ConstantDef_ptr create_constant (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_StructDef_ptr create_struct (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_UnionDef_ptr create_union (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_EnumDef_ptr create_enum (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_AliasDef_ptr create_alias (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_InterfaceDef_ptr create_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueDef_ptr create_value (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA::Boolean is_custom,
+ CORBA::Boolean is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ CORBA::Boolean is_truncatable,
+ const CORBA_ValueDefSeq & abstract_base_values,
+ const CORBA_InterfaceDefSeq & supported_interfaces,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueBoxDef_ptr create_value_box (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ExceptionDef_ptr create_exception (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_NativeDef_ptr create_native (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_AbstractInterfaceDef_ptr create_abstract_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_AbstractInterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_LocalInterfaceDef_ptr create_local_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * id (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void id (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void name (
+ const char * name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * version (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void version (
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container_ptr defined_in (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Repository_ptr containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained::Description * describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ POA_CORBA_LocalInterfaceDef_tie (const POA_CORBA_LocalInterfaceDef_tie &);
+ void operator= (const POA_CORBA_LocalInterfaceDef_tie &);
+};
+
+#endif /* ACE_HAS_USING_KEYWORD */
+
+#if defined (__ACE_INLINE__)
+#include "IFR_BasicS_T.i"
+#endif /* defined INLINE */
+
+
+#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
+#include "IFR_BasicS_T.cpp"
+#endif /* defined REQUIRED SOURCE */
+
+
+#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
+#pragma implementation ("IFR_BasicS_T.cpp")
+#endif /* defined REQUIRED PRAGMA */
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#include "ace/post.h"
+#endif /* ifndef */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IFR_BasicS_T.i b/TAO/orbsvcs/orbsvcs/IFRService/IFR_BasicS_T.i
new file mode 100644
index 00000000000..1c872d26eb9
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_BasicS_T.i
@@ -0,0 +1,8163 @@
+// -*- C++ -*-
+//
+// $Id$
+
+// **** Code generated by the The ACE ORB (TAO) IDL Compiler ****
+// TAO and the TAO IDL Compiler have been developed by:
+// Center for Distributed Object Computing
+// Washington University
+// St. Louis, MO
+// USA
+// http://www.cs.wustl.edu/~schmidt/doc-center.html
+// and
+// Distributed Object Computing Laboratory
+// University of California at Irvine
+// Irvine, CA
+// USA
+// http://doc.ece.uci.edu/
+//
+// Information about TAO is available at:
+// http://www.cs.wustl.edu/~schmidt/TAO.html
+
+#if defined (ACE_HAS_USING_KEYWORD)
+
+template <class T> ACE_INLINE
+POA_CORBA_Repository_tie<T>::POA_CORBA_Repository_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_Repository_tie<T>::POA_CORBA_Repository_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_Repository_tie<T>::POA_CORBA_Repository_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_Repository_tie<T>::POA_CORBA_Repository_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_CORBA_Repository_tie<T>::~POA_CORBA_Repository_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_CORBA_Repository_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_Repository_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_CORBA_Repository_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_CORBA_Repository_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_Repository_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_CORBA_Repository_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->POA_CORBA_Repository::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained_ptr POA_CORBA_Repository_tie<T>::lookup_id (
+ const char * search_id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->lookup_id (
+search_id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::TypeCode_ptr POA_CORBA_Repository_tie<T>::get_canonical_typecode (
+ CORBA::TypeCode_ptr tc
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->get_canonical_typecode (
+tc
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_PrimitiveDef_ptr POA_CORBA_Repository_tie<T>::get_primitive (
+ CORBA::PrimitiveKind kind
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->get_primitive (
+kind
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_StringDef_ptr POA_CORBA_Repository_tie<T>::create_string (
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_string (
+bound
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_WstringDef_ptr POA_CORBA_Repository_tie<T>::create_wstring (
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_wstring (
+bound
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_SequenceDef_ptr POA_CORBA_Repository_tie<T>::create_sequence (
+ CORBA::ULong bound,
+ CORBA_IDLType_ptr element_type
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_sequence (
+bound,
+ element_type
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ArrayDef_ptr POA_CORBA_Repository_tie<T>::create_array (
+ CORBA::ULong length,
+ CORBA_IDLType_ptr element_type
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_array (
+length,
+ element_type
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_FixedDef_ptr POA_CORBA_Repository_tie<T>::create_fixed (
+ CORBA::UShort digits,
+ CORBA::Short scale
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_fixed (
+digits,
+ scale
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained_ptr POA_CORBA_Repository_tie<T>::lookup (
+ const char * search_name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->lookup (
+search_name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ContainedSeq * POA_CORBA_Repository_tie<T>::contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->contents (
+limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ContainedSeq * POA_CORBA_Repository_tie<T>::lookup_name (
+ const char * search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->lookup_name (
+search_name,
+ levels_to_search,
+ limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container::DescriptionSeq * POA_CORBA_Repository_tie<T>::describe_contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited,
+ CORBA::Long max_returned_objs
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe_contents (
+limit_type,
+ exclude_inherited,
+ max_returned_objs
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ModuleDef_ptr POA_CORBA_Repository_tie<T>::create_module (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_module (
+id,
+ name,
+ version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ConstantDef_ptr POA_CORBA_Repository_tie<T>::create_constant (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_constant (
+id,
+ name,
+ version,
+ type,
+ value
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_StructDef_ptr POA_CORBA_Repository_tie<T>::create_struct (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_struct (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_UnionDef_ptr POA_CORBA_Repository_tie<T>::create_union (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_union (
+id,
+ name,
+ version,
+ discriminator_type,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_EnumDef_ptr POA_CORBA_Repository_tie<T>::create_enum (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_enum (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_AliasDef_ptr POA_CORBA_Repository_tie<T>::create_alias (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_alias (
+id,
+ name,
+ version,
+ original_type
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_InterfaceDef_ptr POA_CORBA_Repository_tie<T>::create_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueDef_ptr POA_CORBA_Repository_tie<T>::create_value (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA::Boolean is_custom,
+ CORBA::Boolean is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ CORBA::Boolean is_truncatable,
+ const CORBA_ValueDefSeq & abstract_base_values,
+ const CORBA_InterfaceDefSeq & supported_interfaces,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_value (
+id,
+ name,
+ version,
+ is_custom,
+ is_abstract,
+ base_value,
+ is_truncatable,
+ abstract_base_values,
+ supported_interfaces,
+ initializers
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueBoxDef_ptr POA_CORBA_Repository_tie<T>::create_value_box (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_value_box (
+id,
+ name,
+ version,
+ original_type_def
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ExceptionDef_ptr POA_CORBA_Repository_tie<T>::create_exception (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_exception (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_NativeDef_ptr POA_CORBA_Repository_tie<T>::create_native (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_native (
+id,
+ name,
+ version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_AbstractInterfaceDef_ptr POA_CORBA_Repository_tie<T>::create_abstract_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_AbstractInterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_abstract_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_LocalInterfaceDef_ptr POA_CORBA_Repository_tie<T>::create_local_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_local_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_CORBA_Repository_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_Repository_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_CORBA_ModuleDef_tie<T>::POA_CORBA_ModuleDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_ModuleDef_tie<T>::POA_CORBA_ModuleDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_ModuleDef_tie<T>::POA_CORBA_ModuleDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_ModuleDef_tie<T>::POA_CORBA_ModuleDef_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_CORBA_ModuleDef_tie<T>::~POA_CORBA_ModuleDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_CORBA_ModuleDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_ModuleDef_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_CORBA_ModuleDef_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_CORBA_ModuleDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_ModuleDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_CORBA_ModuleDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->POA_CORBA_ModuleDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained_ptr POA_CORBA_ModuleDef_tie<T>::lookup (
+ const char * search_name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->lookup (
+search_name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ContainedSeq * POA_CORBA_ModuleDef_tie<T>::contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->contents (
+limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ContainedSeq * POA_CORBA_ModuleDef_tie<T>::lookup_name (
+ const char * search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->lookup_name (
+search_name,
+ levels_to_search,
+ limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container::DescriptionSeq * POA_CORBA_ModuleDef_tie<T>::describe_contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited,
+ CORBA::Long max_returned_objs
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe_contents (
+limit_type,
+ exclude_inherited,
+ max_returned_objs
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ModuleDef_ptr POA_CORBA_ModuleDef_tie<T>::create_module (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_module (
+id,
+ name,
+ version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ConstantDef_ptr POA_CORBA_ModuleDef_tie<T>::create_constant (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_constant (
+id,
+ name,
+ version,
+ type,
+ value
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_StructDef_ptr POA_CORBA_ModuleDef_tie<T>::create_struct (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_struct (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_UnionDef_ptr POA_CORBA_ModuleDef_tie<T>::create_union (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_union (
+id,
+ name,
+ version,
+ discriminator_type,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_EnumDef_ptr POA_CORBA_ModuleDef_tie<T>::create_enum (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_enum (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_AliasDef_ptr POA_CORBA_ModuleDef_tie<T>::create_alias (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_alias (
+id,
+ name,
+ version,
+ original_type
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_InterfaceDef_ptr POA_CORBA_ModuleDef_tie<T>::create_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueDef_ptr POA_CORBA_ModuleDef_tie<T>::create_value (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA::Boolean is_custom,
+ CORBA::Boolean is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ CORBA::Boolean is_truncatable,
+ const CORBA_ValueDefSeq & abstract_base_values,
+ const CORBA_InterfaceDefSeq & supported_interfaces,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_value (
+id,
+ name,
+ version,
+ is_custom,
+ is_abstract,
+ base_value,
+ is_truncatable,
+ abstract_base_values,
+ supported_interfaces,
+ initializers
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueBoxDef_ptr POA_CORBA_ModuleDef_tie<T>::create_value_box (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_value_box (
+id,
+ name,
+ version,
+ original_type_def
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ExceptionDef_ptr POA_CORBA_ModuleDef_tie<T>::create_exception (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_exception (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_NativeDef_ptr POA_CORBA_ModuleDef_tie<T>::create_native (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_native (
+id,
+ name,
+ version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_AbstractInterfaceDef_ptr POA_CORBA_ModuleDef_tie<T>::create_abstract_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_AbstractInterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_abstract_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_LocalInterfaceDef_ptr POA_CORBA_ModuleDef_tie<T>::create_local_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_local_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_ModuleDef_tie<T>::id (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->id (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ModuleDef_tie<T>::id (
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->id (
+id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_ModuleDef_tie<T>::name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ModuleDef_tie<T>::name (
+ const char * name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->name (
+name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_ModuleDef_tie<T>::version (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->version (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ModuleDef_tie<T>::version (
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->version (
+version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container_ptr POA_CORBA_ModuleDef_tie<T>::defined_in (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->defined_in (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_ModuleDef_tie<T>::absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->absolute_name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Repository_ptr POA_CORBA_ModuleDef_tie<T>::containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->containing_repository (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained::Description * POA_CORBA_ModuleDef_tie<T>::describe (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ModuleDef_tie<T>::move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->move (
+new_container,
+ new_name,
+ new_version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_CORBA_ModuleDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ModuleDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_CORBA_ConstantDef_tie<T>::POA_CORBA_ConstantDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_ConstantDef_tie<T>::POA_CORBA_ConstantDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_ConstantDef_tie<T>::POA_CORBA_ConstantDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_ConstantDef_tie<T>::POA_CORBA_ConstantDef_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_CORBA_ConstantDef_tie<T>::~POA_CORBA_ConstantDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_CORBA_ConstantDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_ConstantDef_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_CORBA_ConstantDef_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_CORBA_ConstantDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_ConstantDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_CORBA_ConstantDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->POA_CORBA_ConstantDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA::TypeCode_ptr POA_CORBA_ConstantDef_tie<T>::type (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_IDLType_ptr POA_CORBA_ConstantDef_tie<T>::type_def (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->type_def (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ConstantDef_tie<T>::type_def (
+ CORBA_IDLType_ptr type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->type_def (
+type_def
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::Any * POA_CORBA_ConstantDef_tie<T>::value (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->value (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ConstantDef_tie<T>::value (
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->value (
+value
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_ConstantDef_tie<T>::id (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->id (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ConstantDef_tie<T>::id (
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->id (
+id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_ConstantDef_tie<T>::name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ConstantDef_tie<T>::name (
+ const char * name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->name (
+name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_ConstantDef_tie<T>::version (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->version (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ConstantDef_tie<T>::version (
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->version (
+version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container_ptr POA_CORBA_ConstantDef_tie<T>::defined_in (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->defined_in (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_ConstantDef_tie<T>::absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->absolute_name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Repository_ptr POA_CORBA_ConstantDef_tie<T>::containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->containing_repository (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained::Description * POA_CORBA_ConstantDef_tie<T>::describe (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ConstantDef_tie<T>::move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->move (
+new_container,
+ new_name,
+ new_version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_CORBA_ConstantDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ConstantDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_CORBA_StructDef_tie<T>::POA_CORBA_StructDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_StructDef_tie<T>::POA_CORBA_StructDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_StructDef_tie<T>::POA_CORBA_StructDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_StructDef_tie<T>::POA_CORBA_StructDef_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_CORBA_StructDef_tie<T>::~POA_CORBA_StructDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_CORBA_StructDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_StructDef_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_CORBA_StructDef_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_CORBA_StructDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_StructDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_CORBA_StructDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->POA_CORBA_StructDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA_StructMemberSeq * POA_CORBA_StructDef_tie<T>::members (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->members (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_StructDef_tie<T>::members (
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->members (
+members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained_ptr POA_CORBA_StructDef_tie<T>::lookup (
+ const char * search_name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->lookup (
+search_name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ContainedSeq * POA_CORBA_StructDef_tie<T>::contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->contents (
+limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ContainedSeq * POA_CORBA_StructDef_tie<T>::lookup_name (
+ const char * search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->lookup_name (
+search_name,
+ levels_to_search,
+ limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container::DescriptionSeq * POA_CORBA_StructDef_tie<T>::describe_contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited,
+ CORBA::Long max_returned_objs
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe_contents (
+limit_type,
+ exclude_inherited,
+ max_returned_objs
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ModuleDef_ptr POA_CORBA_StructDef_tie<T>::create_module (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_module (
+id,
+ name,
+ version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ConstantDef_ptr POA_CORBA_StructDef_tie<T>::create_constant (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_constant (
+id,
+ name,
+ version,
+ type,
+ value
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_StructDef_ptr POA_CORBA_StructDef_tie<T>::create_struct (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_struct (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_UnionDef_ptr POA_CORBA_StructDef_tie<T>::create_union (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_union (
+id,
+ name,
+ version,
+ discriminator_type,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_EnumDef_ptr POA_CORBA_StructDef_tie<T>::create_enum (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_enum (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_AliasDef_ptr POA_CORBA_StructDef_tie<T>::create_alias (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_alias (
+id,
+ name,
+ version,
+ original_type
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_InterfaceDef_ptr POA_CORBA_StructDef_tie<T>::create_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueDef_ptr POA_CORBA_StructDef_tie<T>::create_value (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA::Boolean is_custom,
+ CORBA::Boolean is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ CORBA::Boolean is_truncatable,
+ const CORBA_ValueDefSeq & abstract_base_values,
+ const CORBA_InterfaceDefSeq & supported_interfaces,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_value (
+id,
+ name,
+ version,
+ is_custom,
+ is_abstract,
+ base_value,
+ is_truncatable,
+ abstract_base_values,
+ supported_interfaces,
+ initializers
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueBoxDef_ptr POA_CORBA_StructDef_tie<T>::create_value_box (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_value_box (
+id,
+ name,
+ version,
+ original_type_def
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ExceptionDef_ptr POA_CORBA_StructDef_tie<T>::create_exception (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_exception (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_NativeDef_ptr POA_CORBA_StructDef_tie<T>::create_native (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_native (
+id,
+ name,
+ version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_AbstractInterfaceDef_ptr POA_CORBA_StructDef_tie<T>::create_abstract_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_AbstractInterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_abstract_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_LocalInterfaceDef_ptr POA_CORBA_StructDef_tie<T>::create_local_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_local_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_StructDef_tie<T>::id (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->id (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_StructDef_tie<T>::id (
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->id (
+id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_StructDef_tie<T>::name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_StructDef_tie<T>::name (
+ const char * name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->name (
+name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_StructDef_tie<T>::version (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->version (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_StructDef_tie<T>::version (
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->version (
+version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container_ptr POA_CORBA_StructDef_tie<T>::defined_in (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->defined_in (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_StructDef_tie<T>::absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->absolute_name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Repository_ptr POA_CORBA_StructDef_tie<T>::containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->containing_repository (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained::Description * POA_CORBA_StructDef_tie<T>::describe (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_StructDef_tie<T>::move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->move (
+new_container,
+ new_name,
+ new_version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::TypeCode_ptr POA_CORBA_StructDef_tie<T>::type (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_CORBA_StructDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_StructDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_CORBA_UnionDef_tie<T>::POA_CORBA_UnionDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_UnionDef_tie<T>::POA_CORBA_UnionDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_UnionDef_tie<T>::POA_CORBA_UnionDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_UnionDef_tie<T>::POA_CORBA_UnionDef_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_CORBA_UnionDef_tie<T>::~POA_CORBA_UnionDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_CORBA_UnionDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_UnionDef_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_CORBA_UnionDef_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_CORBA_UnionDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_UnionDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_CORBA_UnionDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->POA_CORBA_UnionDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA::TypeCode_ptr POA_CORBA_UnionDef_tie<T>::discriminator_type (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->discriminator_type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_IDLType_ptr POA_CORBA_UnionDef_tie<T>::discriminator_type_def (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->discriminator_type_def (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_UnionDef_tie<T>::discriminator_type_def (
+ CORBA_IDLType_ptr discriminator_type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->discriminator_type_def (
+discriminator_type_def
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_UnionMemberSeq * POA_CORBA_UnionDef_tie<T>::members (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->members (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_UnionDef_tie<T>::members (
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->members (
+members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained_ptr POA_CORBA_UnionDef_tie<T>::lookup (
+ const char * search_name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->lookup (
+search_name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ContainedSeq * POA_CORBA_UnionDef_tie<T>::contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->contents (
+limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ContainedSeq * POA_CORBA_UnionDef_tie<T>::lookup_name (
+ const char * search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->lookup_name (
+search_name,
+ levels_to_search,
+ limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container::DescriptionSeq * POA_CORBA_UnionDef_tie<T>::describe_contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited,
+ CORBA::Long max_returned_objs
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe_contents (
+limit_type,
+ exclude_inherited,
+ max_returned_objs
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ModuleDef_ptr POA_CORBA_UnionDef_tie<T>::create_module (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_module (
+id,
+ name,
+ version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ConstantDef_ptr POA_CORBA_UnionDef_tie<T>::create_constant (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_constant (
+id,
+ name,
+ version,
+ type,
+ value
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_StructDef_ptr POA_CORBA_UnionDef_tie<T>::create_struct (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_struct (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_UnionDef_ptr POA_CORBA_UnionDef_tie<T>::create_union (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_union (
+id,
+ name,
+ version,
+ discriminator_type,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_EnumDef_ptr POA_CORBA_UnionDef_tie<T>::create_enum (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_enum (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_AliasDef_ptr POA_CORBA_UnionDef_tie<T>::create_alias (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_alias (
+id,
+ name,
+ version,
+ original_type
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_InterfaceDef_ptr POA_CORBA_UnionDef_tie<T>::create_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueDef_ptr POA_CORBA_UnionDef_tie<T>::create_value (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA::Boolean is_custom,
+ CORBA::Boolean is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ CORBA::Boolean is_truncatable,
+ const CORBA_ValueDefSeq & abstract_base_values,
+ const CORBA_InterfaceDefSeq & supported_interfaces,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_value (
+id,
+ name,
+ version,
+ is_custom,
+ is_abstract,
+ base_value,
+ is_truncatable,
+ abstract_base_values,
+ supported_interfaces,
+ initializers
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueBoxDef_ptr POA_CORBA_UnionDef_tie<T>::create_value_box (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_value_box (
+id,
+ name,
+ version,
+ original_type_def
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ExceptionDef_ptr POA_CORBA_UnionDef_tie<T>::create_exception (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_exception (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_NativeDef_ptr POA_CORBA_UnionDef_tie<T>::create_native (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_native (
+id,
+ name,
+ version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_AbstractInterfaceDef_ptr POA_CORBA_UnionDef_tie<T>::create_abstract_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_AbstractInterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_abstract_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_LocalInterfaceDef_ptr POA_CORBA_UnionDef_tie<T>::create_local_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_local_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_UnionDef_tie<T>::id (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->id (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_UnionDef_tie<T>::id (
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->id (
+id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_UnionDef_tie<T>::name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_UnionDef_tie<T>::name (
+ const char * name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->name (
+name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_UnionDef_tie<T>::version (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->version (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_UnionDef_tie<T>::version (
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->version (
+version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container_ptr POA_CORBA_UnionDef_tie<T>::defined_in (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->defined_in (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_UnionDef_tie<T>::absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->absolute_name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Repository_ptr POA_CORBA_UnionDef_tie<T>::containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->containing_repository (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained::Description * POA_CORBA_UnionDef_tie<T>::describe (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_UnionDef_tie<T>::move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->move (
+new_container,
+ new_name,
+ new_version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::TypeCode_ptr POA_CORBA_UnionDef_tie<T>::type (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_CORBA_UnionDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_UnionDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_CORBA_EnumDef_tie<T>::POA_CORBA_EnumDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_EnumDef_tie<T>::POA_CORBA_EnumDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_EnumDef_tie<T>::POA_CORBA_EnumDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_EnumDef_tie<T>::POA_CORBA_EnumDef_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_CORBA_EnumDef_tie<T>::~POA_CORBA_EnumDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_CORBA_EnumDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_EnumDef_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_CORBA_EnumDef_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_CORBA_EnumDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_EnumDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_CORBA_EnumDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->POA_CORBA_EnumDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA_EnumMemberSeq * POA_CORBA_EnumDef_tie<T>::members (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->members (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_EnumDef_tie<T>::members (
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->members (
+members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_EnumDef_tie<T>::id (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->id (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_EnumDef_tie<T>::id (
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->id (
+id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_EnumDef_tie<T>::name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_EnumDef_tie<T>::name (
+ const char * name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->name (
+name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_EnumDef_tie<T>::version (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->version (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_EnumDef_tie<T>::version (
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->version (
+version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container_ptr POA_CORBA_EnumDef_tie<T>::defined_in (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->defined_in (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_EnumDef_tie<T>::absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->absolute_name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Repository_ptr POA_CORBA_EnumDef_tie<T>::containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->containing_repository (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained::Description * POA_CORBA_EnumDef_tie<T>::describe (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_EnumDef_tie<T>::move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->move (
+new_container,
+ new_name,
+ new_version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::TypeCode_ptr POA_CORBA_EnumDef_tie<T>::type (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_CORBA_EnumDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_EnumDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_CORBA_AliasDef_tie<T>::POA_CORBA_AliasDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_AliasDef_tie<T>::POA_CORBA_AliasDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_AliasDef_tie<T>::POA_CORBA_AliasDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_AliasDef_tie<T>::POA_CORBA_AliasDef_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_CORBA_AliasDef_tie<T>::~POA_CORBA_AliasDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_CORBA_AliasDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_AliasDef_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_CORBA_AliasDef_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_CORBA_AliasDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_AliasDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_CORBA_AliasDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->POA_CORBA_AliasDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA_IDLType_ptr POA_CORBA_AliasDef_tie<T>::original_type_def (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->original_type_def (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_AliasDef_tie<T>::original_type_def (
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->original_type_def (
+original_type_def
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_AliasDef_tie<T>::id (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->id (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_AliasDef_tie<T>::id (
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->id (
+id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_AliasDef_tie<T>::name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_AliasDef_tie<T>::name (
+ const char * name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->name (
+name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_AliasDef_tie<T>::version (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->version (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_AliasDef_tie<T>::version (
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->version (
+version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container_ptr POA_CORBA_AliasDef_tie<T>::defined_in (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->defined_in (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_AliasDef_tie<T>::absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->absolute_name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Repository_ptr POA_CORBA_AliasDef_tie<T>::containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->containing_repository (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained::Description * POA_CORBA_AliasDef_tie<T>::describe (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_AliasDef_tie<T>::move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->move (
+new_container,
+ new_name,
+ new_version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::TypeCode_ptr POA_CORBA_AliasDef_tie<T>::type (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_CORBA_AliasDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_AliasDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_CORBA_NativeDef_tie<T>::POA_CORBA_NativeDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_NativeDef_tie<T>::POA_CORBA_NativeDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_NativeDef_tie<T>::POA_CORBA_NativeDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_NativeDef_tie<T>::POA_CORBA_NativeDef_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_CORBA_NativeDef_tie<T>::~POA_CORBA_NativeDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_CORBA_NativeDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_NativeDef_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_CORBA_NativeDef_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_CORBA_NativeDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_NativeDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_CORBA_NativeDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->POA_CORBA_NativeDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_NativeDef_tie<T>::id (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->id (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_NativeDef_tie<T>::id (
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->id (
+id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_NativeDef_tie<T>::name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_NativeDef_tie<T>::name (
+ const char * name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->name (
+name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_NativeDef_tie<T>::version (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->version (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_NativeDef_tie<T>::version (
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->version (
+version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container_ptr POA_CORBA_NativeDef_tie<T>::defined_in (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->defined_in (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_NativeDef_tie<T>::absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->absolute_name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Repository_ptr POA_CORBA_NativeDef_tie<T>::containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->containing_repository (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained::Description * POA_CORBA_NativeDef_tie<T>::describe (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_NativeDef_tie<T>::move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->move (
+new_container,
+ new_name,
+ new_version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::TypeCode_ptr POA_CORBA_NativeDef_tie<T>::type (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_CORBA_NativeDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_NativeDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_CORBA_PrimitiveDef_tie<T>::POA_CORBA_PrimitiveDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_PrimitiveDef_tie<T>::POA_CORBA_PrimitiveDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_PrimitiveDef_tie<T>::POA_CORBA_PrimitiveDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_PrimitiveDef_tie<T>::POA_CORBA_PrimitiveDef_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_CORBA_PrimitiveDef_tie<T>::~POA_CORBA_PrimitiveDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_CORBA_PrimitiveDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_PrimitiveDef_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_CORBA_PrimitiveDef_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_CORBA_PrimitiveDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_PrimitiveDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_CORBA_PrimitiveDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->POA_CORBA_PrimitiveDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA::PrimitiveKind POA_CORBA_PrimitiveDef_tie<T>::kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::TypeCode_ptr POA_CORBA_PrimitiveDef_tie<T>::type (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_CORBA_PrimitiveDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_PrimitiveDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_CORBA_StringDef_tie<T>::POA_CORBA_StringDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_StringDef_tie<T>::POA_CORBA_StringDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_StringDef_tie<T>::POA_CORBA_StringDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_StringDef_tie<T>::POA_CORBA_StringDef_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_CORBA_StringDef_tie<T>::~POA_CORBA_StringDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_CORBA_StringDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_StringDef_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_CORBA_StringDef_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_CORBA_StringDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_StringDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_CORBA_StringDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->POA_CORBA_StringDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA::ULong POA_CORBA_StringDef_tie<T>::bound (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->bound (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_StringDef_tie<T>::bound (
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->bound (
+bound
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::TypeCode_ptr POA_CORBA_StringDef_tie<T>::type (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_CORBA_StringDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_StringDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_CORBA_WstringDef_tie<T>::POA_CORBA_WstringDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_WstringDef_tie<T>::POA_CORBA_WstringDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_WstringDef_tie<T>::POA_CORBA_WstringDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_WstringDef_tie<T>::POA_CORBA_WstringDef_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_CORBA_WstringDef_tie<T>::~POA_CORBA_WstringDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_CORBA_WstringDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_WstringDef_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_CORBA_WstringDef_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_CORBA_WstringDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_WstringDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_CORBA_WstringDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->POA_CORBA_WstringDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA::ULong POA_CORBA_WstringDef_tie<T>::bound (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->bound (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_WstringDef_tie<T>::bound (
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->bound (
+bound
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::TypeCode_ptr POA_CORBA_WstringDef_tie<T>::type (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_CORBA_WstringDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_WstringDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_CORBA_SequenceDef_tie<T>::POA_CORBA_SequenceDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_SequenceDef_tie<T>::POA_CORBA_SequenceDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_SequenceDef_tie<T>::POA_CORBA_SequenceDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_SequenceDef_tie<T>::POA_CORBA_SequenceDef_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_CORBA_SequenceDef_tie<T>::~POA_CORBA_SequenceDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_CORBA_SequenceDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_SequenceDef_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_CORBA_SequenceDef_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_CORBA_SequenceDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_SequenceDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_CORBA_SequenceDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->POA_CORBA_SequenceDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA::ULong POA_CORBA_SequenceDef_tie<T>::bound (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->bound (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_SequenceDef_tie<T>::bound (
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->bound (
+bound
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::TypeCode_ptr POA_CORBA_SequenceDef_tie<T>::element_type (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->element_type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_IDLType_ptr POA_CORBA_SequenceDef_tie<T>::element_type_def (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->element_type_def (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_SequenceDef_tie<T>::element_type_def (
+ CORBA_IDLType_ptr element_type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->element_type_def (
+element_type_def
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::TypeCode_ptr POA_CORBA_SequenceDef_tie<T>::type (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_CORBA_SequenceDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_SequenceDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_CORBA_ArrayDef_tie<T>::POA_CORBA_ArrayDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_ArrayDef_tie<T>::POA_CORBA_ArrayDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_ArrayDef_tie<T>::POA_CORBA_ArrayDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_ArrayDef_tie<T>::POA_CORBA_ArrayDef_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_CORBA_ArrayDef_tie<T>::~POA_CORBA_ArrayDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_CORBA_ArrayDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_ArrayDef_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_CORBA_ArrayDef_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_CORBA_ArrayDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_ArrayDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_CORBA_ArrayDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->POA_CORBA_ArrayDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA::ULong POA_CORBA_ArrayDef_tie<T>::length (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->length (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ArrayDef_tie<T>::length (
+ CORBA::ULong length
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->length (
+length
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::TypeCode_ptr POA_CORBA_ArrayDef_tie<T>::element_type (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->element_type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_IDLType_ptr POA_CORBA_ArrayDef_tie<T>::element_type_def (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->element_type_def (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ArrayDef_tie<T>::element_type_def (
+ CORBA_IDLType_ptr element_type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->element_type_def (
+element_type_def
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::TypeCode_ptr POA_CORBA_ArrayDef_tie<T>::type (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_CORBA_ArrayDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ArrayDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_CORBA_ExceptionDef_tie<T>::POA_CORBA_ExceptionDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_ExceptionDef_tie<T>::POA_CORBA_ExceptionDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_ExceptionDef_tie<T>::POA_CORBA_ExceptionDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_ExceptionDef_tie<T>::POA_CORBA_ExceptionDef_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_CORBA_ExceptionDef_tie<T>::~POA_CORBA_ExceptionDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_CORBA_ExceptionDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_ExceptionDef_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_CORBA_ExceptionDef_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_CORBA_ExceptionDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_ExceptionDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_CORBA_ExceptionDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->POA_CORBA_ExceptionDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA::TypeCode_ptr POA_CORBA_ExceptionDef_tie<T>::type (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_StructMemberSeq * POA_CORBA_ExceptionDef_tie<T>::members (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->members (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ExceptionDef_tie<T>::members (
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->members (
+members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_ExceptionDef_tie<T>::id (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->id (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ExceptionDef_tie<T>::id (
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->id (
+id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_ExceptionDef_tie<T>::name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ExceptionDef_tie<T>::name (
+ const char * name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->name (
+name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_ExceptionDef_tie<T>::version (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->version (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ExceptionDef_tie<T>::version (
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->version (
+version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container_ptr POA_CORBA_ExceptionDef_tie<T>::defined_in (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->defined_in (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_ExceptionDef_tie<T>::absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->absolute_name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Repository_ptr POA_CORBA_ExceptionDef_tie<T>::containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->containing_repository (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained::Description * POA_CORBA_ExceptionDef_tie<T>::describe (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ExceptionDef_tie<T>::move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->move (
+new_container,
+ new_name,
+ new_version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained_ptr POA_CORBA_ExceptionDef_tie<T>::lookup (
+ const char * search_name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->lookup (
+search_name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ContainedSeq * POA_CORBA_ExceptionDef_tie<T>::contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->contents (
+limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ContainedSeq * POA_CORBA_ExceptionDef_tie<T>::lookup_name (
+ const char * search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->lookup_name (
+search_name,
+ levels_to_search,
+ limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container::DescriptionSeq * POA_CORBA_ExceptionDef_tie<T>::describe_contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited,
+ CORBA::Long max_returned_objs
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe_contents (
+limit_type,
+ exclude_inherited,
+ max_returned_objs
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ModuleDef_ptr POA_CORBA_ExceptionDef_tie<T>::create_module (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_module (
+id,
+ name,
+ version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ConstantDef_ptr POA_CORBA_ExceptionDef_tie<T>::create_constant (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_constant (
+id,
+ name,
+ version,
+ type,
+ value
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_StructDef_ptr POA_CORBA_ExceptionDef_tie<T>::create_struct (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_struct (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_UnionDef_ptr POA_CORBA_ExceptionDef_tie<T>::create_union (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_union (
+id,
+ name,
+ version,
+ discriminator_type,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_EnumDef_ptr POA_CORBA_ExceptionDef_tie<T>::create_enum (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_enum (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_AliasDef_ptr POA_CORBA_ExceptionDef_tie<T>::create_alias (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_alias (
+id,
+ name,
+ version,
+ original_type
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_InterfaceDef_ptr POA_CORBA_ExceptionDef_tie<T>::create_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueDef_ptr POA_CORBA_ExceptionDef_tie<T>::create_value (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA::Boolean is_custom,
+ CORBA::Boolean is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ CORBA::Boolean is_truncatable,
+ const CORBA_ValueDefSeq & abstract_base_values,
+ const CORBA_InterfaceDefSeq & supported_interfaces,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_value (
+id,
+ name,
+ version,
+ is_custom,
+ is_abstract,
+ base_value,
+ is_truncatable,
+ abstract_base_values,
+ supported_interfaces,
+ initializers
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueBoxDef_ptr POA_CORBA_ExceptionDef_tie<T>::create_value_box (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_value_box (
+id,
+ name,
+ version,
+ original_type_def
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ExceptionDef_ptr POA_CORBA_ExceptionDef_tie<T>::create_exception (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_exception (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_NativeDef_ptr POA_CORBA_ExceptionDef_tie<T>::create_native (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_native (
+id,
+ name,
+ version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_AbstractInterfaceDef_ptr POA_CORBA_ExceptionDef_tie<T>::create_abstract_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_AbstractInterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_abstract_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_LocalInterfaceDef_ptr POA_CORBA_ExceptionDef_tie<T>::create_local_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_local_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_CORBA_ExceptionDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ExceptionDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_CORBA_AttributeDef_tie<T>::POA_CORBA_AttributeDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_AttributeDef_tie<T>::POA_CORBA_AttributeDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_AttributeDef_tie<T>::POA_CORBA_AttributeDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_AttributeDef_tie<T>::POA_CORBA_AttributeDef_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_CORBA_AttributeDef_tie<T>::~POA_CORBA_AttributeDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_CORBA_AttributeDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_AttributeDef_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_CORBA_AttributeDef_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_CORBA_AttributeDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_AttributeDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_CORBA_AttributeDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->POA_CORBA_AttributeDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA::TypeCode_ptr POA_CORBA_AttributeDef_tie<T>::type (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_IDLType_ptr POA_CORBA_AttributeDef_tie<T>::type_def (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->type_def (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_AttributeDef_tie<T>::type_def (
+ CORBA_IDLType_ptr type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->type_def (
+type_def
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::AttributeMode POA_CORBA_AttributeDef_tie<T>::mode (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->mode (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_AttributeDef_tie<T>::mode (
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->mode (
+mode
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_AttributeDef_tie<T>::id (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->id (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_AttributeDef_tie<T>::id (
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->id (
+id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_AttributeDef_tie<T>::name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_AttributeDef_tie<T>::name (
+ const char * name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->name (
+name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_AttributeDef_tie<T>::version (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->version (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_AttributeDef_tie<T>::version (
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->version (
+version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container_ptr POA_CORBA_AttributeDef_tie<T>::defined_in (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->defined_in (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_AttributeDef_tie<T>::absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->absolute_name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Repository_ptr POA_CORBA_AttributeDef_tie<T>::containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->containing_repository (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained::Description * POA_CORBA_AttributeDef_tie<T>::describe (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_AttributeDef_tie<T>::move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->move (
+new_container,
+ new_name,
+ new_version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_CORBA_AttributeDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_AttributeDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_CORBA_OperationDef_tie<T>::POA_CORBA_OperationDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_OperationDef_tie<T>::POA_CORBA_OperationDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_OperationDef_tie<T>::POA_CORBA_OperationDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_OperationDef_tie<T>::POA_CORBA_OperationDef_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_CORBA_OperationDef_tie<T>::~POA_CORBA_OperationDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_CORBA_OperationDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_OperationDef_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_CORBA_OperationDef_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_CORBA_OperationDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_OperationDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_CORBA_OperationDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->POA_CORBA_OperationDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA::TypeCode_ptr POA_CORBA_OperationDef_tie<T>::result (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->result (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_IDLType_ptr POA_CORBA_OperationDef_tie<T>::result_def (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->result_def (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_OperationDef_tie<T>::result_def (
+ CORBA_IDLType_ptr result_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->result_def (
+result_def
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ParDescriptionSeq * POA_CORBA_OperationDef_tie<T>::params (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->params (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_OperationDef_tie<T>::params (
+ const CORBA_ParDescriptionSeq & params
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->params (
+params
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::OperationMode POA_CORBA_OperationDef_tie<T>::mode (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->mode (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_OperationDef_tie<T>::mode (
+ CORBA::OperationMode mode
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->mode (
+mode
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ContextIdSeq * POA_CORBA_OperationDef_tie<T>::contexts (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->contexts (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_OperationDef_tie<T>::contexts (
+ const CORBA_ContextIdSeq & contexts
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->contexts (
+contexts
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ExceptionDefSeq * POA_CORBA_OperationDef_tie<T>::exceptions (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->exceptions (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_OperationDef_tie<T>::exceptions (
+ const CORBA_ExceptionDefSeq & exceptions
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->exceptions (
+exceptions
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_OperationDef_tie<T>::id (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->id (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_OperationDef_tie<T>::id (
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->id (
+id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_OperationDef_tie<T>::name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_OperationDef_tie<T>::name (
+ const char * name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->name (
+name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_OperationDef_tie<T>::version (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->version (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_OperationDef_tie<T>::version (
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->version (
+version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container_ptr POA_CORBA_OperationDef_tie<T>::defined_in (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->defined_in (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_OperationDef_tie<T>::absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->absolute_name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Repository_ptr POA_CORBA_OperationDef_tie<T>::containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->containing_repository (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained::Description * POA_CORBA_OperationDef_tie<T>::describe (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_OperationDef_tie<T>::move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->move (
+new_container,
+ new_name,
+ new_version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_CORBA_OperationDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_OperationDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_CORBA_InterfaceDef_tie<T>::POA_CORBA_InterfaceDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_InterfaceDef_tie<T>::POA_CORBA_InterfaceDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_InterfaceDef_tie<T>::POA_CORBA_InterfaceDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_InterfaceDef_tie<T>::POA_CORBA_InterfaceDef_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_CORBA_InterfaceDef_tie<T>::~POA_CORBA_InterfaceDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_CORBA_InterfaceDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_InterfaceDef_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_CORBA_InterfaceDef_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_CORBA_InterfaceDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_InterfaceDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_CORBA_InterfaceDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->POA_CORBA_InterfaceDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA_InterfaceDefSeq * POA_CORBA_InterfaceDef_tie<T>::base_interfaces (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->base_interfaces (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_InterfaceDef_tie<T>::base_interfaces (
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->base_interfaces (
+base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::Boolean POA_CORBA_InterfaceDef_tie<T>::is_a (
+ const char * interface_id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->is_a (
+interface_id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_InterfaceDef::FullInterfaceDescription * POA_CORBA_InterfaceDef_tie<T>::describe_interface (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe_interface (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_AttributeDef_ptr POA_CORBA_InterfaceDef_tie<T>::create_attribute (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_attribute (
+id,
+ name,
+ version,
+ type,
+ mode
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_OperationDef_ptr POA_CORBA_InterfaceDef_tie<T>::create_operation (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr result,
+ CORBA::OperationMode mode,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions,
+ const CORBA_ContextIdSeq & contexts
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_operation (
+id,
+ name,
+ version,
+ result,
+ mode,
+ params,
+ exceptions,
+ contexts
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained_ptr POA_CORBA_InterfaceDef_tie<T>::lookup (
+ const char * search_name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->lookup (
+search_name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ContainedSeq * POA_CORBA_InterfaceDef_tie<T>::contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->contents (
+limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ContainedSeq * POA_CORBA_InterfaceDef_tie<T>::lookup_name (
+ const char * search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->lookup_name (
+search_name,
+ levels_to_search,
+ limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container::DescriptionSeq * POA_CORBA_InterfaceDef_tie<T>::describe_contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited,
+ CORBA::Long max_returned_objs
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe_contents (
+limit_type,
+ exclude_inherited,
+ max_returned_objs
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ModuleDef_ptr POA_CORBA_InterfaceDef_tie<T>::create_module (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_module (
+id,
+ name,
+ version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ConstantDef_ptr POA_CORBA_InterfaceDef_tie<T>::create_constant (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_constant (
+id,
+ name,
+ version,
+ type,
+ value
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_StructDef_ptr POA_CORBA_InterfaceDef_tie<T>::create_struct (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_struct (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_UnionDef_ptr POA_CORBA_InterfaceDef_tie<T>::create_union (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_union (
+id,
+ name,
+ version,
+ discriminator_type,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_EnumDef_ptr POA_CORBA_InterfaceDef_tie<T>::create_enum (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_enum (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_AliasDef_ptr POA_CORBA_InterfaceDef_tie<T>::create_alias (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_alias (
+id,
+ name,
+ version,
+ original_type
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_InterfaceDef_ptr POA_CORBA_InterfaceDef_tie<T>::create_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueDef_ptr POA_CORBA_InterfaceDef_tie<T>::create_value (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA::Boolean is_custom,
+ CORBA::Boolean is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ CORBA::Boolean is_truncatable,
+ const CORBA_ValueDefSeq & abstract_base_values,
+ const CORBA_InterfaceDefSeq & supported_interfaces,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_value (
+id,
+ name,
+ version,
+ is_custom,
+ is_abstract,
+ base_value,
+ is_truncatable,
+ abstract_base_values,
+ supported_interfaces,
+ initializers
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueBoxDef_ptr POA_CORBA_InterfaceDef_tie<T>::create_value_box (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_value_box (
+id,
+ name,
+ version,
+ original_type_def
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ExceptionDef_ptr POA_CORBA_InterfaceDef_tie<T>::create_exception (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_exception (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_NativeDef_ptr POA_CORBA_InterfaceDef_tie<T>::create_native (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_native (
+id,
+ name,
+ version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_AbstractInterfaceDef_ptr POA_CORBA_InterfaceDef_tie<T>::create_abstract_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_AbstractInterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_abstract_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_LocalInterfaceDef_ptr POA_CORBA_InterfaceDef_tie<T>::create_local_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_local_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_InterfaceDef_tie<T>::id (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->id (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_InterfaceDef_tie<T>::id (
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->id (
+id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_InterfaceDef_tie<T>::name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_InterfaceDef_tie<T>::name (
+ const char * name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->name (
+name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_InterfaceDef_tie<T>::version (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->version (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_InterfaceDef_tie<T>::version (
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->version (
+version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container_ptr POA_CORBA_InterfaceDef_tie<T>::defined_in (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->defined_in (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_InterfaceDef_tie<T>::absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->absolute_name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Repository_ptr POA_CORBA_InterfaceDef_tie<T>::containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->containing_repository (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained::Description * POA_CORBA_InterfaceDef_tie<T>::describe (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_InterfaceDef_tie<T>::move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->move (
+new_container,
+ new_name,
+ new_version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::TypeCode_ptr POA_CORBA_InterfaceDef_tie<T>::type (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_CORBA_InterfaceDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_InterfaceDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_CORBA_AbstractInterfaceDef_tie<T>::POA_CORBA_AbstractInterfaceDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_AbstractInterfaceDef_tie<T>::POA_CORBA_AbstractInterfaceDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_AbstractInterfaceDef_tie<T>::POA_CORBA_AbstractInterfaceDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_AbstractInterfaceDef_tie<T>::POA_CORBA_AbstractInterfaceDef_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_CORBA_AbstractInterfaceDef_tie<T>::~POA_CORBA_AbstractInterfaceDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_CORBA_AbstractInterfaceDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_AbstractInterfaceDef_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_CORBA_AbstractInterfaceDef_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_CORBA_AbstractInterfaceDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_AbstractInterfaceDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_CORBA_AbstractInterfaceDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->POA_CORBA_AbstractInterfaceDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA_InterfaceDefSeq * POA_CORBA_AbstractInterfaceDef_tie<T>::base_interfaces (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->base_interfaces (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_AbstractInterfaceDef_tie<T>::base_interfaces (
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->base_interfaces (
+base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::Boolean POA_CORBA_AbstractInterfaceDef_tie<T>::is_a (
+ const char * interface_id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->is_a (
+interface_id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_InterfaceDef::FullInterfaceDescription * POA_CORBA_AbstractInterfaceDef_tie<T>::describe_interface (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe_interface (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_AttributeDef_ptr POA_CORBA_AbstractInterfaceDef_tie<T>::create_attribute (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_attribute (
+id,
+ name,
+ version,
+ type,
+ mode
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_OperationDef_ptr POA_CORBA_AbstractInterfaceDef_tie<T>::create_operation (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr result,
+ CORBA::OperationMode mode,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions,
+ const CORBA_ContextIdSeq & contexts
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_operation (
+id,
+ name,
+ version,
+ result,
+ mode,
+ params,
+ exceptions,
+ contexts
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained_ptr POA_CORBA_AbstractInterfaceDef_tie<T>::lookup (
+ const char * search_name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->lookup (
+search_name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ContainedSeq * POA_CORBA_AbstractInterfaceDef_tie<T>::contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->contents (
+limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ContainedSeq * POA_CORBA_AbstractInterfaceDef_tie<T>::lookup_name (
+ const char * search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->lookup_name (
+search_name,
+ levels_to_search,
+ limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container::DescriptionSeq * POA_CORBA_AbstractInterfaceDef_tie<T>::describe_contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited,
+ CORBA::Long max_returned_objs
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe_contents (
+limit_type,
+ exclude_inherited,
+ max_returned_objs
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ModuleDef_ptr POA_CORBA_AbstractInterfaceDef_tie<T>::create_module (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_module (
+id,
+ name,
+ version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ConstantDef_ptr POA_CORBA_AbstractInterfaceDef_tie<T>::create_constant (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_constant (
+id,
+ name,
+ version,
+ type,
+ value
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_StructDef_ptr POA_CORBA_AbstractInterfaceDef_tie<T>::create_struct (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_struct (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_UnionDef_ptr POA_CORBA_AbstractInterfaceDef_tie<T>::create_union (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_union (
+id,
+ name,
+ version,
+ discriminator_type,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_EnumDef_ptr POA_CORBA_AbstractInterfaceDef_tie<T>::create_enum (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_enum (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_AliasDef_ptr POA_CORBA_AbstractInterfaceDef_tie<T>::create_alias (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_alias (
+id,
+ name,
+ version,
+ original_type
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_InterfaceDef_ptr POA_CORBA_AbstractInterfaceDef_tie<T>::create_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueDef_ptr POA_CORBA_AbstractInterfaceDef_tie<T>::create_value (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA::Boolean is_custom,
+ CORBA::Boolean is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ CORBA::Boolean is_truncatable,
+ const CORBA_ValueDefSeq & abstract_base_values,
+ const CORBA_InterfaceDefSeq & supported_interfaces,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_value (
+id,
+ name,
+ version,
+ is_custom,
+ is_abstract,
+ base_value,
+ is_truncatable,
+ abstract_base_values,
+ supported_interfaces,
+ initializers
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueBoxDef_ptr POA_CORBA_AbstractInterfaceDef_tie<T>::create_value_box (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_value_box (
+id,
+ name,
+ version,
+ original_type_def
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ExceptionDef_ptr POA_CORBA_AbstractInterfaceDef_tie<T>::create_exception (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_exception (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_NativeDef_ptr POA_CORBA_AbstractInterfaceDef_tie<T>::create_native (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_native (
+id,
+ name,
+ version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_AbstractInterfaceDef_ptr POA_CORBA_AbstractInterfaceDef_tie<T>::create_abstract_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_AbstractInterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_abstract_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_LocalInterfaceDef_ptr POA_CORBA_AbstractInterfaceDef_tie<T>::create_local_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_local_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_AbstractInterfaceDef_tie<T>::id (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->id (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_AbstractInterfaceDef_tie<T>::id (
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->id (
+id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_AbstractInterfaceDef_tie<T>::name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_AbstractInterfaceDef_tie<T>::name (
+ const char * name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->name (
+name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_AbstractInterfaceDef_tie<T>::version (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->version (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_AbstractInterfaceDef_tie<T>::version (
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->version (
+version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container_ptr POA_CORBA_AbstractInterfaceDef_tie<T>::defined_in (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->defined_in (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_AbstractInterfaceDef_tie<T>::absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->absolute_name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Repository_ptr POA_CORBA_AbstractInterfaceDef_tie<T>::containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->containing_repository (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained::Description * POA_CORBA_AbstractInterfaceDef_tie<T>::describe (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_AbstractInterfaceDef_tie<T>::move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->move (
+new_container,
+ new_name,
+ new_version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::TypeCode_ptr POA_CORBA_AbstractInterfaceDef_tie<T>::type (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_CORBA_AbstractInterfaceDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_AbstractInterfaceDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_CORBA_LocalInterfaceDef_tie<T>::POA_CORBA_LocalInterfaceDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_LocalInterfaceDef_tie<T>::POA_CORBA_LocalInterfaceDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_LocalInterfaceDef_tie<T>::POA_CORBA_LocalInterfaceDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_LocalInterfaceDef_tie<T>::POA_CORBA_LocalInterfaceDef_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_CORBA_LocalInterfaceDef_tie<T>::~POA_CORBA_LocalInterfaceDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_CORBA_LocalInterfaceDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_LocalInterfaceDef_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_CORBA_LocalInterfaceDef_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_CORBA_LocalInterfaceDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_LocalInterfaceDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_CORBA_LocalInterfaceDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->POA_CORBA_LocalInterfaceDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA_InterfaceDefSeq * POA_CORBA_LocalInterfaceDef_tie<T>::base_interfaces (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->base_interfaces (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_LocalInterfaceDef_tie<T>::base_interfaces (
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->base_interfaces (
+base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::Boolean POA_CORBA_LocalInterfaceDef_tie<T>::is_a (
+ const char * interface_id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->is_a (
+interface_id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_InterfaceDef::FullInterfaceDescription * POA_CORBA_LocalInterfaceDef_tie<T>::describe_interface (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe_interface (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_AttributeDef_ptr POA_CORBA_LocalInterfaceDef_tie<T>::create_attribute (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_attribute (
+id,
+ name,
+ version,
+ type,
+ mode
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_OperationDef_ptr POA_CORBA_LocalInterfaceDef_tie<T>::create_operation (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr result,
+ CORBA::OperationMode mode,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions,
+ const CORBA_ContextIdSeq & contexts
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_operation (
+id,
+ name,
+ version,
+ result,
+ mode,
+ params,
+ exceptions,
+ contexts
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained_ptr POA_CORBA_LocalInterfaceDef_tie<T>::lookup (
+ const char * search_name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->lookup (
+search_name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ContainedSeq * POA_CORBA_LocalInterfaceDef_tie<T>::contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->contents (
+limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ContainedSeq * POA_CORBA_LocalInterfaceDef_tie<T>::lookup_name (
+ const char * search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->lookup_name (
+search_name,
+ levels_to_search,
+ limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container::DescriptionSeq * POA_CORBA_LocalInterfaceDef_tie<T>::describe_contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited,
+ CORBA::Long max_returned_objs
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe_contents (
+limit_type,
+ exclude_inherited,
+ max_returned_objs
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ModuleDef_ptr POA_CORBA_LocalInterfaceDef_tie<T>::create_module (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_module (
+id,
+ name,
+ version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ConstantDef_ptr POA_CORBA_LocalInterfaceDef_tie<T>::create_constant (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_constant (
+id,
+ name,
+ version,
+ type,
+ value
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_StructDef_ptr POA_CORBA_LocalInterfaceDef_tie<T>::create_struct (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_struct (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_UnionDef_ptr POA_CORBA_LocalInterfaceDef_tie<T>::create_union (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_union (
+id,
+ name,
+ version,
+ discriminator_type,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_EnumDef_ptr POA_CORBA_LocalInterfaceDef_tie<T>::create_enum (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_enum (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_AliasDef_ptr POA_CORBA_LocalInterfaceDef_tie<T>::create_alias (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_alias (
+id,
+ name,
+ version,
+ original_type
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_InterfaceDef_ptr POA_CORBA_LocalInterfaceDef_tie<T>::create_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueDef_ptr POA_CORBA_LocalInterfaceDef_tie<T>::create_value (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA::Boolean is_custom,
+ CORBA::Boolean is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ CORBA::Boolean is_truncatable,
+ const CORBA_ValueDefSeq & abstract_base_values,
+ const CORBA_InterfaceDefSeq & supported_interfaces,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_value (
+id,
+ name,
+ version,
+ is_custom,
+ is_abstract,
+ base_value,
+ is_truncatable,
+ abstract_base_values,
+ supported_interfaces,
+ initializers
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueBoxDef_ptr POA_CORBA_LocalInterfaceDef_tie<T>::create_value_box (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_value_box (
+id,
+ name,
+ version,
+ original_type_def
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ExceptionDef_ptr POA_CORBA_LocalInterfaceDef_tie<T>::create_exception (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_exception (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_NativeDef_ptr POA_CORBA_LocalInterfaceDef_tie<T>::create_native (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_native (
+id,
+ name,
+ version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_AbstractInterfaceDef_ptr POA_CORBA_LocalInterfaceDef_tie<T>::create_abstract_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_AbstractInterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_abstract_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_LocalInterfaceDef_ptr POA_CORBA_LocalInterfaceDef_tie<T>::create_local_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_local_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_LocalInterfaceDef_tie<T>::id (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->id (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_LocalInterfaceDef_tie<T>::id (
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->id (
+id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_LocalInterfaceDef_tie<T>::name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_LocalInterfaceDef_tie<T>::name (
+ const char * name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->name (
+name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_LocalInterfaceDef_tie<T>::version (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->version (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_LocalInterfaceDef_tie<T>::version (
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->version (
+version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container_ptr POA_CORBA_LocalInterfaceDef_tie<T>::defined_in (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->defined_in (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_LocalInterfaceDef_tie<T>::absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->absolute_name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Repository_ptr POA_CORBA_LocalInterfaceDef_tie<T>::containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->containing_repository (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained::Description * POA_CORBA_LocalInterfaceDef_tie<T>::describe (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_LocalInterfaceDef_tie<T>::move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->move (
+new_container,
+ new_name,
+ new_version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::TypeCode_ptr POA_CORBA_LocalInterfaceDef_tie<T>::type (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_CORBA_LocalInterfaceDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_LocalInterfaceDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+#endif /* ACE_HAS_USING_KEYWORD */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IFR_ComponentsS.cpp b/TAO/orbsvcs/orbsvcs/IFRService/IFR_ComponentsS.cpp
new file mode 100644
index 00000000000..7cea15e7880
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_ComponentsS.cpp
@@ -0,0 +1,13818 @@
+// -*- C++ -*-
+//
+// $Id$
+
+// **** Code generated by the The ACE ORB (TAO) IDL Compiler ****
+// TAO and the TAO IDL Compiler have been developed by:
+// Center for Distributed Object Computing
+// Washington University
+// St. Louis, MO
+// USA
+// http://www.cs.wustl.edu/~schmidt/doc-center.html
+// and
+// Distributed Object Computing Laboratory
+// University of California at Irvine
+// Irvine, CA
+// USA
+// http://doc.ece.uci.edu/
+//
+// Information about TAO is available at:
+// http://www.cs.wustl.edu/~schmidt/TAO.html
+
+#ifndef _TAO_IDL__________ORBSVCS_IFR_SERVICE_ORIG_IFR_COMPONENTSS_CPP_
+#define _TAO_IDL__________ORBSVCS_IFR_SERVICE_ORIG_IFR_COMPONENTSS_CPP_
+
+#include "IFR_ComponentsS.h"
+
+#include "tao/PortableServer/Object_Adapter.h"
+#include "tao/PortableServer/Operation_Table.h"
+#include "tao/TAO_Server_Request.h"
+#include "tao/ORB_Core.h"
+#include "tao/Stub.h"
+#include "tao/IFR_Client_Adapter.h"
+#include "tao/PortableInterceptor.h"
+
+#if TAO_HAS_INTERCEPTORS == 1
+#include "tao/RequestInfo_Util.h"
+#include "tao/PortableServer/ServerRequestInfo.h"
+#include "tao/PortableServer/ServerInterceptorAdapter.h"
+#endif /* TAO_HAS_INTERCEPTORS == 1 */
+
+#include "ace/Dynamic_Service.h"
+#if defined (__BORLANDC__)
+#pragma option -w-rvl -w-rch -w-ccc -w-aus
+#endif /* __BORLANDC__ */
+
+#if !defined (__ACE_INLINE__)
+#include "IFR_ComponentsS.i"
+#endif /* !defined INLINE */
+
+class TAO_IR_ComponentRepository_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 23:08:23 */
+/* 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_IR_ComponentRepository_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_IR_ComponentRepository_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 66, 66, 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66, 66, 11,
+ 66, 66, 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66, 66, 25,
+ 66, 0, 31, 15, 66, 10, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 25, 0, 30,
+ 66, 25, 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 0, 5, 66, 66, 66, 0, 20, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66,
+#else
+ 66, 66, 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 11, 66, 25, 66, 0,
+ 31, 15, 66, 10, 66, 66, 66, 66, 25, 0,
+ 30, 66, 25, 66, 66, 0, 5, 66, 66, 66,
+ 0, 20, 66, 66, 66, 66, 66, 66,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_IR_ComponentRepository_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 32,
+ MIN_WORD_LENGTH = 5,
+ MAX_WORD_LENGTH = 25,
+ MIN_HASH_VALUE = 8,
+ MAX_HASH_VALUE = 65,
+ HASH_VALUE_RANGE = 58,
+ DUPLICATES = 2,
+ WORDLIST_SIZE = 40
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},{"",0},{"",0},{"",0},{"",0},
+ {"contents", &POA_IR::ComponentRepository::contents_skel},
+ {"create_enum", &POA_IR::ComponentRepository::create_enum_skel},
+ {"create_alias", &POA_IR::ComponentRepository::create_alias_skel},
+ {"create_value_box", &POA_IR::ComponentRepository::create_value_box_skel},
+ {"create_struct", &POA_IR::ComponentRepository::create_struct_skel},
+ {"create_constant", &POA_IR::ComponentRepository::create_constant_skel},
+ {"create_component", &POA_IR::ComponentRepository::create_component_skel},
+ {"create_string", &POA_IR::ComponentRepository::create_string_skel},
+ {"create_wstring", &POA_IR::ComponentRepository::create_wstring_skel},
+ {"create_home", &POA_IR::ComponentRepository::create_home_skel},
+ {"create_value", &POA_IR::ComponentRepository::create_value_skel},
+ {"create_module", &POA_IR::ComponentRepository::create_module_skel},
+ {"create_native", &POA_IR::ComponentRepository::create_native_skel},
+ {"_non_existent", &POA_IR::ComponentRepository::_non_existent_skel},
+ {"create_sequence", &POA_IR::ComponentRepository::create_sequence_skel},
+ {"create_interface", &POA_IR::ComponentRepository::create_interface_skel},
+ {"create_array", &POA_IR::ComponentRepository::create_array_skel},
+ {"_interface", &POA_IR::ComponentRepository::_interface_skel},
+ {"create_local_interface", &POA_IR::ComponentRepository::create_local_interface_skel},
+ {"get_primitive", &POA_IR::ComponentRepository::get_primitive_skel},
+ {"create_abstract_interface", &POA_IR::ComponentRepository::create_abstract_interface_skel},
+ {"_is_a", &POA_IR::ComponentRepository::_is_a_skel},
+ {"create_union", &POA_IR::ComponentRepository::create_union_skel},
+ {"create_fixed", &POA_IR::ComponentRepository::create_fixed_skel},
+ {"create_exception", &POA_IR::ComponentRepository::create_exception_skel},
+ {"get_canonical_typecode", &POA_IR::ComponentRepository::get_canonical_typecode_skel},
+ {"describe_contents", &POA_IR::ComponentRepository::describe_contents_skel},
+ {"lookup_name", &POA_IR::ComponentRepository::lookup_name_skel},
+ {"_get_def_kind", &POA_IR::ComponentRepository::_get_def_kind_skel},
+ {"lookup", &POA_IR::ComponentRepository::lookup_skel},
+ {"destroy", &POA_IR::ComponentRepository::destroy_skel},
+ {"lookup_id", &POA_IR::ComponentRepository::lookup_id_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -1, -1, -1, -1, -1, -1, -1, -1, 8, -1, -1, 9, 10, -1,
+ -19, -2, 11, -1, 12, -1, 13, 14, -1, 15, 16, -1, 17, 18,
+ -79, 21, 22, 23, 24, -1, -1, -1, 25, 26, 27, -1, 28, 29,
+ 30, 31, -1, -1, 32, 33, 34, -1, -1, 35, -1, -1, -1, 36,
+ 37, -1, 38, -1, -1, -1, -1, -1, -1, 39,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < WORDLIST_SIZE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 23:08:24 */
+static TAO_IR_ComponentRepository_Perfect_Hash_OpTable tao_IR_ComponentRepository_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+class TAO_ServerRequestInfo_IR_ComponentRepository_create_component : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_IR_ComponentRepository_create_component (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_IR::ComponentRepository *tao_impl
+ ,
+ const char * id,
+ const char * name,
+ const char * version,
+ IR::ComponentDef_ptr base_component,
+ const CORBA_InterfaceDefSeq & supports_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (IR::ComponentDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_IR_ComponentRepository_create_component (const TAO_ServerRequestInfo_IR_ComponentRepository_create_component &);
+ void operator= (const TAO_ServerRequestInfo_IR_ComponentRepository_create_component &);
+
+private:
+ POA_IR::ComponentRepository *_tao_impl;
+ const char * id_;
+ const char * name_;
+ const char * version_;
+ IR::ComponentDef_ptr base_component_;
+ const CORBA_InterfaceDefSeq & supports_interfaces_;
+ IR::ComponentDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_IR_ComponentRepository_create_component::TAO_ServerRequestInfo_IR_ComponentRepository_create_component (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_IR::ComponentRepository *tao_impl,
+ const char * id,
+ const char * name,
+ const char * version,
+ IR::ComponentDef_ptr base_component,
+ const CORBA_InterfaceDefSeq & supports_interfaces
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ id_ (id),
+ name_ (name),
+ version_ (version),
+ base_component_ (base_component),
+ supports_interfaces_ (supports_interfaces)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_IR_ComponentRepository_create_component::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (5);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= name_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= version_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->base_component_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->supports_interfaces_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_IR_ComponentRepository_create_component::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_IR_ComponentRepository_create_component::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_IR_ComponentRepository_create_component::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_IR_ComponentRepository_create_component::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_IR_ComponentRepository_create_component::result (IR::ComponentDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_IR_ComponentRepository_create_home : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_IR_ComponentRepository_create_home (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_IR::ComponentRepository *tao_impl
+ ,
+ const char * id,
+ const char * name,
+ const char * version,
+ IR::HomeDef_ptr base_home,
+ IR::ComponentDef_ptr managed_component,
+ CORBA_ValueDef_ptr primary_key
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (IR::HomeDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_IR_ComponentRepository_create_home (const TAO_ServerRequestInfo_IR_ComponentRepository_create_home &);
+ void operator= (const TAO_ServerRequestInfo_IR_ComponentRepository_create_home &);
+
+private:
+ POA_IR::ComponentRepository *_tao_impl;
+ const char * id_;
+ const char * name_;
+ const char * version_;
+ IR::HomeDef_ptr base_home_;
+ IR::ComponentDef_ptr managed_component_;
+ CORBA_ValueDef_ptr primary_key_;
+ IR::HomeDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_IR_ComponentRepository_create_home::TAO_ServerRequestInfo_IR_ComponentRepository_create_home (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_IR::ComponentRepository *tao_impl,
+ const char * id,
+ const char * name,
+ const char * version,
+ IR::HomeDef_ptr base_home,
+ IR::ComponentDef_ptr managed_component,
+ CORBA_ValueDef_ptr primary_key
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ id_ (id),
+ name_ (name),
+ version_ (version),
+ base_home_ (base_home),
+ managed_component_ (managed_component),
+ primary_key_ (primary_key)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_IR_ComponentRepository_create_home::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (6);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= name_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= version_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->base_home_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->managed_component_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->primary_key_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_IR_ComponentRepository_create_home::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_IR_ComponentRepository_create_home::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_IR_ComponentRepository_create_home::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_IR_ComponentRepository_create_home::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_IR_ComponentRepository_create_home::result (IR::HomeDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+POA_IR::_TAO_ComponentRepository_Strategized_Proxy_Broker *POA_IR::_TAO_ComponentRepository_Strategized_Proxy_Broker::the_TAO_ComponentRepository_Strategized_Proxy_Broker (void)
+{
+ static POA_IR::_TAO_ComponentRepository_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+POA_IR::_TAO_ComponentRepository_Strategized_Proxy_Broker::_TAO_ComponentRepository_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+POA_IR::_TAO_ComponentRepository_Strategized_Proxy_Broker::~_TAO_ComponentRepository_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+IR::_TAO_ComponentRepository_Proxy_Impl&
+POA_IR::_TAO_ComponentRepository_Strategized_Proxy_Broker::select_proxy (
+ ::IR::ComponentRepository *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+POA_IR::_TAO_ComponentRepository_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ POA_IR::_TAO_ComponentRepository_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::IR::_TAO_ComponentRepository_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+IR::_TAO_ComponentRepository_Proxy_Broker *
+IR__TAO_ComponentRepository_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::POA_IR::_TAO_ComponentRepository_Strategized_Proxy_Broker::the_TAO_ComponentRepository_Strategized_Proxy_Broker();
+}
+
+int
+IR__TAO_ComponentRepository_Proxy_Broker_Factory_Initializer (long)
+{
+ IR__TAO_ComponentRepository_Proxy_Broker_Factory_function_pointer =
+ IR__TAO_ComponentRepository_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int IR__TAO_ComponentRepository_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ IR__TAO_ComponentRepository_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, IR__TAO_ComponentRepository_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+POA_IR::_TAO_ComponentRepository_ThruPOA_Proxy_Impl::_TAO_ComponentRepository_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+IR::ComponentDef_ptr POA_IR::_TAO_ComponentRepository_ThruPOA_Proxy_Impl::create_component (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ IR::ComponentDef_ptr base_component,
+ const CORBA_InterfaceDefSeq & supports_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ IR::ComponentDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "create_component",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_IR::ComponentRepository_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/IR/ComponentRepository:1.0"
+ )
+ )->create_component (
+ id,
+ name,
+ version,
+ base_component,
+ supports_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+IR::HomeDef_ptr POA_IR::_TAO_ComponentRepository_ThruPOA_Proxy_Impl::create_home (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ IR::HomeDef_ptr base_home,
+ IR::ComponentDef_ptr managed_component,
+ CORBA_ValueDef_ptr primary_key
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ IR::HomeDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "create_home",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_IR::ComponentRepository_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/IR/ComponentRepository:1.0"
+ )
+ )->create_home (
+ id,
+ name,
+ version,
+ base_home,
+ managed_component,
+ primary_key
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_IR::ComponentRepository::ComponentRepository (void)
+{
+ this->optable_ = &tao_IR_ComponentRepository_optable;
+}
+
+// copy ctor
+POA_IR::ComponentRepository::ComponentRepository (const ComponentRepository& rhs)
+ : POA_CORBA_Repository (rhs),
+ POA_CORBA_Container (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_IR::ComponentRepository::~ComponentRepository (void)
+{
+}
+
+void POA_IR::ComponentRepository::create_component_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_IR::ComponentRepository *_tao_impl =
+ ACE_static_cast (POA_IR::ComponentRepository *, _tao_object_reference);
+
+ IR::ComponentDef_var _tao_retval;
+ CORBA::String_var id;
+ CORBA::String_var name;
+ CORBA::String_var version;
+ IR::ComponentDef_var base_component;
+ CORBA_InterfaceDefSeq supports_interfaces;
+ if (!(
+ (_tao_in >> id.out ()) &&
+ (_tao_in >> name.out ()) &&
+ (_tao_in >> version.out ()) &&
+ (_tao_in >> base_component.out ()) &&
+ (_tao_in >> supports_interfaces)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_IR_ComponentRepository_create_component ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ id.in (),
+ name.in (),
+ version.in (),
+ base_component.in (),
+ supports_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->create_component (
+ id.in (),
+ name.in (),
+ version.in (),
+ base_component.in (),
+ supports_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ IR::ComponentDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_IR::ComponentRepository::create_home_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_IR::ComponentRepository *_tao_impl =
+ ACE_static_cast (POA_IR::ComponentRepository *, _tao_object_reference);
+
+ IR::HomeDef_var _tao_retval;
+ CORBA::String_var id;
+ CORBA::String_var name;
+ CORBA::String_var version;
+ IR::HomeDef_var base_home;
+ IR::ComponentDef_var managed_component;
+ CORBA_ValueDef_var primary_key;
+ if (!(
+ (_tao_in >> id.out ()) &&
+ (_tao_in >> name.out ()) &&
+ (_tao_in >> version.out ()) &&
+ (_tao_in >> base_home.out ()) &&
+ (_tao_in >> managed_component.out ()) &&
+ (_tao_in >> primary_key.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_IR_ComponentRepository_create_home ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ id.in (),
+ name.in (),
+ version.in (),
+ base_home.in (),
+ managed_component.in (),
+ primary_key.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->create_home (
+ id.in (),
+ name.in (),
+ version.in (),
+ base_home.in (),
+ managed_component.in (),
+ primary_key.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ IR::HomeDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_IR::ComponentRepository::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_IR::ComponentRepository *_tao_impl = (POA_IR::ComponentRepository *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_IR::ComponentRepository::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::ComponentRepository *_tao_impl = (POA_IR::ComponentRepository *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_IR::ComponentRepository::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::ComponentRepository *_tao_impl = (POA_IR::ComponentRepository *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_IR::ComponentRepository::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/IR/ComponentRepository:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Repository:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Container:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_IR::ComponentRepository::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/IR/ComponentRepository:1.0") == 0)
+ return ACE_static_cast (POA_IR::ComponentRepository_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Repository:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Repository_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Container:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Container_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_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_IR::ComponentRepository::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_IR::ComponentRepository::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/IR/ComponentRepository:1.0";
+}
+
+IR::ComponentRepository*
+POA_IR::ComponentRepository::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::IR::ComponentRepository::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_IR_ProvidesDef_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 23:08:24 */
+/* 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_IR_ProvidesDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_IR_ProvidesDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 0, 0, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 0, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 10, 37, 37, 37, 37, 10, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37,
+#else
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 0, 37, 0, 37, 37,
+ 0, 0, 37, 37, 37, 37, 37, 37, 37, 0,
+ 0, 37, 37, 37, 37, 37, 10, 37, 37, 37,
+ 37, 10, 37, 37, 37, 37, 37, 37,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_IR_ProvidesDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 17,
+ MIN_WORD_LENGTH = 4,
+ MAX_WORD_LENGTH = 26,
+ MIN_HASH_VALUE = 4,
+ MAX_HASH_VALUE = 36,
+ HASH_VALUE_RANGE = 33,
+ DUPLICATES = 4,
+ WORDLIST_SIZE = 21
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},
+ {"move", &POA_IR::ProvidesDef::move_skel},
+ {"_is_a", &POA_IR::ProvidesDef::_is_a_skel},
+ {"_get_id", &POA_IR::ProvidesDef::_get_id_skel},
+ {"_set_id", &POA_IR::ProvidesDef::_set_id_skel},
+ {"describe", &POA_IR::ProvidesDef::describe_skel},
+ {"_get_name", &POA_IR::ProvidesDef::_get_name_skel},
+ {"_set_name", &POA_IR::ProvidesDef::_set_name_skel},
+ {"_interface", &POA_IR::ProvidesDef::_interface_skel},
+ {"_get_version", &POA_IR::ProvidesDef::_get_version_skel},
+ {"_set_version", &POA_IR::ProvidesDef::_set_version_skel},
+ {"_get_def_kind", &POA_IR::ProvidesDef::_get_def_kind_skel},
+ {"_get_defined_in", &POA_IR::ProvidesDef::_get_defined_in_skel},
+ {"destroy", &POA_IR::ProvidesDef::destroy_skel},
+ {"_get_absolute_name", &POA_IR::ProvidesDef::_get_absolute_name_skel},
+ {"_get_interface_type", &POA_IR::ProvidesDef::_get_interface_type_skel},
+ {"_non_existent", &POA_IR::ProvidesDef::_non_existent_skel},
+ {"_get_containing_repository", &POA_IR::ProvidesDef::_get_containing_repository_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -9, -2, -12, -2, 4, 5, -1, 49, 8, -45, 11, -1, -46, 14,
+ -1, 15, -1, 16, 17, 18, -6, -2, -1, 19, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 20,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < WORDLIST_SIZE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 23:08:24 */
+static TAO_IR_ProvidesDef_Perfect_Hash_OpTable tao_IR_ProvidesDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+class TAO_ServerRequestInfo_IR_ProvidesDef_interface_type_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_IR_ProvidesDef_interface_type_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_IR::ProvidesDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_InterfaceDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_IR_ProvidesDef_interface_type_get (const TAO_ServerRequestInfo_IR_ProvidesDef_interface_type_get &);
+ void operator= (const TAO_ServerRequestInfo_IR_ProvidesDef_interface_type_get &);
+
+private:
+ POA_IR::ProvidesDef *_tao_impl;
+ CORBA_InterfaceDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_IR_ProvidesDef_interface_type_get::TAO_ServerRequestInfo_IR_ProvidesDef_interface_type_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_IR::ProvidesDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_IR_ProvidesDef_interface_type_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_IR_ProvidesDef_interface_type_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_IR_ProvidesDef_interface_type_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_IR_ProvidesDef_interface_type_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_IR_ProvidesDef_interface_type_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_IR_ProvidesDef_interface_type_get::result (CORBA_InterfaceDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+POA_IR::_TAO_ProvidesDef_Strategized_Proxy_Broker *POA_IR::_TAO_ProvidesDef_Strategized_Proxy_Broker::the_TAO_ProvidesDef_Strategized_Proxy_Broker (void)
+{
+ static POA_IR::_TAO_ProvidesDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+POA_IR::_TAO_ProvidesDef_Strategized_Proxy_Broker::_TAO_ProvidesDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+POA_IR::_TAO_ProvidesDef_Strategized_Proxy_Broker::~_TAO_ProvidesDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+IR::_TAO_ProvidesDef_Proxy_Impl&
+POA_IR::_TAO_ProvidesDef_Strategized_Proxy_Broker::select_proxy (
+ ::IR::ProvidesDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+POA_IR::_TAO_ProvidesDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ POA_IR::_TAO_ProvidesDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::IR::_TAO_ProvidesDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+IR::_TAO_ProvidesDef_Proxy_Broker *
+IR__TAO_ProvidesDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::POA_IR::_TAO_ProvidesDef_Strategized_Proxy_Broker::the_TAO_ProvidesDef_Strategized_Proxy_Broker();
+}
+
+int
+IR__TAO_ProvidesDef_Proxy_Broker_Factory_Initializer (long)
+{
+ IR__TAO_ProvidesDef_Proxy_Broker_Factory_function_pointer =
+ IR__TAO_ProvidesDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int IR__TAO_ProvidesDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ IR__TAO_ProvidesDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, IR__TAO_ProvidesDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+POA_IR::_TAO_ProvidesDef_ThruPOA_Proxy_Impl::_TAO_ProvidesDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+CORBA_InterfaceDef_ptr POA_IR::_TAO_ProvidesDef_ThruPOA_Proxy_Impl::interface_type (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_InterfaceDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "interface_type",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_IR::ProvidesDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/IR/ProvidesDef:1.0"
+ )
+ )->interface_type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_IR::ProvidesDef::ProvidesDef (void)
+{
+ this->optable_ = &tao_IR_ProvidesDef_optable;
+}
+
+// copy ctor
+POA_IR::ProvidesDef::ProvidesDef (const ProvidesDef& rhs)
+ : POA_CORBA_Contained (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_IR::ProvidesDef::~ProvidesDef (void)
+{
+}
+
+void POA_IR::ProvidesDef::_get_interface_type_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::ProvidesDef *_tao_impl =
+ ACE_static_cast (POA_IR::ProvidesDef *, _tao_object_reference);
+
+ CORBA_InterfaceDef_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_IR_ProvidesDef_interface_type_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->interface_type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_InterfaceDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_IR::ProvidesDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_IR::ProvidesDef *_tao_impl = (POA_IR::ProvidesDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_IR::ProvidesDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::ProvidesDef *_tao_impl = (POA_IR::ProvidesDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_IR::ProvidesDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::ProvidesDef *_tao_impl = (POA_IR::ProvidesDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_IR::ProvidesDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/IR/ProvidesDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Contained:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_IR::ProvidesDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/IR/ProvidesDef:1.0") == 0)
+ return ACE_static_cast (POA_IR::ProvidesDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Contained:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Contained_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_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_IR::ProvidesDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_IR::ProvidesDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/IR/ProvidesDef:1.0";
+}
+
+IR::ProvidesDef*
+POA_IR::ProvidesDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::IR::ProvidesDef::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_IR_UsesDef_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 23:08:25 */
+/* 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_IR_UsesDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_IR_UsesDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 0, 0, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 0, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 10, 37, 37, 37, 37, 10, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37,
+#else
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 0, 37, 0, 37, 37,
+ 0, 0, 37, 37, 37, 37, 37, 37, 37, 0,
+ 0, 37, 37, 37, 37, 37, 10, 37, 37, 37,
+ 37, 10, 37, 37, 37, 37, 37, 37,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_IR_UsesDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 18,
+ MIN_WORD_LENGTH = 4,
+ MAX_WORD_LENGTH = 26,
+ MIN_HASH_VALUE = 4,
+ MAX_HASH_VALUE = 36,
+ HASH_VALUE_RANGE = 33,
+ DUPLICATES = 4,
+ WORDLIST_SIZE = 22
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},
+ {"move", &POA_IR::UsesDef::move_skel},
+ {"_is_a", &POA_IR::UsesDef::_is_a_skel},
+ {"_get_id", &POA_IR::UsesDef::_get_id_skel},
+ {"_set_id", &POA_IR::UsesDef::_set_id_skel},
+ {"describe", &POA_IR::UsesDef::describe_skel},
+ {"_get_name", &POA_IR::UsesDef::_get_name_skel},
+ {"_set_name", &POA_IR::UsesDef::_set_name_skel},
+ {"_interface", &POA_IR::UsesDef::_interface_skel},
+ {"_get_version", &POA_IR::UsesDef::_get_version_skel},
+ {"_set_version", &POA_IR::UsesDef::_set_version_skel},
+ {"_get_def_kind", &POA_IR::UsesDef::_get_def_kind_skel},
+ {"_get_defined_in", &POA_IR::UsesDef::_get_defined_in_skel},
+ {"_get_is_multiple", &POA_IR::UsesDef::_get_is_multiple_skel},
+ {"destroy", &POA_IR::UsesDef::destroy_skel},
+ {"_get_absolute_name", &POA_IR::UsesDef::_get_absolute_name_skel},
+ {"_get_interface_type", &POA_IR::UsesDef::_get_interface_type_skel},
+ {"_non_existent", &POA_IR::UsesDef::_non_existent_skel},
+ {"_get_containing_repository", &POA_IR::UsesDef::_get_containing_repository_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -9, -2, -12, -2, 4, 5, -1, 49, 8, -45, 11, -1, -46, 14,
+ -1, 15, 16, 17, 18, 19, -6, -2, -1, 20, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 21,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < WORDLIST_SIZE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 23:08:25 */
+static TAO_IR_UsesDef_Perfect_Hash_OpTable tao_IR_UsesDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+class TAO_ServerRequestInfo_IR_UsesDef_interface_type_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_IR_UsesDef_interface_type_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_IR::UsesDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_InterfaceDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_IR_UsesDef_interface_type_get (const TAO_ServerRequestInfo_IR_UsesDef_interface_type_get &);
+ void operator= (const TAO_ServerRequestInfo_IR_UsesDef_interface_type_get &);
+
+private:
+ POA_IR::UsesDef *_tao_impl;
+ CORBA_InterfaceDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_IR_UsesDef_interface_type_get::TAO_ServerRequestInfo_IR_UsesDef_interface_type_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_IR::UsesDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_IR_UsesDef_interface_type_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_IR_UsesDef_interface_type_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_IR_UsesDef_interface_type_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_IR_UsesDef_interface_type_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_IR_UsesDef_interface_type_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_IR_UsesDef_interface_type_get::result (CORBA_InterfaceDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_IR_UsesDef_is_multiple_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_IR_UsesDef_is_multiple_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_IR::UsesDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA::Boolean result);
+
+private:
+ TAO_ServerRequestInfo_IR_UsesDef_is_multiple_get (const TAO_ServerRequestInfo_IR_UsesDef_is_multiple_get &);
+ void operator= (const TAO_ServerRequestInfo_IR_UsesDef_is_multiple_get &);
+
+private:
+ POA_IR::UsesDef *_tao_impl;
+ CORBA::Boolean _result;
+};
+
+TAO_ServerRequestInfo_IR_UsesDef_is_multiple_get::TAO_ServerRequestInfo_IR_UsesDef_is_multiple_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_IR::UsesDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_IR_UsesDef_is_multiple_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_IR_UsesDef_is_multiple_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_IR_UsesDef_is_multiple_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= CORBA::Any::from_boolean (this->_result);
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_IR_UsesDef_is_multiple_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_IR_UsesDef_is_multiple_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_IR_UsesDef_is_multiple_get::result (CORBA::Boolean result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+POA_IR::_TAO_UsesDef_Strategized_Proxy_Broker *POA_IR::_TAO_UsesDef_Strategized_Proxy_Broker::the_TAO_UsesDef_Strategized_Proxy_Broker (void)
+{
+ static POA_IR::_TAO_UsesDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+POA_IR::_TAO_UsesDef_Strategized_Proxy_Broker::_TAO_UsesDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+POA_IR::_TAO_UsesDef_Strategized_Proxy_Broker::~_TAO_UsesDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+IR::_TAO_UsesDef_Proxy_Impl&
+POA_IR::_TAO_UsesDef_Strategized_Proxy_Broker::select_proxy (
+ ::IR::UsesDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+POA_IR::_TAO_UsesDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ POA_IR::_TAO_UsesDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::IR::_TAO_UsesDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+IR::_TAO_UsesDef_Proxy_Broker *
+IR__TAO_UsesDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::POA_IR::_TAO_UsesDef_Strategized_Proxy_Broker::the_TAO_UsesDef_Strategized_Proxy_Broker();
+}
+
+int
+IR__TAO_UsesDef_Proxy_Broker_Factory_Initializer (long)
+{
+ IR__TAO_UsesDef_Proxy_Broker_Factory_function_pointer =
+ IR__TAO_UsesDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int IR__TAO_UsesDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ IR__TAO_UsesDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, IR__TAO_UsesDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+POA_IR::_TAO_UsesDef_ThruPOA_Proxy_Impl::_TAO_UsesDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+CORBA_InterfaceDef_ptr POA_IR::_TAO_UsesDef_ThruPOA_Proxy_Impl::interface_type (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_InterfaceDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "interface_type",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_IR::UsesDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/IR/UsesDef:1.0"
+ )
+ )->interface_type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+CORBA::Boolean POA_IR::_TAO_UsesDef_ThruPOA_Proxy_Impl::is_multiple (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::Boolean _tao_retval = 0;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "is_multiple",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (_tao_retval);
+ return ACE_reinterpret_cast (
+ POA_IR::UsesDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/IR/UsesDef:1.0"
+ )
+ )->is_multiple (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_IR::UsesDef::UsesDef (void)
+{
+ this->optable_ = &tao_IR_UsesDef_optable;
+}
+
+// copy ctor
+POA_IR::UsesDef::UsesDef (const UsesDef& rhs)
+ : POA_CORBA_Contained (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_IR::UsesDef::~UsesDef (void)
+{
+}
+
+void POA_IR::UsesDef::_get_interface_type_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::UsesDef *_tao_impl =
+ ACE_static_cast (POA_IR::UsesDef *, _tao_object_reference);
+
+ CORBA_InterfaceDef_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_IR_UsesDef_interface_type_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->interface_type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_InterfaceDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_IR::UsesDef::_get_is_multiple_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::UsesDef *_tao_impl =
+ ACE_static_cast (POA_IR::UsesDef *, _tao_object_reference);
+
+ CORBA::Boolean _tao_retval = 0;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_IR_UsesDef_is_multiple_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->is_multiple (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA::Boolean _tao_retval_info = _tao_retval;
+ ri.result (_tao_retval_info);
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << CORBA::Any::from_boolean (_tao_retval))
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_IR::UsesDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_IR::UsesDef *_tao_impl = (POA_IR::UsesDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_IR::UsesDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::UsesDef *_tao_impl = (POA_IR::UsesDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_IR::UsesDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::UsesDef *_tao_impl = (POA_IR::UsesDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_IR::UsesDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/IR/UsesDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Contained:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_IR::UsesDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/IR/UsesDef:1.0") == 0)
+ return ACE_static_cast (POA_IR::UsesDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Contained:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Contained_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_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_IR::UsesDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_IR::UsesDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/IR/UsesDef:1.0";
+}
+
+IR::UsesDef*
+POA_IR::UsesDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::IR::UsesDef::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_IR_EventDef_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 23:08:25 */
+/* 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_IR_EventDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_IR_EventDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 0, 0, 37, 37, 37, 10, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 0, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 10, 37, 37, 37, 37, 10, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37,
+#else
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 0, 37, 0, 37, 37,
+ 0, 0, 37, 37, 37, 10, 37, 37, 37, 0,
+ 0, 37, 37, 37, 37, 37, 10, 37, 37, 37,
+ 37, 10, 37, 37, 37, 37, 37, 37,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_IR_EventDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 18,
+ MIN_WORD_LENGTH = 4,
+ MAX_WORD_LENGTH = 26,
+ MIN_HASH_VALUE = 4,
+ MAX_HASH_VALUE = 36,
+ HASH_VALUE_RANGE = 33,
+ DUPLICATES = 4,
+ WORDLIST_SIZE = 22
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},
+ {"move", &POA_IR::EventDef::move_skel},
+ {"_is_a", &POA_IR::EventDef::_is_a_skel},
+ {"_get_id", &POA_IR::EventDef::_get_id_skel},
+ {"_set_id", &POA_IR::EventDef::_set_id_skel},
+ {"describe", &POA_IR::EventDef::describe_skel},
+ {"_get_name", &POA_IR::EventDef::_get_name_skel},
+ {"_set_name", &POA_IR::EventDef::_set_name_skel},
+ {"_interface", &POA_IR::EventDef::_interface_skel},
+ {"_get_version", &POA_IR::EventDef::_get_version_skel},
+ {"_set_version", &POA_IR::EventDef::_set_version_skel},
+ {"_get_def_kind", &POA_IR::EventDef::_get_def_kind_skel},
+ {"is_a", &POA_IR::EventDef::is_a_skel},
+ {"_get_defined_in", &POA_IR::EventDef::_get_defined_in_skel},
+ {"destroy", &POA_IR::EventDef::destroy_skel},
+ {"_get_absolute_name", &POA_IR::EventDef::_get_absolute_name_skel},
+ {"_get_event", &POA_IR::EventDef::_get_event_skel},
+ {"_non_existent", &POA_IR::EventDef::_non_existent_skel},
+ {"_get_containing_repository", &POA_IR::EventDef::_get_containing_repository_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -9, -2, -12, -2, 4, 5, -1, 50, 8, -45, 11, -1, -46, 14,
+ 15, 16, -1, 17, 18, -1, 19, -6, -2, 20, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 21,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < WORDLIST_SIZE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 23:08:25 */
+static TAO_IR_EventDef_Perfect_Hash_OpTable tao_IR_EventDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+class TAO_ServerRequestInfo_IR_EventDef_is_a : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_IR_EventDef_is_a (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_IR::EventDef *tao_impl
+ ,
+ const char * event_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA::Boolean result);
+
+private:
+ TAO_ServerRequestInfo_IR_EventDef_is_a (const TAO_ServerRequestInfo_IR_EventDef_is_a &);
+ void operator= (const TAO_ServerRequestInfo_IR_EventDef_is_a &);
+
+private:
+ POA_IR::EventDef *_tao_impl;
+ const char * event_id_;
+ CORBA::Boolean _result;
+};
+
+TAO_ServerRequestInfo_IR_EventDef_is_a::TAO_ServerRequestInfo_IR_EventDef_is_a (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_IR::EventDef *tao_impl,
+ const char * event_id
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ event_id_ (event_id)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_IR_EventDef_is_a::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= event_id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_IR_EventDef_is_a::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_IR_EventDef_is_a::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= CORBA::Any::from_boolean (this->_result);
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_IR_EventDef_is_a::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_IR_EventDef_is_a::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_IR_EventDef_is_a::result (CORBA::Boolean result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_IR_EventDef_event_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_IR_EventDef_event_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_IR::EventDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_ValueDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_IR_EventDef_event_get (const TAO_ServerRequestInfo_IR_EventDef_event_get &);
+ void operator= (const TAO_ServerRequestInfo_IR_EventDef_event_get &);
+
+private:
+ POA_IR::EventDef *_tao_impl;
+ CORBA_ValueDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_IR_EventDef_event_get::TAO_ServerRequestInfo_IR_EventDef_event_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_IR::EventDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_IR_EventDef_event_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_IR_EventDef_event_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_IR_EventDef_event_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_IR_EventDef_event_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_IR_EventDef_event_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_IR_EventDef_event_get::result (CORBA_ValueDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+POA_IR::_TAO_EventDef_Strategized_Proxy_Broker *POA_IR::_TAO_EventDef_Strategized_Proxy_Broker::the_TAO_EventDef_Strategized_Proxy_Broker (void)
+{
+ static POA_IR::_TAO_EventDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+POA_IR::_TAO_EventDef_Strategized_Proxy_Broker::_TAO_EventDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+POA_IR::_TAO_EventDef_Strategized_Proxy_Broker::~_TAO_EventDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+IR::_TAO_EventDef_Proxy_Impl&
+POA_IR::_TAO_EventDef_Strategized_Proxy_Broker::select_proxy (
+ ::IR::EventDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+POA_IR::_TAO_EventDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ POA_IR::_TAO_EventDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::IR::_TAO_EventDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+IR::_TAO_EventDef_Proxy_Broker *
+IR__TAO_EventDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::POA_IR::_TAO_EventDef_Strategized_Proxy_Broker::the_TAO_EventDef_Strategized_Proxy_Broker();
+}
+
+int
+IR__TAO_EventDef_Proxy_Broker_Factory_Initializer (long)
+{
+ IR__TAO_EventDef_Proxy_Broker_Factory_function_pointer =
+ IR__TAO_EventDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int IR__TAO_EventDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ IR__TAO_EventDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, IR__TAO_EventDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+POA_IR::_TAO_EventDef_ThruPOA_Proxy_Impl::_TAO_EventDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+CORBA::Boolean POA_IR::_TAO_EventDef_ThruPOA_Proxy_Impl::is_a (
+ CORBA_Object *_collocated_tao_target_,
+ const char * event_id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::Boolean _tao_retval = 0;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "is_a",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (_tao_retval);
+ return ACE_reinterpret_cast (
+ POA_IR::EventDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/IR/EventDef:1.0"
+ )
+ )->is_a (
+ event_id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+CORBA_ValueDef_ptr POA_IR::_TAO_EventDef_ThruPOA_Proxy_Impl::event (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_ValueDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "event",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_IR::EventDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/IR/EventDef:1.0"
+ )
+ )->event (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_IR::EventDef::EventDef (void)
+{
+ this->optable_ = &tao_IR_EventDef_optable;
+}
+
+// copy ctor
+POA_IR::EventDef::EventDef (const EventDef& rhs)
+ : POA_CORBA_Contained (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_IR::EventDef::~EventDef (void)
+{
+}
+
+void POA_IR::EventDef::is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_IR::EventDef *_tao_impl =
+ ACE_static_cast (POA_IR::EventDef *, _tao_object_reference);
+
+ CORBA::Boolean _tao_retval = 0;
+ CORBA::String_var event_id;
+ if (!(
+ (_tao_in >> event_id.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_IR_EventDef_is_a ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ event_id.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->is_a (
+ event_id.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA::Boolean _tao_retval_info = _tao_retval;
+ ri.result (_tao_retval_info);
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << CORBA::Any::from_boolean (_tao_retval))
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_IR::EventDef::_get_event_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::EventDef *_tao_impl =
+ ACE_static_cast (POA_IR::EventDef *, _tao_object_reference);
+
+ CORBA_ValueDef_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_IR_EventDef_event_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->event (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_ValueDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_IR::EventDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_IR::EventDef *_tao_impl = (POA_IR::EventDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_IR::EventDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::EventDef *_tao_impl = (POA_IR::EventDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_IR::EventDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::EventDef *_tao_impl = (POA_IR::EventDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_IR::EventDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/IR/EventDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Contained:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_IR::EventDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/IR/EventDef:1.0") == 0)
+ return ACE_static_cast (POA_IR::EventDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Contained:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Contained_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_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_IR::EventDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_IR::EventDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/IR/EventDef:1.0";
+}
+
+IR::EventDef*
+POA_IR::EventDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::IR::EventDef::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_IR_EmitsDef_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 23:08:26 */
+/* 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_IR_EmitsDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_IR_EmitsDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 0, 0, 37, 37, 37, 10, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 0, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 10, 37, 37, 37, 37, 10, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37,
+#else
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 0, 37, 0, 37, 37,
+ 0, 0, 37, 37, 37, 10, 37, 37, 37, 0,
+ 0, 37, 37, 37, 37, 37, 10, 37, 37, 37,
+ 37, 10, 37, 37, 37, 37, 37, 37,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_IR_EmitsDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 18,
+ MIN_WORD_LENGTH = 4,
+ MAX_WORD_LENGTH = 26,
+ MIN_HASH_VALUE = 4,
+ MAX_HASH_VALUE = 36,
+ HASH_VALUE_RANGE = 33,
+ DUPLICATES = 4,
+ WORDLIST_SIZE = 22
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},
+ {"move", &POA_IR::EmitsDef::move_skel},
+ {"_is_a", &POA_IR::EmitsDef::_is_a_skel},
+ {"_get_id", &POA_IR::EmitsDef::_get_id_skel},
+ {"_set_id", &POA_IR::EmitsDef::_set_id_skel},
+ {"describe", &POA_IR::EmitsDef::describe_skel},
+ {"_get_name", &POA_IR::EmitsDef::_get_name_skel},
+ {"_set_name", &POA_IR::EmitsDef::_set_name_skel},
+ {"_interface", &POA_IR::EmitsDef::_interface_skel},
+ {"_get_version", &POA_IR::EmitsDef::_get_version_skel},
+ {"_set_version", &POA_IR::EmitsDef::_set_version_skel},
+ {"_get_def_kind", &POA_IR::EmitsDef::_get_def_kind_skel},
+ {"is_a", &POA_IR::EmitsDef::is_a_skel},
+ {"_get_defined_in", &POA_IR::EmitsDef::_get_defined_in_skel},
+ {"destroy", &POA_IR::EmitsDef::destroy_skel},
+ {"_get_absolute_name", &POA_IR::EmitsDef::_get_absolute_name_skel},
+ {"_get_event", &POA_IR::EmitsDef::_get_event_skel},
+ {"_non_existent", &POA_IR::EmitsDef::_non_existent_skel},
+ {"_get_containing_repository", &POA_IR::EmitsDef::_get_containing_repository_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -9, -2, -12, -2, 4, 5, -1, 50, 8, -45, 11, -1, -46, 14,
+ 15, 16, -1, 17, 18, -1, 19, -6, -2, 20, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 21,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < WORDLIST_SIZE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 23:08:26 */
+static TAO_IR_EmitsDef_Perfect_Hash_OpTable tao_IR_EmitsDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+POA_IR::_TAO_EmitsDef_Strategized_Proxy_Broker *POA_IR::_TAO_EmitsDef_Strategized_Proxy_Broker::the_TAO_EmitsDef_Strategized_Proxy_Broker (void)
+{
+ static POA_IR::_TAO_EmitsDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+POA_IR::_TAO_EmitsDef_Strategized_Proxy_Broker::_TAO_EmitsDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+POA_IR::_TAO_EmitsDef_Strategized_Proxy_Broker::~_TAO_EmitsDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+IR::_TAO_EmitsDef_Proxy_Impl&
+POA_IR::_TAO_EmitsDef_Strategized_Proxy_Broker::select_proxy (
+ ::IR::EmitsDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+POA_IR::_TAO_EmitsDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ POA_IR::_TAO_EmitsDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::IR::_TAO_EmitsDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+IR::_TAO_EmitsDef_Proxy_Broker *
+IR__TAO_EmitsDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::POA_IR::_TAO_EmitsDef_Strategized_Proxy_Broker::the_TAO_EmitsDef_Strategized_Proxy_Broker();
+}
+
+int
+IR__TAO_EmitsDef_Proxy_Broker_Factory_Initializer (long)
+{
+ IR__TAO_EmitsDef_Proxy_Broker_Factory_function_pointer =
+ IR__TAO_EmitsDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int IR__TAO_EmitsDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ IR__TAO_EmitsDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, IR__TAO_EmitsDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+POA_IR::_TAO_EmitsDef_ThruPOA_Proxy_Impl::_TAO_EmitsDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_IR::EmitsDef::EmitsDef (void)
+{
+ this->optable_ = &tao_IR_EmitsDef_optable;
+}
+
+// copy ctor
+POA_IR::EmitsDef::EmitsDef (const EmitsDef& rhs)
+ : ACE_NESTED_CLASS (POA_IR,EventDef) (rhs),
+ POA_CORBA_Contained (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_IR::EmitsDef::~EmitsDef (void)
+{
+}
+
+void POA_IR::EmitsDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_IR::EmitsDef *_tao_impl = (POA_IR::EmitsDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_IR::EmitsDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::EmitsDef *_tao_impl = (POA_IR::EmitsDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_IR::EmitsDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::EmitsDef *_tao_impl = (POA_IR::EmitsDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_IR::EmitsDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/IR/EmitsDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/IR/EventDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Contained:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_IR::EmitsDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/IR/EmitsDef:1.0") == 0)
+ return ACE_static_cast (POA_IR::EmitsDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/IR/EventDef:1.0") == 0)
+ return ACE_static_cast (POA_IR::EventDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Contained:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Contained_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_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_IR::EmitsDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_IR::EmitsDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/IR/EmitsDef:1.0";
+}
+
+IR::EmitsDef*
+POA_IR::EmitsDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::IR::EmitsDef::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_IR_PublishesDef_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 23:08:26 */
+/* 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_IR_PublishesDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_IR_PublishesDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 0, 0, 37, 37, 37, 10, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 0, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 10, 37, 37, 37, 37, 10, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37,
+#else
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 0, 37, 0, 37, 37,
+ 0, 0, 37, 37, 37, 10, 37, 37, 37, 0,
+ 0, 37, 37, 37, 37, 37, 10, 37, 37, 37,
+ 37, 10, 37, 37, 37, 37, 37, 37,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_IR_PublishesDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 18,
+ MIN_WORD_LENGTH = 4,
+ MAX_WORD_LENGTH = 26,
+ MIN_HASH_VALUE = 4,
+ MAX_HASH_VALUE = 36,
+ HASH_VALUE_RANGE = 33,
+ DUPLICATES = 4,
+ WORDLIST_SIZE = 22
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},
+ {"move", &POA_IR::PublishesDef::move_skel},
+ {"_is_a", &POA_IR::PublishesDef::_is_a_skel},
+ {"_get_id", &POA_IR::PublishesDef::_get_id_skel},
+ {"_set_id", &POA_IR::PublishesDef::_set_id_skel},
+ {"describe", &POA_IR::PublishesDef::describe_skel},
+ {"_get_name", &POA_IR::PublishesDef::_get_name_skel},
+ {"_set_name", &POA_IR::PublishesDef::_set_name_skel},
+ {"_interface", &POA_IR::PublishesDef::_interface_skel},
+ {"_get_version", &POA_IR::PublishesDef::_get_version_skel},
+ {"_set_version", &POA_IR::PublishesDef::_set_version_skel},
+ {"_get_def_kind", &POA_IR::PublishesDef::_get_def_kind_skel},
+ {"is_a", &POA_IR::PublishesDef::is_a_skel},
+ {"_get_defined_in", &POA_IR::PublishesDef::_get_defined_in_skel},
+ {"destroy", &POA_IR::PublishesDef::destroy_skel},
+ {"_get_absolute_name", &POA_IR::PublishesDef::_get_absolute_name_skel},
+ {"_get_event", &POA_IR::PublishesDef::_get_event_skel},
+ {"_non_existent", &POA_IR::PublishesDef::_non_existent_skel},
+ {"_get_containing_repository", &POA_IR::PublishesDef::_get_containing_repository_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -9, -2, -12, -2, 4, 5, -1, 50, 8, -45, 11, -1, -46, 14,
+ 15, 16, -1, 17, 18, -1, 19, -6, -2, 20, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 21,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < WORDLIST_SIZE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 23:08:26 */
+static TAO_IR_PublishesDef_Perfect_Hash_OpTable tao_IR_PublishesDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+POA_IR::_TAO_PublishesDef_Strategized_Proxy_Broker *POA_IR::_TAO_PublishesDef_Strategized_Proxy_Broker::the_TAO_PublishesDef_Strategized_Proxy_Broker (void)
+{
+ static POA_IR::_TAO_PublishesDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+POA_IR::_TAO_PublishesDef_Strategized_Proxy_Broker::_TAO_PublishesDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+POA_IR::_TAO_PublishesDef_Strategized_Proxy_Broker::~_TAO_PublishesDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+IR::_TAO_PublishesDef_Proxy_Impl&
+POA_IR::_TAO_PublishesDef_Strategized_Proxy_Broker::select_proxy (
+ ::IR::PublishesDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+POA_IR::_TAO_PublishesDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ POA_IR::_TAO_PublishesDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::IR::_TAO_PublishesDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+IR::_TAO_PublishesDef_Proxy_Broker *
+IR__TAO_PublishesDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::POA_IR::_TAO_PublishesDef_Strategized_Proxy_Broker::the_TAO_PublishesDef_Strategized_Proxy_Broker();
+}
+
+int
+IR__TAO_PublishesDef_Proxy_Broker_Factory_Initializer (long)
+{
+ IR__TAO_PublishesDef_Proxy_Broker_Factory_function_pointer =
+ IR__TAO_PublishesDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int IR__TAO_PublishesDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ IR__TAO_PublishesDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, IR__TAO_PublishesDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+POA_IR::_TAO_PublishesDef_ThruPOA_Proxy_Impl::_TAO_PublishesDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_IR::PublishesDef::PublishesDef (void)
+{
+ this->optable_ = &tao_IR_PublishesDef_optable;
+}
+
+// copy ctor
+POA_IR::PublishesDef::PublishesDef (const PublishesDef& rhs)
+ : ACE_NESTED_CLASS (POA_IR,EventDef) (rhs),
+ POA_CORBA_Contained (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_IR::PublishesDef::~PublishesDef (void)
+{
+}
+
+void POA_IR::PublishesDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_IR::PublishesDef *_tao_impl = (POA_IR::PublishesDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_IR::PublishesDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::PublishesDef *_tao_impl = (POA_IR::PublishesDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_IR::PublishesDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::PublishesDef *_tao_impl = (POA_IR::PublishesDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_IR::PublishesDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/IR/PublishesDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/IR/EventDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Contained:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_IR::PublishesDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/IR/PublishesDef:1.0") == 0)
+ return ACE_static_cast (POA_IR::PublishesDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/IR/EventDef:1.0") == 0)
+ return ACE_static_cast (POA_IR::EventDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Contained:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Contained_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_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_IR::PublishesDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_IR::PublishesDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/IR/PublishesDef:1.0";
+}
+
+IR::PublishesDef*
+POA_IR::PublishesDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::IR::PublishesDef::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_IR_ConsumesDef_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 23:08:27 */
+/* 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_IR_ConsumesDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_IR_ConsumesDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 0, 0, 37, 37, 37, 10, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 0, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 10, 37, 37, 37, 37, 10, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37,
+#else
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 0, 37, 0, 37, 37,
+ 0, 0, 37, 37, 37, 10, 37, 37, 37, 0,
+ 0, 37, 37, 37, 37, 37, 10, 37, 37, 37,
+ 37, 10, 37, 37, 37, 37, 37, 37,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_IR_ConsumesDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 18,
+ MIN_WORD_LENGTH = 4,
+ MAX_WORD_LENGTH = 26,
+ MIN_HASH_VALUE = 4,
+ MAX_HASH_VALUE = 36,
+ HASH_VALUE_RANGE = 33,
+ DUPLICATES = 4,
+ WORDLIST_SIZE = 22
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},
+ {"move", &POA_IR::ConsumesDef::move_skel},
+ {"_is_a", &POA_IR::ConsumesDef::_is_a_skel},
+ {"_get_id", &POA_IR::ConsumesDef::_get_id_skel},
+ {"_set_id", &POA_IR::ConsumesDef::_set_id_skel},
+ {"describe", &POA_IR::ConsumesDef::describe_skel},
+ {"_get_name", &POA_IR::ConsumesDef::_get_name_skel},
+ {"_set_name", &POA_IR::ConsumesDef::_set_name_skel},
+ {"_interface", &POA_IR::ConsumesDef::_interface_skel},
+ {"_get_version", &POA_IR::ConsumesDef::_get_version_skel},
+ {"_set_version", &POA_IR::ConsumesDef::_set_version_skel},
+ {"_get_def_kind", &POA_IR::ConsumesDef::_get_def_kind_skel},
+ {"is_a", &POA_IR::ConsumesDef::is_a_skel},
+ {"_get_defined_in", &POA_IR::ConsumesDef::_get_defined_in_skel},
+ {"destroy", &POA_IR::ConsumesDef::destroy_skel},
+ {"_get_absolute_name", &POA_IR::ConsumesDef::_get_absolute_name_skel},
+ {"_get_event", &POA_IR::ConsumesDef::_get_event_skel},
+ {"_non_existent", &POA_IR::ConsumesDef::_non_existent_skel},
+ {"_get_containing_repository", &POA_IR::ConsumesDef::_get_containing_repository_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -9, -2, -12, -2, 4, 5, -1, 50, 8, -45, 11, -1, -46, 14,
+ 15, 16, -1, 17, 18, -1, 19, -6, -2, 20, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 21,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < WORDLIST_SIZE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 23:08:27 */
+static TAO_IR_ConsumesDef_Perfect_Hash_OpTable tao_IR_ConsumesDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+POA_IR::_TAO_ConsumesDef_Strategized_Proxy_Broker *POA_IR::_TAO_ConsumesDef_Strategized_Proxy_Broker::the_TAO_ConsumesDef_Strategized_Proxy_Broker (void)
+{
+ static POA_IR::_TAO_ConsumesDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+POA_IR::_TAO_ConsumesDef_Strategized_Proxy_Broker::_TAO_ConsumesDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+POA_IR::_TAO_ConsumesDef_Strategized_Proxy_Broker::~_TAO_ConsumesDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+IR::_TAO_ConsumesDef_Proxy_Impl&
+POA_IR::_TAO_ConsumesDef_Strategized_Proxy_Broker::select_proxy (
+ ::IR::ConsumesDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+POA_IR::_TAO_ConsumesDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ POA_IR::_TAO_ConsumesDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::IR::_TAO_ConsumesDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+IR::_TAO_ConsumesDef_Proxy_Broker *
+IR__TAO_ConsumesDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::POA_IR::_TAO_ConsumesDef_Strategized_Proxy_Broker::the_TAO_ConsumesDef_Strategized_Proxy_Broker();
+}
+
+int
+IR__TAO_ConsumesDef_Proxy_Broker_Factory_Initializer (long)
+{
+ IR__TAO_ConsumesDef_Proxy_Broker_Factory_function_pointer =
+ IR__TAO_ConsumesDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int IR__TAO_ConsumesDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ IR__TAO_ConsumesDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, IR__TAO_ConsumesDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+POA_IR::_TAO_ConsumesDef_ThruPOA_Proxy_Impl::_TAO_ConsumesDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_IR::ConsumesDef::ConsumesDef (void)
+{
+ this->optable_ = &tao_IR_ConsumesDef_optable;
+}
+
+// copy ctor
+POA_IR::ConsumesDef::ConsumesDef (const ConsumesDef& rhs)
+ : ACE_NESTED_CLASS (POA_IR,EventDef) (rhs),
+ POA_CORBA_Contained (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_IR::ConsumesDef::~ConsumesDef (void)
+{
+}
+
+void POA_IR::ConsumesDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_IR::ConsumesDef *_tao_impl = (POA_IR::ConsumesDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_IR::ConsumesDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::ConsumesDef *_tao_impl = (POA_IR::ConsumesDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_IR::ConsumesDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::ConsumesDef *_tao_impl = (POA_IR::ConsumesDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_IR::ConsumesDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/IR/ConsumesDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/IR/EventDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Contained:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_IR::ConsumesDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/IR/ConsumesDef:1.0") == 0)
+ return ACE_static_cast (POA_IR::ConsumesDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/IR/EventDef:1.0") == 0)
+ return ACE_static_cast (POA_IR::EventDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Contained:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Contained_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_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_IR::ConsumesDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_IR::ConsumesDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/IR/ConsumesDef:1.0";
+}
+
+IR::ConsumesDef*
+POA_IR::ConsumesDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::IR::ConsumesDef::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_IR_ComponentDef_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 23:08:27 */
+/* 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_IR_ComponentDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_IR_ComponentDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
+ 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
+ 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
+ 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
+ 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
+ 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
+ 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
+ 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
+ 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
+ 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
+ 108, 108, 108, 108, 108, 108, 108, 108, 108, 0,
+ 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
+ 108, 108, 108, 108, 108, 108, 108, 108, 108, 0,
+ 108, 51, 30, 20, 108, 108, 108, 0, 108, 108,
+ 108, 108, 108, 108, 108, 108, 108, 5, 15, 40,
+ 108, 0, 108, 108, 108, 108, 108, 108, 108, 108,
+ 108, 108, 0, 15, 108, 108, 108, 5, 5, 108,
+ 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
+ 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
+ 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
+ 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
+ 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
+ 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
+ 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
+ 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
+ 108, 108, 108, 108, 108, 108,
+#else
+ 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
+ 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
+ 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
+ 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
+ 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
+ 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
+ 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
+ 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
+ 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
+ 108, 108, 108, 108, 108, 0, 108, 0, 108, 51,
+ 30, 20, 108, 108, 108, 0, 108, 108, 5, 15,
+ 40, 108, 0, 108, 108, 0, 15, 108, 108, 108,
+ 5, 5, 108, 108, 108, 108, 108, 108,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_IR_ComponentDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 54,
+ MIN_WORD_LENGTH = 4,
+ MAX_WORD_LENGTH = 26,
+ MIN_HASH_VALUE = 4,
+ MAX_HASH_VALUE = 107,
+ HASH_VALUE_RANGE = 104,
+ DUPLICATES = 14,
+ WORDLIST_SIZE = 58
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},
+ {"is_a", &POA_IR::ComponentDef::is_a_skel},
+ {"_is_a", &POA_IR::ComponentDef::_is_a_skel},
+ {"lookup", &POA_IR::ComponentDef::lookup_skel},
+ {"_get_emits_events", &POA_IR::ComponentDef::_get_emits_events_skel},
+ {"_get_uses_interfaces", &POA_IR::ComponentDef::_get_uses_interfaces_skel},
+ {"_set_base_interfaces", &POA_IR::ComponentDef::_set_base_interfaces_skel},
+ {"_get_base_interfaces", &POA_IR::ComponentDef::_get_base_interfaces_skel},
+ {"_get_consumes_events", &POA_IR::ComponentDef::_get_consumes_events_skel},
+ {"_get_publishes_events", &POA_IR::ComponentDef::_get_publishes_events_skel},
+ {"_get_provides_interfaces", &POA_IR::ComponentDef::_get_provides_interfaces_skel},
+ {"_get_supported_interfaces", &POA_IR::ComponentDef::_get_supported_interfaces_skel},
+ {"_set_supported_interfaces", &POA_IR::ComponentDef::_set_supported_interfaces_skel},
+ {"_non_existent", &POA_IR::ComponentDef::_non_existent_skel},
+ {"_get_name", &POA_IR::ComponentDef::_get_name_skel},
+ {"_get_type", &POA_IR::ComponentDef::_get_type_skel},
+ {"_set_name", &POA_IR::ComponentDef::_set_name_skel},
+ {"_interface", &POA_IR::ComponentDef::_interface_skel},
+ {"_get_containing_repository", &POA_IR::ComponentDef::_get_containing_repository_skel},
+ {"_get_base_component", &POA_IR::ComponentDef::_get_base_component_skel},
+ {"lookup_name", &POA_IR::ComponentDef::lookup_name_skel},
+ {"_get_id", &POA_IR::ComponentDef::_get_id_skel},
+ {"_set_id", &POA_IR::ComponentDef::_set_id_skel},
+ {"_get_absolute_name", &POA_IR::ComponentDef::_get_absolute_name_skel},
+ {"move", &POA_IR::ComponentDef::move_skel},
+ {"destroy", &POA_IR::ComponentDef::destroy_skel},
+ {"_get_def_kind", &POA_IR::ComponentDef::_get_def_kind_skel},
+ {"describe_contents", &POA_IR::ComponentDef::describe_contents_skel},
+ {"_get_version", &POA_IR::ComponentDef::_get_version_skel},
+ {"_set_version", &POA_IR::ComponentDef::_set_version_skel},
+ {"_get_defined_in", &POA_IR::ComponentDef::_get_defined_in_skel},
+ {"describe", &POA_IR::ComponentDef::describe_skel},
+ {"contents", &POA_IR::ComponentDef::contents_skel},
+ {"create_uses", &POA_IR::ComponentDef::create_uses_skel},
+ {"create_emits", &POA_IR::ComponentDef::create_emits_skel},
+ {"create_alias", &POA_IR::ComponentDef::create_alias_skel},
+ {"_get_is_basic", &POA_IR::ComponentDef::_get_is_basic_skel},
+ {"create_provides", &POA_IR::ComponentDef::create_provides_skel},
+ {"create_consumes", &POA_IR::ComponentDef::create_consumes_skel},
+ {"create_publishes", &POA_IR::ComponentDef::create_publishes_skel},
+ {"describe_interface", &POA_IR::ComponentDef::describe_interface_skel},
+ {"create_value_box", &POA_IR::ComponentDef::create_value_box_skel},
+ {"create_enum", &POA_IR::ComponentDef::create_enum_skel},
+ {"create_struct", &POA_IR::ComponentDef::create_struct_skel},
+ {"create_constant", &POA_IR::ComponentDef::create_constant_skel},
+ {"create_value", &POA_IR::ComponentDef::create_value_skel},
+ {"create_module", &POA_IR::ComponentDef::create_module_skel},
+ {"create_native", &POA_IR::ComponentDef::create_native_skel},
+ {"create_attribute", &POA_IR::ComponentDef::create_attribute_skel},
+ {"create_interface", &POA_IR::ComponentDef::create_interface_skel},
+ {"create_local_interface", &POA_IR::ComponentDef::create_local_interface_skel},
+ {"create_abstract_interface", &POA_IR::ComponentDef::create_abstract_interface_skel},
+ {"create_union", &POA_IR::ComponentDef::create_union_skel},
+ {"create_operation", &POA_IR::ComponentDef::create_operation_skel},
+ {"create_exception", &POA_IR::ComponentDef::create_exception_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -1, -1, -1, -1, 4, 5, -1, -1, -1, -1, -1, 6, -1, -1,
+ -1, -1, -1, 7, -8, -4, -109, 12, -14, -2, 13, -110, -17, -3,
+ 16, -110, 20, 21, -24, -2, 22, -1, 23, -112, 26, 27, -1, -1,
+ 28, 29, -1, -1, -1, 30, -1, -1, -31, -2, -109, -1, -1, 33,
+ -37, -2, 34, 35, -40, -2, 36, -114, 39, -1, -113, 42, 43, -1,
+ -1, -1, 44, -1, -1, -49, -2, 45, -1, 46, -1, 47, -1, 48,
+ -116, -51, -2, -109, -1, -1, -1, -1, -1, 53, -1, -1, 54, -1,
+ -1, -1, -1, -1, -1, 55, -1, -56, -2, -109,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < WORDLIST_SIZE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 23:08:28 */
+static TAO_IR_ComponentDef_Perfect_Hash_OpTable tao_IR_ComponentDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+class TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_IR::ComponentDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_InterfaceDefSeq * result);
+
+private:
+ TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_get (const TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_get &);
+ void operator= (const TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_get &);
+
+private:
+ POA_IR::ComponentDef *_tao_impl;
+ CORBA_InterfaceDefSeq * _result;
+};
+
+TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_get::TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_IR::ComponentDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_get::result (CORBA_InterfaceDefSeq * result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_IR::ComponentDef *tao_impl
+ ,
+ const CORBA_InterfaceDefSeq & supported_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_set (const TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_set &);
+ void operator= (const TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_set &);
+
+private:
+ POA_IR::ComponentDef *_tao_impl;
+ const CORBA_InterfaceDefSeq & supported_interfaces_;
+
+};
+
+TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_set::TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_IR::ComponentDef *tao_impl,
+ const CORBA_InterfaceDefSeq & supported_interfaces
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ supported_interfaces_ (supported_interfaces)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= this->supported_interfaces_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+class TAO_ServerRequestInfo_IR_ComponentDef_base_component_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_IR_ComponentDef_base_component_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_IR::ComponentDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (IR::ComponentDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_IR_ComponentDef_base_component_get (const TAO_ServerRequestInfo_IR_ComponentDef_base_component_get &);
+ void operator= (const TAO_ServerRequestInfo_IR_ComponentDef_base_component_get &);
+
+private:
+ POA_IR::ComponentDef *_tao_impl;
+ IR::ComponentDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_IR_ComponentDef_base_component_get::TAO_ServerRequestInfo_IR_ComponentDef_base_component_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_IR::ComponentDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_IR_ComponentDef_base_component_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_IR_ComponentDef_base_component_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_IR_ComponentDef_base_component_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_IR_ComponentDef_base_component_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_IR_ComponentDef_base_component_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_IR_ComponentDef_base_component_get::result (IR::ComponentDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_IR_ComponentDef_provides_interfaces_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_IR_ComponentDef_provides_interfaces_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_IR::ComponentDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (IR::ProvidesDefSeq * result);
+
+private:
+ TAO_ServerRequestInfo_IR_ComponentDef_provides_interfaces_get (const TAO_ServerRequestInfo_IR_ComponentDef_provides_interfaces_get &);
+ void operator= (const TAO_ServerRequestInfo_IR_ComponentDef_provides_interfaces_get &);
+
+private:
+ POA_IR::ComponentDef *_tao_impl;
+ IR::ProvidesDefSeq * _result;
+};
+
+TAO_ServerRequestInfo_IR_ComponentDef_provides_interfaces_get::TAO_ServerRequestInfo_IR_ComponentDef_provides_interfaces_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_IR::ComponentDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_IR_ComponentDef_provides_interfaces_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_IR_ComponentDef_provides_interfaces_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_IR_ComponentDef_provides_interfaces_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_IR_ComponentDef_provides_interfaces_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_IR_ComponentDef_provides_interfaces_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_IR_ComponentDef_provides_interfaces_get::result (IR::ProvidesDefSeq * result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_IR_ComponentDef_uses_interfaces_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_IR_ComponentDef_uses_interfaces_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_IR::ComponentDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (IR::UsesDefSeq * result);
+
+private:
+ TAO_ServerRequestInfo_IR_ComponentDef_uses_interfaces_get (const TAO_ServerRequestInfo_IR_ComponentDef_uses_interfaces_get &);
+ void operator= (const TAO_ServerRequestInfo_IR_ComponentDef_uses_interfaces_get &);
+
+private:
+ POA_IR::ComponentDef *_tao_impl;
+ IR::UsesDefSeq * _result;
+};
+
+TAO_ServerRequestInfo_IR_ComponentDef_uses_interfaces_get::TAO_ServerRequestInfo_IR_ComponentDef_uses_interfaces_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_IR::ComponentDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_IR_ComponentDef_uses_interfaces_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_IR_ComponentDef_uses_interfaces_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_IR_ComponentDef_uses_interfaces_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_IR_ComponentDef_uses_interfaces_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_IR_ComponentDef_uses_interfaces_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_IR_ComponentDef_uses_interfaces_get::result (IR::UsesDefSeq * result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_IR_ComponentDef_emits_events_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_IR_ComponentDef_emits_events_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_IR::ComponentDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (IR::EmitsDefSeq * result);
+
+private:
+ TAO_ServerRequestInfo_IR_ComponentDef_emits_events_get (const TAO_ServerRequestInfo_IR_ComponentDef_emits_events_get &);
+ void operator= (const TAO_ServerRequestInfo_IR_ComponentDef_emits_events_get &);
+
+private:
+ POA_IR::ComponentDef *_tao_impl;
+ IR::EmitsDefSeq * _result;
+};
+
+TAO_ServerRequestInfo_IR_ComponentDef_emits_events_get::TAO_ServerRequestInfo_IR_ComponentDef_emits_events_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_IR::ComponentDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_IR_ComponentDef_emits_events_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_IR_ComponentDef_emits_events_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_IR_ComponentDef_emits_events_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_IR_ComponentDef_emits_events_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_IR_ComponentDef_emits_events_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_IR_ComponentDef_emits_events_get::result (IR::EmitsDefSeq * result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_IR_ComponentDef_publishes_events_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_IR_ComponentDef_publishes_events_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_IR::ComponentDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (IR::PublishesDefSeq * result);
+
+private:
+ TAO_ServerRequestInfo_IR_ComponentDef_publishes_events_get (const TAO_ServerRequestInfo_IR_ComponentDef_publishes_events_get &);
+ void operator= (const TAO_ServerRequestInfo_IR_ComponentDef_publishes_events_get &);
+
+private:
+ POA_IR::ComponentDef *_tao_impl;
+ IR::PublishesDefSeq * _result;
+};
+
+TAO_ServerRequestInfo_IR_ComponentDef_publishes_events_get::TAO_ServerRequestInfo_IR_ComponentDef_publishes_events_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_IR::ComponentDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_IR_ComponentDef_publishes_events_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_IR_ComponentDef_publishes_events_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_IR_ComponentDef_publishes_events_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_IR_ComponentDef_publishes_events_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_IR_ComponentDef_publishes_events_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_IR_ComponentDef_publishes_events_get::result (IR::PublishesDefSeq * result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_IR_ComponentDef_consumes_events_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_IR_ComponentDef_consumes_events_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_IR::ComponentDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (IR::ConsumesDefSeq * result);
+
+private:
+ TAO_ServerRequestInfo_IR_ComponentDef_consumes_events_get (const TAO_ServerRequestInfo_IR_ComponentDef_consumes_events_get &);
+ void operator= (const TAO_ServerRequestInfo_IR_ComponentDef_consumes_events_get &);
+
+private:
+ POA_IR::ComponentDef *_tao_impl;
+ IR::ConsumesDefSeq * _result;
+};
+
+TAO_ServerRequestInfo_IR_ComponentDef_consumes_events_get::TAO_ServerRequestInfo_IR_ComponentDef_consumes_events_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_IR::ComponentDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_IR_ComponentDef_consumes_events_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_IR_ComponentDef_consumes_events_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_IR_ComponentDef_consumes_events_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_IR_ComponentDef_consumes_events_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_IR_ComponentDef_consumes_events_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_IR_ComponentDef_consumes_events_get::result (IR::ConsumesDefSeq * result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_IR_ComponentDef_is_basic_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_IR_ComponentDef_is_basic_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_IR::ComponentDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA::Boolean result);
+
+private:
+ TAO_ServerRequestInfo_IR_ComponentDef_is_basic_get (const TAO_ServerRequestInfo_IR_ComponentDef_is_basic_get &);
+ void operator= (const TAO_ServerRequestInfo_IR_ComponentDef_is_basic_get &);
+
+private:
+ POA_IR::ComponentDef *_tao_impl;
+ CORBA::Boolean _result;
+};
+
+TAO_ServerRequestInfo_IR_ComponentDef_is_basic_get::TAO_ServerRequestInfo_IR_ComponentDef_is_basic_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_IR::ComponentDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_IR_ComponentDef_is_basic_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_IR_ComponentDef_is_basic_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_IR_ComponentDef_is_basic_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= CORBA::Any::from_boolean (this->_result);
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_IR_ComponentDef_is_basic_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_IR_ComponentDef_is_basic_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_IR_ComponentDef_is_basic_get::result (CORBA::Boolean result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_IR_ComponentDef_create_provides : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_IR_ComponentDef_create_provides (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_IR::ComponentDef *tao_impl
+ ,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_InterfaceDef_ptr interface_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (IR::ProvidesDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_IR_ComponentDef_create_provides (const TAO_ServerRequestInfo_IR_ComponentDef_create_provides &);
+ void operator= (const TAO_ServerRequestInfo_IR_ComponentDef_create_provides &);
+
+private:
+ POA_IR::ComponentDef *_tao_impl;
+ const char * id_;
+ const char * name_;
+ const char * version_;
+ CORBA_InterfaceDef_ptr interface_type_;
+ IR::ProvidesDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_IR_ComponentDef_create_provides::TAO_ServerRequestInfo_IR_ComponentDef_create_provides (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_IR::ComponentDef *tao_impl,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_InterfaceDef_ptr interface_type
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ id_ (id),
+ name_ (name),
+ version_ (version),
+ interface_type_ (interface_type)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_IR_ComponentDef_create_provides::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (4);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= name_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= version_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->interface_type_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_IR_ComponentDef_create_provides::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_IR_ComponentDef_create_provides::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_IR_ComponentDef_create_provides::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_IR_ComponentDef_create_provides::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_IR_ComponentDef_create_provides::result (IR::ProvidesDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_IR_ComponentDef_create_uses : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_IR_ComponentDef_create_uses (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_IR::ComponentDef *tao_impl
+ ,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_InterfaceDef_ptr interface_type,
+ const CORBA::Boolean & is_multiple
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (IR::UsesDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_IR_ComponentDef_create_uses (const TAO_ServerRequestInfo_IR_ComponentDef_create_uses &);
+ void operator= (const TAO_ServerRequestInfo_IR_ComponentDef_create_uses &);
+
+private:
+ POA_IR::ComponentDef *_tao_impl;
+ const char * id_;
+ const char * name_;
+ const char * version_;
+ CORBA_InterfaceDef_ptr interface_type_;
+ const CORBA::Boolean & is_multiple_;
+ IR::UsesDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_IR_ComponentDef_create_uses::TAO_ServerRequestInfo_IR_ComponentDef_create_uses (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_IR::ComponentDef *tao_impl,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_InterfaceDef_ptr interface_type,
+ const CORBA::Boolean & is_multiple
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ id_ (id),
+ name_ (name),
+ version_ (version),
+ interface_type_ (interface_type),
+ is_multiple_ (is_multiple)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_IR_ComponentDef_create_uses::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (5);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= name_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= version_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->interface_type_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= CORBA::Any::from_boolean (this->is_multiple_);
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_IR_ComponentDef_create_uses::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_IR_ComponentDef_create_uses::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_IR_ComponentDef_create_uses::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_IR_ComponentDef_create_uses::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_IR_ComponentDef_create_uses::result (IR::UsesDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_IR_ComponentDef_create_emits : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_IR_ComponentDef_create_emits (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_IR::ComponentDef *tao_impl
+ ,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_ValueDef_ptr value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (IR::EmitsDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_IR_ComponentDef_create_emits (const TAO_ServerRequestInfo_IR_ComponentDef_create_emits &);
+ void operator= (const TAO_ServerRequestInfo_IR_ComponentDef_create_emits &);
+
+private:
+ POA_IR::ComponentDef *_tao_impl;
+ const char * id_;
+ const char * name_;
+ const char * version_;
+ CORBA_ValueDef_ptr value_;
+ IR::EmitsDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_IR_ComponentDef_create_emits::TAO_ServerRequestInfo_IR_ComponentDef_create_emits (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_IR::ComponentDef *tao_impl,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_ValueDef_ptr value
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ id_ (id),
+ name_ (name),
+ version_ (version),
+ value_ (value)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_IR_ComponentDef_create_emits::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (4);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= name_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= version_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->value_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_IR_ComponentDef_create_emits::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_IR_ComponentDef_create_emits::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_IR_ComponentDef_create_emits::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_IR_ComponentDef_create_emits::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_IR_ComponentDef_create_emits::result (IR::EmitsDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_IR_ComponentDef_create_publishes : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_IR_ComponentDef_create_publishes (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_IR::ComponentDef *tao_impl
+ ,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_ValueDef_ptr value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (IR::PublishesDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_IR_ComponentDef_create_publishes (const TAO_ServerRequestInfo_IR_ComponentDef_create_publishes &);
+ void operator= (const TAO_ServerRequestInfo_IR_ComponentDef_create_publishes &);
+
+private:
+ POA_IR::ComponentDef *_tao_impl;
+ const char * id_;
+ const char * name_;
+ const char * version_;
+ CORBA_ValueDef_ptr value_;
+ IR::PublishesDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_IR_ComponentDef_create_publishes::TAO_ServerRequestInfo_IR_ComponentDef_create_publishes (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_IR::ComponentDef *tao_impl,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_ValueDef_ptr value
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ id_ (id),
+ name_ (name),
+ version_ (version),
+ value_ (value)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_IR_ComponentDef_create_publishes::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (4);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= name_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= version_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->value_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_IR_ComponentDef_create_publishes::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_IR_ComponentDef_create_publishes::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_IR_ComponentDef_create_publishes::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_IR_ComponentDef_create_publishes::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_IR_ComponentDef_create_publishes::result (IR::PublishesDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_IR_ComponentDef_create_consumes : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_IR_ComponentDef_create_consumes (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_IR::ComponentDef *tao_impl
+ ,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_ValueDef_ptr value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (IR::ConsumesDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_IR_ComponentDef_create_consumes (const TAO_ServerRequestInfo_IR_ComponentDef_create_consumes &);
+ void operator= (const TAO_ServerRequestInfo_IR_ComponentDef_create_consumes &);
+
+private:
+ POA_IR::ComponentDef *_tao_impl;
+ const char * id_;
+ const char * name_;
+ const char * version_;
+ CORBA_ValueDef_ptr value_;
+ IR::ConsumesDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_IR_ComponentDef_create_consumes::TAO_ServerRequestInfo_IR_ComponentDef_create_consumes (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_IR::ComponentDef *tao_impl,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_ValueDef_ptr value
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ id_ (id),
+ name_ (name),
+ version_ (version),
+ value_ (value)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_IR_ComponentDef_create_consumes::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (4);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= name_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= version_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->value_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_IR_ComponentDef_create_consumes::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_IR_ComponentDef_create_consumes::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_IR_ComponentDef_create_consumes::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_IR_ComponentDef_create_consumes::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_IR_ComponentDef_create_consumes::result (IR::ConsumesDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+POA_IR::_TAO_ComponentDef_Strategized_Proxy_Broker *POA_IR::_TAO_ComponentDef_Strategized_Proxy_Broker::the_TAO_ComponentDef_Strategized_Proxy_Broker (void)
+{
+ static POA_IR::_TAO_ComponentDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+POA_IR::_TAO_ComponentDef_Strategized_Proxy_Broker::_TAO_ComponentDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+POA_IR::_TAO_ComponentDef_Strategized_Proxy_Broker::~_TAO_ComponentDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+IR::_TAO_ComponentDef_Proxy_Impl&
+POA_IR::_TAO_ComponentDef_Strategized_Proxy_Broker::select_proxy (
+ ::IR::ComponentDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+POA_IR::_TAO_ComponentDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ POA_IR::_TAO_ComponentDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::IR::_TAO_ComponentDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+IR::_TAO_ComponentDef_Proxy_Broker *
+IR__TAO_ComponentDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::POA_IR::_TAO_ComponentDef_Strategized_Proxy_Broker::the_TAO_ComponentDef_Strategized_Proxy_Broker();
+}
+
+int
+IR__TAO_ComponentDef_Proxy_Broker_Factory_Initializer (long)
+{
+ IR__TAO_ComponentDef_Proxy_Broker_Factory_function_pointer =
+ IR__TAO_ComponentDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int IR__TAO_ComponentDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ IR__TAO_ComponentDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, IR__TAO_ComponentDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+POA_IR::_TAO_ComponentDef_ThruPOA_Proxy_Impl::_TAO_ComponentDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+CORBA_InterfaceDefSeq * POA_IR::_TAO_ComponentDef_ThruPOA_Proxy_Impl::supported_interfaces (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_InterfaceDefSeq_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "supported_interfaces",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_IR::ComponentDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/IR/ComponentDef:1.0"
+ )
+ )->supported_interfaces (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void POA_IR::_TAO_ComponentDef_ThruPOA_Proxy_Impl::supported_interfaces (
+ CORBA_Object *_collocated_tao_target_,
+ const CORBA_InterfaceDefSeq & supported_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "supported_interfaces",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_IR::ComponentDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/IR/ComponentDef:1.0"
+ )
+ )->supported_interfaces (
+ supported_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+IR::ComponentDef_ptr POA_IR::_TAO_ComponentDef_ThruPOA_Proxy_Impl::base_component (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ IR::ComponentDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "base_component",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_IR::ComponentDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/IR/ComponentDef:1.0"
+ )
+ )->base_component (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+IR::ProvidesDefSeq * POA_IR::_TAO_ComponentDef_ThruPOA_Proxy_Impl::provides_interfaces (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ IR::ProvidesDefSeq_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "provides_interfaces",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_IR::ComponentDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/IR/ComponentDef:1.0"
+ )
+ )->provides_interfaces (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+IR::UsesDefSeq * POA_IR::_TAO_ComponentDef_ThruPOA_Proxy_Impl::uses_interfaces (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ IR::UsesDefSeq_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "uses_interfaces",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_IR::ComponentDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/IR/ComponentDef:1.0"
+ )
+ )->uses_interfaces (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+IR::EmitsDefSeq * POA_IR::_TAO_ComponentDef_ThruPOA_Proxy_Impl::emits_events (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ IR::EmitsDefSeq_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "emits_events",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_IR::ComponentDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/IR/ComponentDef:1.0"
+ )
+ )->emits_events (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+IR::PublishesDefSeq * POA_IR::_TAO_ComponentDef_ThruPOA_Proxy_Impl::publishes_events (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ IR::PublishesDefSeq_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "publishes_events",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_IR::ComponentDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/IR/ComponentDef:1.0"
+ )
+ )->publishes_events (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+IR::ConsumesDefSeq * POA_IR::_TAO_ComponentDef_ThruPOA_Proxy_Impl::consumes_events (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ IR::ConsumesDefSeq_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "consumes_events",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_IR::ComponentDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/IR/ComponentDef:1.0"
+ )
+ )->consumes_events (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+CORBA::Boolean POA_IR::_TAO_ComponentDef_ThruPOA_Proxy_Impl::is_basic (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::Boolean _tao_retval = 0;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "is_basic",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (_tao_retval);
+ return ACE_reinterpret_cast (
+ POA_IR::ComponentDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/IR/ComponentDef:1.0"
+ )
+ )->is_basic (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+IR::ProvidesDef_ptr POA_IR::_TAO_ComponentDef_ThruPOA_Proxy_Impl::create_provides (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_InterfaceDef_ptr interface_type
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ IR::ProvidesDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "create_provides",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_IR::ComponentDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/IR/ComponentDef:1.0"
+ )
+ )->create_provides (
+ id,
+ name,
+ version,
+ interface_type
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+IR::UsesDef_ptr POA_IR::_TAO_ComponentDef_ThruPOA_Proxy_Impl::create_uses (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_InterfaceDef_ptr interface_type,
+ CORBA::Boolean is_multiple
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ IR::UsesDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "create_uses",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_IR::ComponentDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/IR/ComponentDef:1.0"
+ )
+ )->create_uses (
+ id,
+ name,
+ version,
+ interface_type,
+ is_multiple
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+IR::EmitsDef_ptr POA_IR::_TAO_ComponentDef_ThruPOA_Proxy_Impl::create_emits (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_ValueDef_ptr value
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ IR::EmitsDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "create_emits",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_IR::ComponentDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/IR/ComponentDef:1.0"
+ )
+ )->create_emits (
+ id,
+ name,
+ version,
+ value
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+IR::PublishesDef_ptr POA_IR::_TAO_ComponentDef_ThruPOA_Proxy_Impl::create_publishes (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_ValueDef_ptr value
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ IR::PublishesDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "create_publishes",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_IR::ComponentDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/IR/ComponentDef:1.0"
+ )
+ )->create_publishes (
+ id,
+ name,
+ version,
+ value
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+IR::ConsumesDef_ptr POA_IR::_TAO_ComponentDef_ThruPOA_Proxy_Impl::create_consumes (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_ValueDef_ptr value
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ IR::ConsumesDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "create_consumes",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_IR::ComponentDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/IR/ComponentDef:1.0"
+ )
+ )->create_consumes (
+ id,
+ name,
+ version,
+ value
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_IR::ComponentDef::ComponentDef (void)
+{
+ this->optable_ = &tao_IR_ComponentDef_optable;
+}
+
+// copy ctor
+POA_IR::ComponentDef::ComponentDef (const ComponentDef& rhs)
+ : POA_CORBA_InterfaceDef (rhs),
+ POA_CORBA_Container (rhs),
+ POA_CORBA_Contained (rhs),
+ POA_CORBA_IDLType (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_IR::ComponentDef::~ComponentDef (void)
+{
+}
+
+void POA_IR::ComponentDef::_get_supported_interfaces_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::ComponentDef *_tao_impl =
+ ACE_static_cast (POA_IR::ComponentDef *, _tao_object_reference);
+
+ CORBA_InterfaceDefSeq_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->supported_interfaces (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_InterfaceDefSeq * _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_IR::ComponentDef::_set_supported_interfaces_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_IR::ComponentDef *_tao_impl =
+ ACE_static_cast (POA_IR::ComponentDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA_InterfaceDefSeq supported_interfaces;
+ if (!(
+ (_tao_in >> supported_interfaces)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_IR_ComponentDef_supported_interfaces_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ supported_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->supported_interfaces (
+ supported_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_IR::ComponentDef::_get_base_component_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::ComponentDef *_tao_impl =
+ ACE_static_cast (POA_IR::ComponentDef *, _tao_object_reference);
+
+ IR::ComponentDef_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_IR_ComponentDef_base_component_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->base_component (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ IR::ComponentDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_IR::ComponentDef::_get_provides_interfaces_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::ComponentDef *_tao_impl =
+ ACE_static_cast (POA_IR::ComponentDef *, _tao_object_reference);
+
+ IR::ProvidesDefSeq_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_IR_ComponentDef_provides_interfaces_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->provides_interfaces (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ IR::ProvidesDefSeq * _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_IR::ComponentDef::_get_uses_interfaces_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::ComponentDef *_tao_impl =
+ ACE_static_cast (POA_IR::ComponentDef *, _tao_object_reference);
+
+ IR::UsesDefSeq_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_IR_ComponentDef_uses_interfaces_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->uses_interfaces (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ IR::UsesDefSeq * _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_IR::ComponentDef::_get_emits_events_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::ComponentDef *_tao_impl =
+ ACE_static_cast (POA_IR::ComponentDef *, _tao_object_reference);
+
+ IR::EmitsDefSeq_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_IR_ComponentDef_emits_events_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->emits_events (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ IR::EmitsDefSeq * _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_IR::ComponentDef::_get_publishes_events_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::ComponentDef *_tao_impl =
+ ACE_static_cast (POA_IR::ComponentDef *, _tao_object_reference);
+
+ IR::PublishesDefSeq_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_IR_ComponentDef_publishes_events_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->publishes_events (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ IR::PublishesDefSeq * _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_IR::ComponentDef::_get_consumes_events_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::ComponentDef *_tao_impl =
+ ACE_static_cast (POA_IR::ComponentDef *, _tao_object_reference);
+
+ IR::ConsumesDefSeq_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_IR_ComponentDef_consumes_events_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->consumes_events (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ IR::ConsumesDefSeq * _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_IR::ComponentDef::_get_is_basic_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::ComponentDef *_tao_impl =
+ ACE_static_cast (POA_IR::ComponentDef *, _tao_object_reference);
+
+ CORBA::Boolean _tao_retval = 0;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_IR_ComponentDef_is_basic_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->is_basic (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA::Boolean _tao_retval_info = _tao_retval;
+ ri.result (_tao_retval_info);
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << CORBA::Any::from_boolean (_tao_retval))
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_IR::ComponentDef::create_provides_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_IR::ComponentDef *_tao_impl =
+ ACE_static_cast (POA_IR::ComponentDef *, _tao_object_reference);
+
+ IR::ProvidesDef_var _tao_retval;
+ CORBA::String_var id;
+ CORBA::String_var name;
+ CORBA::String_var version;
+ CORBA_InterfaceDef_var interface_type;
+ if (!(
+ (_tao_in >> id.out ()) &&
+ (_tao_in >> name.out ()) &&
+ (_tao_in >> version.out ()) &&
+ (_tao_in >> interface_type.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_IR_ComponentDef_create_provides ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ id.in (),
+ name.in (),
+ version.in (),
+ interface_type.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->create_provides (
+ id.in (),
+ name.in (),
+ version.in (),
+ interface_type.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ IR::ProvidesDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_IR::ComponentDef::create_uses_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_IR::ComponentDef *_tao_impl =
+ ACE_static_cast (POA_IR::ComponentDef *, _tao_object_reference);
+
+ IR::UsesDef_var _tao_retval;
+ CORBA::String_var id;
+ CORBA::String_var name;
+ CORBA::String_var version;
+ CORBA_InterfaceDef_var interface_type;
+ CORBA::Boolean is_multiple;
+ if (!(
+ (_tao_in >> id.out ()) &&
+ (_tao_in >> name.out ()) &&
+ (_tao_in >> version.out ()) &&
+ (_tao_in >> interface_type.out ()) &&
+ (_tao_in >> CORBA::Any::to_boolean (is_multiple))
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_IR_ComponentDef_create_uses ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ id.in (),
+ name.in (),
+ version.in (),
+ interface_type.in (),
+ is_multiple
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->create_uses (
+ id.in (),
+ name.in (),
+ version.in (),
+ interface_type.in (),
+ is_multiple
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ IR::UsesDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_IR::ComponentDef::create_emits_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_IR::ComponentDef *_tao_impl =
+ ACE_static_cast (POA_IR::ComponentDef *, _tao_object_reference);
+
+ IR::EmitsDef_var _tao_retval;
+ CORBA::String_var id;
+ CORBA::String_var name;
+ CORBA::String_var version;
+ CORBA_ValueDef_var value;
+ if (!(
+ (_tao_in >> id.out ()) &&
+ (_tao_in >> name.out ()) &&
+ (_tao_in >> version.out ()) &&
+ (_tao_in >> value.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_IR_ComponentDef_create_emits ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ id.in (),
+ name.in (),
+ version.in (),
+ value.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->create_emits (
+ id.in (),
+ name.in (),
+ version.in (),
+ value.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ IR::EmitsDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_IR::ComponentDef::create_publishes_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_IR::ComponentDef *_tao_impl =
+ ACE_static_cast (POA_IR::ComponentDef *, _tao_object_reference);
+
+ IR::PublishesDef_var _tao_retval;
+ CORBA::String_var id;
+ CORBA::String_var name;
+ CORBA::String_var version;
+ CORBA_ValueDef_var value;
+ if (!(
+ (_tao_in >> id.out ()) &&
+ (_tao_in >> name.out ()) &&
+ (_tao_in >> version.out ()) &&
+ (_tao_in >> value.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_IR_ComponentDef_create_publishes ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ id.in (),
+ name.in (),
+ version.in (),
+ value.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->create_publishes (
+ id.in (),
+ name.in (),
+ version.in (),
+ value.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ IR::PublishesDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_IR::ComponentDef::create_consumes_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_IR::ComponentDef *_tao_impl =
+ ACE_static_cast (POA_IR::ComponentDef *, _tao_object_reference);
+
+ IR::ConsumesDef_var _tao_retval;
+ CORBA::String_var id;
+ CORBA::String_var name;
+ CORBA::String_var version;
+ CORBA_ValueDef_var value;
+ if (!(
+ (_tao_in >> id.out ()) &&
+ (_tao_in >> name.out ()) &&
+ (_tao_in >> version.out ()) &&
+ (_tao_in >> value.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_IR_ComponentDef_create_consumes ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ id.in (),
+ name.in (),
+ version.in (),
+ value.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->create_consumes (
+ id.in (),
+ name.in (),
+ version.in (),
+ value.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ IR::ConsumesDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_IR::ComponentDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_IR::ComponentDef *_tao_impl = (POA_IR::ComponentDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_IR::ComponentDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::ComponentDef *_tao_impl = (POA_IR::ComponentDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_IR::ComponentDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::ComponentDef *_tao_impl = (POA_IR::ComponentDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_IR::ComponentDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/IR/ComponentDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/InterfaceDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Container:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Contained:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IDLType:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_IR::ComponentDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/IR/ComponentDef:1.0") == 0)
+ return ACE_static_cast (POA_IR::ComponentDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/InterfaceDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_InterfaceDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Container:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Container_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Contained:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Contained_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IDLType:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IDLType_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_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_IR::ComponentDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_IR::ComponentDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/IR/ComponentDef:1.0";
+}
+
+IR::ComponentDef*
+POA_IR::ComponentDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::IR::ComponentDef::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_IR_PrimaryKeyDef_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 23:08:30 */
+/* 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_IR_PrimaryKeyDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_IR_PrimaryKeyDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32, 32, 0,
+ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32, 32, 0,
+ 32, 32, 0, 0, 32, 32, 32, 10, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32, 0, 5,
+ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 10, 32, 32, 32, 32, 5, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32,
+#else
+ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 0, 32, 0, 32, 32,
+ 0, 0, 32, 32, 32, 10, 32, 32, 32, 0,
+ 5, 32, 32, 32, 32, 32, 10, 32, 32, 32,
+ 32, 5, 32, 32, 32, 32, 32, 32,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_IR_PrimaryKeyDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 18,
+ MIN_WORD_LENGTH = 4,
+ MAX_WORD_LENGTH = 26,
+ MIN_HASH_VALUE = 4,
+ MAX_HASH_VALUE = 31,
+ HASH_VALUE_RANGE = 28,
+ DUPLICATES = 4,
+ WORDLIST_SIZE = 22
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},
+ {"move", &POA_IR::PrimaryKeyDef::move_skel},
+ {"_is_a", &POA_IR::PrimaryKeyDef::_is_a_skel},
+ {"_get_id", &POA_IR::PrimaryKeyDef::_get_id_skel},
+ {"_set_id", &POA_IR::PrimaryKeyDef::_set_id_skel},
+ {"describe", &POA_IR::PrimaryKeyDef::describe_skel},
+ {"_get_name", &POA_IR::PrimaryKeyDef::_get_name_skel},
+ {"_set_name", &POA_IR::PrimaryKeyDef::_set_name_skel},
+ {"_interface", &POA_IR::PrimaryKeyDef::_interface_skel},
+ {"destroy", &POA_IR::PrimaryKeyDef::destroy_skel},
+ {"_get_def_kind", &POA_IR::PrimaryKeyDef::_get_def_kind_skel},
+ {"is_a", &POA_IR::PrimaryKeyDef::is_a_skel},
+ {"_get_version", &POA_IR::PrimaryKeyDef::_get_version_skel},
+ {"_set_version", &POA_IR::PrimaryKeyDef::_set_version_skel},
+ {"_get_absolute_name", &POA_IR::PrimaryKeyDef::_get_absolute_name_skel},
+ {"_get_defined_in", &POA_IR::PrimaryKeyDef::_get_defined_in_skel},
+ {"_get_primary_key", &POA_IR::PrimaryKeyDef::_get_primary_key_skel},
+ {"_non_existent", &POA_IR::PrimaryKeyDef::_non_existent_skel},
+ {"_get_containing_repository", &POA_IR::PrimaryKeyDef::_get_containing_repository_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -6, -2, -9, -2, 4, 5, -1, -38, 8, -38, 11, -1, 12, 13,
+ 14, -15, -2, -33, 17, -1, 18, 19, -1, 20, -1, -1, -1, -1,
+ -1, -1, -1, 21,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < WORDLIST_SIZE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 23:08:30 */
+static TAO_IR_PrimaryKeyDef_Perfect_Hash_OpTable tao_IR_PrimaryKeyDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+class TAO_ServerRequestInfo_IR_PrimaryKeyDef_is_a : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_IR_PrimaryKeyDef_is_a (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_IR::PrimaryKeyDef *tao_impl
+ ,
+ const char * primary_key_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA::Boolean result);
+
+private:
+ TAO_ServerRequestInfo_IR_PrimaryKeyDef_is_a (const TAO_ServerRequestInfo_IR_PrimaryKeyDef_is_a &);
+ void operator= (const TAO_ServerRequestInfo_IR_PrimaryKeyDef_is_a &);
+
+private:
+ POA_IR::PrimaryKeyDef *_tao_impl;
+ const char * primary_key_id_;
+ CORBA::Boolean _result;
+};
+
+TAO_ServerRequestInfo_IR_PrimaryKeyDef_is_a::TAO_ServerRequestInfo_IR_PrimaryKeyDef_is_a (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_IR::PrimaryKeyDef *tao_impl,
+ const char * primary_key_id
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ primary_key_id_ (primary_key_id)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_IR_PrimaryKeyDef_is_a::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= primary_key_id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_IR_PrimaryKeyDef_is_a::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_IR_PrimaryKeyDef_is_a::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= CORBA::Any::from_boolean (this->_result);
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_IR_PrimaryKeyDef_is_a::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_IR_PrimaryKeyDef_is_a::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_IR_PrimaryKeyDef_is_a::result (CORBA::Boolean result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_IR_PrimaryKeyDef_primary_key_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_IR_PrimaryKeyDef_primary_key_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_IR::PrimaryKeyDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_ValueDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_IR_PrimaryKeyDef_primary_key_get (const TAO_ServerRequestInfo_IR_PrimaryKeyDef_primary_key_get &);
+ void operator= (const TAO_ServerRequestInfo_IR_PrimaryKeyDef_primary_key_get &);
+
+private:
+ POA_IR::PrimaryKeyDef *_tao_impl;
+ CORBA_ValueDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_IR_PrimaryKeyDef_primary_key_get::TAO_ServerRequestInfo_IR_PrimaryKeyDef_primary_key_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_IR::PrimaryKeyDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_IR_PrimaryKeyDef_primary_key_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_IR_PrimaryKeyDef_primary_key_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_IR_PrimaryKeyDef_primary_key_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_IR_PrimaryKeyDef_primary_key_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_IR_PrimaryKeyDef_primary_key_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_IR_PrimaryKeyDef_primary_key_get::result (CORBA_ValueDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+POA_IR::_TAO_PrimaryKeyDef_Strategized_Proxy_Broker *POA_IR::_TAO_PrimaryKeyDef_Strategized_Proxy_Broker::the_TAO_PrimaryKeyDef_Strategized_Proxy_Broker (void)
+{
+ static POA_IR::_TAO_PrimaryKeyDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+POA_IR::_TAO_PrimaryKeyDef_Strategized_Proxy_Broker::_TAO_PrimaryKeyDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+POA_IR::_TAO_PrimaryKeyDef_Strategized_Proxy_Broker::~_TAO_PrimaryKeyDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+IR::_TAO_PrimaryKeyDef_Proxy_Impl&
+POA_IR::_TAO_PrimaryKeyDef_Strategized_Proxy_Broker::select_proxy (
+ ::IR::PrimaryKeyDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+POA_IR::_TAO_PrimaryKeyDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ POA_IR::_TAO_PrimaryKeyDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::IR::_TAO_PrimaryKeyDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+IR::_TAO_PrimaryKeyDef_Proxy_Broker *
+IR__TAO_PrimaryKeyDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::POA_IR::_TAO_PrimaryKeyDef_Strategized_Proxy_Broker::the_TAO_PrimaryKeyDef_Strategized_Proxy_Broker();
+}
+
+int
+IR__TAO_PrimaryKeyDef_Proxy_Broker_Factory_Initializer (long)
+{
+ IR__TAO_PrimaryKeyDef_Proxy_Broker_Factory_function_pointer =
+ IR__TAO_PrimaryKeyDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int IR__TAO_PrimaryKeyDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ IR__TAO_PrimaryKeyDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, IR__TAO_PrimaryKeyDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+POA_IR::_TAO_PrimaryKeyDef_ThruPOA_Proxy_Impl::_TAO_PrimaryKeyDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+CORBA::Boolean POA_IR::_TAO_PrimaryKeyDef_ThruPOA_Proxy_Impl::is_a (
+ CORBA_Object *_collocated_tao_target_,
+ const char * primary_key_id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::Boolean _tao_retval = 0;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "is_a",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (_tao_retval);
+ return ACE_reinterpret_cast (
+ POA_IR::PrimaryKeyDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/IR/PrimaryKeyDef:1.0"
+ )
+ )->is_a (
+ primary_key_id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+CORBA_ValueDef_ptr POA_IR::_TAO_PrimaryKeyDef_ThruPOA_Proxy_Impl::primary_key (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_ValueDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "primary_key",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_IR::PrimaryKeyDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/IR/PrimaryKeyDef:1.0"
+ )
+ )->primary_key (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_IR::PrimaryKeyDef::PrimaryKeyDef (void)
+{
+ this->optable_ = &tao_IR_PrimaryKeyDef_optable;
+}
+
+// copy ctor
+POA_IR::PrimaryKeyDef::PrimaryKeyDef (const PrimaryKeyDef& rhs)
+ : POA_CORBA_Contained (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_IR::PrimaryKeyDef::~PrimaryKeyDef (void)
+{
+}
+
+void POA_IR::PrimaryKeyDef::is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_IR::PrimaryKeyDef *_tao_impl =
+ ACE_static_cast (POA_IR::PrimaryKeyDef *, _tao_object_reference);
+
+ CORBA::Boolean _tao_retval = 0;
+ CORBA::String_var primary_key_id;
+ if (!(
+ (_tao_in >> primary_key_id.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_IR_PrimaryKeyDef_is_a ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ primary_key_id.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->is_a (
+ primary_key_id.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA::Boolean _tao_retval_info = _tao_retval;
+ ri.result (_tao_retval_info);
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << CORBA::Any::from_boolean (_tao_retval))
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_IR::PrimaryKeyDef::_get_primary_key_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::PrimaryKeyDef *_tao_impl =
+ ACE_static_cast (POA_IR::PrimaryKeyDef *, _tao_object_reference);
+
+ CORBA_ValueDef_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_IR_PrimaryKeyDef_primary_key_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->primary_key (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_ValueDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_IR::PrimaryKeyDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_IR::PrimaryKeyDef *_tao_impl = (POA_IR::PrimaryKeyDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_IR::PrimaryKeyDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::PrimaryKeyDef *_tao_impl = (POA_IR::PrimaryKeyDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_IR::PrimaryKeyDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::PrimaryKeyDef *_tao_impl = (POA_IR::PrimaryKeyDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_IR::PrimaryKeyDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/IR/PrimaryKeyDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Contained:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_IR::PrimaryKeyDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/IR/PrimaryKeyDef:1.0") == 0)
+ return ACE_static_cast (POA_IR::PrimaryKeyDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Contained:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Contained_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_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_IR::PrimaryKeyDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_IR::PrimaryKeyDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/IR/PrimaryKeyDef:1.0";
+}
+
+IR::PrimaryKeyDef*
+POA_IR::PrimaryKeyDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::IR::PrimaryKeyDef::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_IR_FactoryDef_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 23:08:30 */
+/* 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_IR_FactoryDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_IR_FactoryDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 15, 0, 10, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 0, 5,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 0, 20, 37, 37, 37, 37, 10, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37,
+#else
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 0, 37, 0, 37, 37,
+ 15, 0, 10, 37, 37, 37, 37, 37, 37, 0,
+ 5, 37, 37, 37, 37, 0, 20, 37, 37, 37,
+ 37, 10, 37, 37, 37, 37, 37, 37,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_IR_FactoryDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 27,
+ MIN_WORD_LENGTH = 4,
+ MAX_WORD_LENGTH = 26,
+ MIN_HASH_VALUE = 4,
+ MAX_HASH_VALUE = 36,
+ HASH_VALUE_RANGE = 33,
+ DUPLICATES = 10,
+ WORDLIST_SIZE = 31
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},
+ {"move", &POA_IR::FactoryDef::move_skel},
+ {"_is_a", &POA_IR::FactoryDef::_is_a_skel},
+ {"_get_mode", &POA_IR::FactoryDef::_get_mode_skel},
+ {"_set_name", &POA_IR::FactoryDef::_set_name_skel},
+ {"_get_name", &POA_IR::FactoryDef::_get_name_skel},
+ {"_set_mode", &POA_IR::FactoryDef::_set_mode_skel},
+ {"_interface", &POA_IR::FactoryDef::_interface_skel},
+ {"_get_params", &POA_IR::FactoryDef::_get_params_skel},
+ {"_set_params", &POA_IR::FactoryDef::_set_params_skel},
+ {"_get_contexts", &POA_IR::FactoryDef::_get_contexts_skel},
+ {"_set_contexts", &POA_IR::FactoryDef::_set_contexts_skel},
+ {"_get_exceptions", &POA_IR::FactoryDef::_get_exceptions_skel},
+ {"_set_exceptions", &POA_IR::FactoryDef::_set_exceptions_skel},
+ {"_get_version", &POA_IR::FactoryDef::_get_version_skel},
+ {"_set_version", &POA_IR::FactoryDef::_set_version_skel},
+ {"_get_absolute_name", &POA_IR::FactoryDef::_get_absolute_name_skel},
+ {"_get_defined_in", &POA_IR::FactoryDef::_get_defined_in_skel},
+ {"_get_id", &POA_IR::FactoryDef::_get_id_skel},
+ {"_set_id", &POA_IR::FactoryDef::_set_id_skel},
+ {"describe", &POA_IR::FactoryDef::describe_skel},
+ {"_get_result_def", &POA_IR::FactoryDef::_get_result_def_skel},
+ {"_set_result_def", &POA_IR::FactoryDef::_set_result_def_skel},
+ {"_get_def_kind", &POA_IR::FactoryDef::_get_def_kind_skel},
+ {"_get_result", &POA_IR::FactoryDef::_get_result_skel},
+ {"destroy", &POA_IR::FactoryDef::destroy_skel},
+ {"_non_existent", &POA_IR::FactoryDef::_non_existent_skel},
+ {"_get_containing_repository", &POA_IR::FactoryDef::_get_containing_repository_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 class TAO_operation_db_entry *resword;
+
+ switch (key)
+ {
+ case 4:
+ resword = &wordlist[4]; break;
+ case 5:
+ resword = &wordlist[5]; break;
+ case 9:
+ resword = &wordlist[6];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ resword = &wordlist[7];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ resword = &wordlist[8];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ resword = &wordlist[9];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ return 0;
+ case 10:
+ resword = &wordlist[10]; break;
+ case 11:
+ resword = &wordlist[11];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ resword = &wordlist[12];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ return 0;
+ case 13:
+ resword = &wordlist[13];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ resword = &wordlist[14];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ return 0;
+ case 15:
+ resword = &wordlist[15];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ resword = &wordlist[16];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ return 0;
+ case 17:
+ resword = &wordlist[17];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ resword = &wordlist[18];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ return 0;
+ case 18:
+ resword = &wordlist[19]; break;
+ case 20:
+ resword = &wordlist[20]; break;
+ case 22:
+ resword = &wordlist[21];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ resword = &wordlist[22];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ return 0;
+ case 23:
+ resword = &wordlist[23]; break;
+ case 25:
+ resword = &wordlist[24];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ resword = &wordlist[25];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ return 0;
+ case 28:
+ resword = &wordlist[26]; break;
+ case 31:
+ resword = &wordlist[27]; break;
+ case 32:
+ resword = &wordlist[28]; break;
+ case 33:
+ resword = &wordlist[29]; break;
+ case 36:
+ resword = &wordlist[30]; break;
+ default: return 0;
+ }
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1))
+ return resword;
+ return 0;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 23:08:30 */
+static TAO_IR_FactoryDef_Perfect_Hash_OpTable tao_IR_FactoryDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+POA_IR::_TAO_FactoryDef_Strategized_Proxy_Broker *POA_IR::_TAO_FactoryDef_Strategized_Proxy_Broker::the_TAO_FactoryDef_Strategized_Proxy_Broker (void)
+{
+ static POA_IR::_TAO_FactoryDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+POA_IR::_TAO_FactoryDef_Strategized_Proxy_Broker::_TAO_FactoryDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+POA_IR::_TAO_FactoryDef_Strategized_Proxy_Broker::~_TAO_FactoryDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+IR::_TAO_FactoryDef_Proxy_Impl&
+POA_IR::_TAO_FactoryDef_Strategized_Proxy_Broker::select_proxy (
+ ::IR::FactoryDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+POA_IR::_TAO_FactoryDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ POA_IR::_TAO_FactoryDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::IR::_TAO_FactoryDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+IR::_TAO_FactoryDef_Proxy_Broker *
+IR__TAO_FactoryDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::POA_IR::_TAO_FactoryDef_Strategized_Proxy_Broker::the_TAO_FactoryDef_Strategized_Proxy_Broker();
+}
+
+int
+IR__TAO_FactoryDef_Proxy_Broker_Factory_Initializer (long)
+{
+ IR__TAO_FactoryDef_Proxy_Broker_Factory_function_pointer =
+ IR__TAO_FactoryDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int IR__TAO_FactoryDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ IR__TAO_FactoryDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, IR__TAO_FactoryDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+POA_IR::_TAO_FactoryDef_ThruPOA_Proxy_Impl::_TAO_FactoryDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_IR::FactoryDef::FactoryDef (void)
+{
+ this->optable_ = &tao_IR_FactoryDef_optable;
+}
+
+// copy ctor
+POA_IR::FactoryDef::FactoryDef (const FactoryDef& rhs)
+ : POA_CORBA_OperationDef (rhs),
+ POA_CORBA_Contained (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_IR::FactoryDef::~FactoryDef (void)
+{
+}
+
+void POA_IR::FactoryDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_IR::FactoryDef *_tao_impl = (POA_IR::FactoryDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_IR::FactoryDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::FactoryDef *_tao_impl = (POA_IR::FactoryDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_IR::FactoryDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::FactoryDef *_tao_impl = (POA_IR::FactoryDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_IR::FactoryDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/IR/FactoryDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/OperationDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Contained:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_IR::FactoryDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/IR/FactoryDef:1.0") == 0)
+ return ACE_static_cast (POA_IR::FactoryDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/OperationDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_OperationDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Contained:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Contained_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_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_IR::FactoryDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_IR::FactoryDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/IR/FactoryDef:1.0";
+}
+
+IR::FactoryDef*
+POA_IR::FactoryDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::IR::FactoryDef::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_IR_FinderDef_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 23:08:31 */
+/* 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_IR_FinderDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_IR_FinderDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 15, 0, 10, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 0, 5,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 0, 20, 37, 37, 37, 37, 10, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37,
+#else
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 0, 37, 0, 37, 37,
+ 15, 0, 10, 37, 37, 37, 37, 37, 37, 0,
+ 5, 37, 37, 37, 37, 0, 20, 37, 37, 37,
+ 37, 10, 37, 37, 37, 37, 37, 37,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_IR_FinderDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 27,
+ MIN_WORD_LENGTH = 4,
+ MAX_WORD_LENGTH = 26,
+ MIN_HASH_VALUE = 4,
+ MAX_HASH_VALUE = 36,
+ HASH_VALUE_RANGE = 33,
+ DUPLICATES = 10,
+ WORDLIST_SIZE = 31
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},
+ {"move", &POA_IR::FinderDef::move_skel},
+ {"_is_a", &POA_IR::FinderDef::_is_a_skel},
+ {"_get_mode", &POA_IR::FinderDef::_get_mode_skel},
+ {"_set_name", &POA_IR::FinderDef::_set_name_skel},
+ {"_get_name", &POA_IR::FinderDef::_get_name_skel},
+ {"_set_mode", &POA_IR::FinderDef::_set_mode_skel},
+ {"_interface", &POA_IR::FinderDef::_interface_skel},
+ {"_get_params", &POA_IR::FinderDef::_get_params_skel},
+ {"_set_params", &POA_IR::FinderDef::_set_params_skel},
+ {"_get_contexts", &POA_IR::FinderDef::_get_contexts_skel},
+ {"_set_contexts", &POA_IR::FinderDef::_set_contexts_skel},
+ {"_get_exceptions", &POA_IR::FinderDef::_get_exceptions_skel},
+ {"_set_exceptions", &POA_IR::FinderDef::_set_exceptions_skel},
+ {"_get_version", &POA_IR::FinderDef::_get_version_skel},
+ {"_set_version", &POA_IR::FinderDef::_set_version_skel},
+ {"_get_absolute_name", &POA_IR::FinderDef::_get_absolute_name_skel},
+ {"_get_defined_in", &POA_IR::FinderDef::_get_defined_in_skel},
+ {"_get_id", &POA_IR::FinderDef::_get_id_skel},
+ {"_set_id", &POA_IR::FinderDef::_set_id_skel},
+ {"describe", &POA_IR::FinderDef::describe_skel},
+ {"_get_result_def", &POA_IR::FinderDef::_get_result_def_skel},
+ {"_set_result_def", &POA_IR::FinderDef::_set_result_def_skel},
+ {"_get_def_kind", &POA_IR::FinderDef::_get_def_kind_skel},
+ {"_get_result", &POA_IR::FinderDef::_get_result_skel},
+ {"destroy", &POA_IR::FinderDef::destroy_skel},
+ {"_non_existent", &POA_IR::FinderDef::_non_existent_skel},
+ {"_get_containing_repository", &POA_IR::FinderDef::_get_containing_repository_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 class TAO_operation_db_entry *resword;
+
+ switch (key)
+ {
+ case 4:
+ resword = &wordlist[4]; break;
+ case 5:
+ resword = &wordlist[5]; break;
+ case 9:
+ resword = &wordlist[6];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ resword = &wordlist[7];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ resword = &wordlist[8];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ resword = &wordlist[9];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ return 0;
+ case 10:
+ resword = &wordlist[10]; break;
+ case 11:
+ resword = &wordlist[11];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ resword = &wordlist[12];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ return 0;
+ case 13:
+ resword = &wordlist[13];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ resword = &wordlist[14];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ return 0;
+ case 15:
+ resword = &wordlist[15];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ resword = &wordlist[16];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ return 0;
+ case 17:
+ resword = &wordlist[17];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ resword = &wordlist[18];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ return 0;
+ case 18:
+ resword = &wordlist[19]; break;
+ case 20:
+ resword = &wordlist[20]; break;
+ case 22:
+ resword = &wordlist[21];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ resword = &wordlist[22];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ return 0;
+ case 23:
+ resword = &wordlist[23]; break;
+ case 25:
+ resword = &wordlist[24];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ resword = &wordlist[25];
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1)) return resword;
+ return 0;
+ case 28:
+ resword = &wordlist[26]; break;
+ case 31:
+ resword = &wordlist[27]; break;
+ case 32:
+ resword = &wordlist[28]; break;
+ case 33:
+ resword = &wordlist[29]; break;
+ case 36:
+ resword = &wordlist[30]; break;
+ default: return 0;
+ }
+ if (*str == *resword->opname_ && !strncmp (str + 1, resword->opname_ + 1, len - 1))
+ return resword;
+ return 0;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 23:08:31 */
+static TAO_IR_FinderDef_Perfect_Hash_OpTable tao_IR_FinderDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+POA_IR::_TAO_FinderDef_Strategized_Proxy_Broker *POA_IR::_TAO_FinderDef_Strategized_Proxy_Broker::the_TAO_FinderDef_Strategized_Proxy_Broker (void)
+{
+ static POA_IR::_TAO_FinderDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+POA_IR::_TAO_FinderDef_Strategized_Proxy_Broker::_TAO_FinderDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+POA_IR::_TAO_FinderDef_Strategized_Proxy_Broker::~_TAO_FinderDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+IR::_TAO_FinderDef_Proxy_Impl&
+POA_IR::_TAO_FinderDef_Strategized_Proxy_Broker::select_proxy (
+ ::IR::FinderDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+POA_IR::_TAO_FinderDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ POA_IR::_TAO_FinderDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::IR::_TAO_FinderDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+IR::_TAO_FinderDef_Proxy_Broker *
+IR__TAO_FinderDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::POA_IR::_TAO_FinderDef_Strategized_Proxy_Broker::the_TAO_FinderDef_Strategized_Proxy_Broker();
+}
+
+int
+IR__TAO_FinderDef_Proxy_Broker_Factory_Initializer (long)
+{
+ IR__TAO_FinderDef_Proxy_Broker_Factory_function_pointer =
+ IR__TAO_FinderDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int IR__TAO_FinderDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ IR__TAO_FinderDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, IR__TAO_FinderDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+POA_IR::_TAO_FinderDef_ThruPOA_Proxy_Impl::_TAO_FinderDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_IR::FinderDef::FinderDef (void)
+{
+ this->optable_ = &tao_IR_FinderDef_optable;
+}
+
+// copy ctor
+POA_IR::FinderDef::FinderDef (const FinderDef& rhs)
+ : POA_CORBA_OperationDef (rhs),
+ POA_CORBA_Contained (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_IR::FinderDef::~FinderDef (void)
+{
+}
+
+void POA_IR::FinderDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_IR::FinderDef *_tao_impl = (POA_IR::FinderDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_IR::FinderDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::FinderDef *_tao_impl = (POA_IR::FinderDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_IR::FinderDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::FinderDef *_tao_impl = (POA_IR::FinderDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_IR::FinderDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/IR/FinderDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/OperationDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Contained:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_IR::FinderDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/IR/FinderDef:1.0") == 0)
+ return ACE_static_cast (POA_IR::FinderDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/OperationDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_OperationDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Contained:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Contained_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_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_IR::FinderDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_IR::FinderDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/IR/FinderDef:1.0";
+}
+
+IR::FinderDef*
+POA_IR::FinderDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::IR::FinderDef::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_IR_HomeDef_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 23:08:31 */
+/* 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_IR_HomeDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_IR_HomeDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 91, 91, 91, 91, 91, 91, 91, 91, 91, 91,
+ 91, 91, 91, 91, 91, 91, 91, 91, 91, 91,
+ 91, 91, 91, 91, 91, 91, 91, 91, 91, 91,
+ 91, 91, 91, 91, 91, 91, 91, 91, 91, 91,
+ 91, 91, 91, 91, 91, 91, 91, 91, 91, 91,
+ 91, 91, 91, 91, 91, 91, 91, 91, 91, 91,
+ 91, 91, 91, 91, 91, 91, 91, 91, 91, 91,
+ 91, 91, 91, 91, 91, 91, 91, 91, 91, 91,
+ 91, 91, 91, 91, 91, 91, 91, 91, 91, 91,
+ 91, 91, 91, 91, 91, 91, 91, 91, 91, 91,
+ 91, 91, 91, 91, 91, 91, 91, 91, 91, 0,
+ 91, 91, 91, 91, 91, 91, 91, 91, 91, 91,
+ 91, 91, 91, 91, 91, 91, 91, 91, 91, 0,
+ 91, 20, 5, 40, 91, 91, 91, 0, 91, 91,
+ 91, 91, 91, 91, 91, 91, 91, 0, 0, 5,
+ 91, 0, 91, 5, 91, 91, 91, 91, 91, 91,
+ 91, 91, 20, 55, 91, 91, 91, 0, 45, 91,
+ 91, 91, 91, 91, 91, 91, 91, 91, 91, 91,
+ 91, 91, 91, 91, 91, 91, 91, 91, 91, 91,
+ 91, 91, 91, 91, 91, 91, 91, 91, 91, 91,
+ 91, 91, 91, 91, 91, 91, 91, 91, 91, 91,
+ 91, 91, 91, 91, 91, 91, 91, 91, 91, 91,
+ 91, 91, 91, 91, 91, 91, 91, 91, 91, 91,
+ 91, 91, 91, 91, 91, 91, 91, 91, 91, 91,
+ 91, 91, 91, 91, 91, 91, 91, 91, 91, 91,
+ 91, 91, 91, 91, 91, 91,
+#else
+ 91, 91, 91, 91, 91, 91, 91, 91, 91, 91,
+ 91, 91, 91, 91, 91, 91, 91, 91, 91, 91,
+ 91, 91, 91, 91, 91, 91, 91, 91, 91, 91,
+ 91, 91, 91, 91, 91, 91, 91, 91, 91, 91,
+ 91, 91, 91, 91, 91, 91, 91, 91, 91, 91,
+ 91, 91, 91, 91, 91, 91, 91, 91, 91, 91,
+ 91, 91, 91, 91, 91, 91, 91, 91, 91, 91,
+ 91, 91, 91, 91, 91, 91, 91, 91, 91, 91,
+ 91, 91, 91, 91, 91, 91, 91, 91, 91, 91,
+ 91, 91, 91, 91, 91, 0, 91, 0, 91, 20,
+ 5, 40, 91, 91, 91, 0, 91, 91, 0, 0,
+ 5, 91, 0, 91, 5, 20, 55, 91, 91, 91,
+ 0, 45, 91, 91, 91, 91, 91, 91,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_IR_HomeDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 49,
+ MIN_WORD_LENGTH = 4,
+ MAX_WORD_LENGTH = 26,
+ MIN_HASH_VALUE = 4,
+ MAX_HASH_VALUE = 90,
+ HASH_VALUE_RANGE = 87,
+ DUPLICATES = 9,
+ WORDLIST_SIZE = 53
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},
+ {"is_a", &POA_IR::HomeDef::is_a_skel},
+ {"_is_a", &POA_IR::HomeDef::_is_a_skel},
+ {"lookup", &POA_IR::HomeDef::lookup_skel},
+ {"_get_id", &POA_IR::HomeDef::_get_id_skel},
+ {"_set_id", &POA_IR::HomeDef::_set_id_skel},
+ {"_get_version", &POA_IR::HomeDef::_get_version_skel},
+ {"_set_version", &POA_IR::HomeDef::_set_version_skel},
+ {"_get_def_kind", &POA_IR::HomeDef::_get_def_kind_skel},
+ {"_get_defined_in", &POA_IR::HomeDef::_get_defined_in_skel},
+ {"create_enum", &POA_IR::HomeDef::create_enum_skel},
+ {"_get_finders", &POA_IR::HomeDef::_get_finders_skel},
+ {"_get_is_basic", &POA_IR::HomeDef::_get_is_basic_skel},
+ {"_get_factories", &POA_IR::HomeDef::_get_factories_skel},
+ {"create_value_box", &POA_IR::HomeDef::create_value_box_skel},
+ {"create_union", &POA_IR::HomeDef::create_union_skel},
+ {"create_finder", &POA_IR::HomeDef::create_finder_skel},
+ {"_get_base_interfaces", &POA_IR::HomeDef::_get_base_interfaces_skel},
+ {"_set_base_interfaces", &POA_IR::HomeDef::_set_base_interfaces_skel},
+ {"create_operation", &POA_IR::HomeDef::create_operation_skel},
+ {"create_exception", &POA_IR::HomeDef::create_exception_skel},
+ {"describe_contents", &POA_IR::HomeDef::describe_contents_skel},
+ {"move", &POA_IR::HomeDef::move_skel},
+ {"contents", &POA_IR::HomeDef::contents_skel},
+ {"_get_name", &POA_IR::HomeDef::_get_name_skel},
+ {"_get_type", &POA_IR::HomeDef::_get_type_skel},
+ {"_set_name", &POA_IR::HomeDef::_set_name_skel},
+ {"_interface", &POA_IR::HomeDef::_interface_skel},
+ {"lookup_name", &POA_IR::HomeDef::lookup_name_skel},
+ {"create_alias", &POA_IR::HomeDef::create_alias_skel},
+ {"describe", &POA_IR::HomeDef::describe_skel},
+ {"_get_base_home", &POA_IR::HomeDef::_get_base_home_skel},
+ {"destroy", &POA_IR::HomeDef::destroy_skel},
+ {"_get_absolute_name", &POA_IR::HomeDef::_get_absolute_name_skel},
+ {"_get_primary_key", &POA_IR::HomeDef::_get_primary_key_skel},
+ {"describe_interface", &POA_IR::HomeDef::describe_interface_skel},
+ {"_non_existent", &POA_IR::HomeDef::_non_existent_skel},
+ {"_get_containing_repository", &POA_IR::HomeDef::_get_containing_repository_skel},
+ {"create_value", &POA_IR::HomeDef::create_value_skel},
+ {"create_module", &POA_IR::HomeDef::create_module_skel},
+ {"create_native", &POA_IR::HomeDef::create_native_skel},
+ {"create_attribute", &POA_IR::HomeDef::create_attribute_skel},
+ {"create_interface", &POA_IR::HomeDef::create_interface_skel},
+ {"_get_managed_component", &POA_IR::HomeDef::_get_managed_component_skel},
+ {"create_factory", &POA_IR::HomeDef::create_factory_skel},
+ {"create_local_interface", &POA_IR::HomeDef::create_local_interface_skel},
+ {"create_primary_key", &POA_IR::HomeDef::create_primary_key_skel},
+ {"create_abstract_interface", &POA_IR::HomeDef::create_abstract_interface_skel},
+ {"create_struct", &POA_IR::HomeDef::create_struct_skel},
+ {"create_constant", &POA_IR::HomeDef::create_constant_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -1, -1, -1, -1, 4, 5, 6, -1, -1, -1, -7, -2, -92, -1,
+ -1, -9, -2, -92, 11, -1, 12, -1, -1, -1, -1, -1, -1, -20,
+ -2, -22, -2, 13, 14, 15, 16, -1, 17, 18, 19, -1, -103, -102,
+ 24, -1, 25, -1, -27, -3, 26, -93, 30, 31, 32, 33, 34, -1,
+ -1, 35, 36, -1, -1, 37, -1, 38, -1, -1, -1, -1, 39, -42,
+ -2, 40, 41, -94, -44, -2, -92, 46, -1, 47, -1, -1, 48, 49,
+ -1, 50, -1, -1, 51, -1, 52,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < WORDLIST_SIZE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 23:08:31 */
+static TAO_IR_HomeDef_Perfect_Hash_OpTable tao_IR_HomeDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+class TAO_ServerRequestInfo_IR_HomeDef_base_home_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_IR_HomeDef_base_home_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_IR::HomeDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (IR::HomeDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_IR_HomeDef_base_home_get (const TAO_ServerRequestInfo_IR_HomeDef_base_home_get &);
+ void operator= (const TAO_ServerRequestInfo_IR_HomeDef_base_home_get &);
+
+private:
+ POA_IR::HomeDef *_tao_impl;
+ IR::HomeDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_IR_HomeDef_base_home_get::TAO_ServerRequestInfo_IR_HomeDef_base_home_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_IR::HomeDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_IR_HomeDef_base_home_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_IR_HomeDef_base_home_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_IR_HomeDef_base_home_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_IR_HomeDef_base_home_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_IR_HomeDef_base_home_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_IR_HomeDef_base_home_get::result (IR::HomeDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_IR_HomeDef_managed_component_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_IR_HomeDef_managed_component_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_IR::HomeDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (IR::ComponentDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_IR_HomeDef_managed_component_get (const TAO_ServerRequestInfo_IR_HomeDef_managed_component_get &);
+ void operator= (const TAO_ServerRequestInfo_IR_HomeDef_managed_component_get &);
+
+private:
+ POA_IR::HomeDef *_tao_impl;
+ IR::ComponentDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_IR_HomeDef_managed_component_get::TAO_ServerRequestInfo_IR_HomeDef_managed_component_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_IR::HomeDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_IR_HomeDef_managed_component_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_IR_HomeDef_managed_component_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_IR_HomeDef_managed_component_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_IR_HomeDef_managed_component_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_IR_HomeDef_managed_component_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_IR_HomeDef_managed_component_get::result (IR::ComponentDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_IR_HomeDef_primary_key_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_IR_HomeDef_primary_key_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_IR::HomeDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (IR::PrimaryKeyDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_IR_HomeDef_primary_key_get (const TAO_ServerRequestInfo_IR_HomeDef_primary_key_get &);
+ void operator= (const TAO_ServerRequestInfo_IR_HomeDef_primary_key_get &);
+
+private:
+ POA_IR::HomeDef *_tao_impl;
+ IR::PrimaryKeyDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_IR_HomeDef_primary_key_get::TAO_ServerRequestInfo_IR_HomeDef_primary_key_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_IR::HomeDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_IR_HomeDef_primary_key_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_IR_HomeDef_primary_key_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_IR_HomeDef_primary_key_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_IR_HomeDef_primary_key_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_IR_HomeDef_primary_key_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_IR_HomeDef_primary_key_get::result (IR::PrimaryKeyDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_IR_HomeDef_factories_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_IR_HomeDef_factories_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_IR::HomeDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (IR::FactoryDefSeq * result);
+
+private:
+ TAO_ServerRequestInfo_IR_HomeDef_factories_get (const TAO_ServerRequestInfo_IR_HomeDef_factories_get &);
+ void operator= (const TAO_ServerRequestInfo_IR_HomeDef_factories_get &);
+
+private:
+ POA_IR::HomeDef *_tao_impl;
+ IR::FactoryDefSeq * _result;
+};
+
+TAO_ServerRequestInfo_IR_HomeDef_factories_get::TAO_ServerRequestInfo_IR_HomeDef_factories_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_IR::HomeDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_IR_HomeDef_factories_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_IR_HomeDef_factories_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_IR_HomeDef_factories_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_IR_HomeDef_factories_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_IR_HomeDef_factories_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_IR_HomeDef_factories_get::result (IR::FactoryDefSeq * result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_IR_HomeDef_finders_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_IR_HomeDef_finders_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_IR::HomeDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (IR::FinderDefSeq * result);
+
+private:
+ TAO_ServerRequestInfo_IR_HomeDef_finders_get (const TAO_ServerRequestInfo_IR_HomeDef_finders_get &);
+ void operator= (const TAO_ServerRequestInfo_IR_HomeDef_finders_get &);
+
+private:
+ POA_IR::HomeDef *_tao_impl;
+ IR::FinderDefSeq * _result;
+};
+
+TAO_ServerRequestInfo_IR_HomeDef_finders_get::TAO_ServerRequestInfo_IR_HomeDef_finders_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_IR::HomeDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_IR_HomeDef_finders_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_IR_HomeDef_finders_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_IR_HomeDef_finders_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_IR_HomeDef_finders_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_IR_HomeDef_finders_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_IR_HomeDef_finders_get::result (IR::FinderDefSeq * result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_IR_HomeDef_is_basic_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_IR_HomeDef_is_basic_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_IR::HomeDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA::Boolean result);
+
+private:
+ TAO_ServerRequestInfo_IR_HomeDef_is_basic_get (const TAO_ServerRequestInfo_IR_HomeDef_is_basic_get &);
+ void operator= (const TAO_ServerRequestInfo_IR_HomeDef_is_basic_get &);
+
+private:
+ POA_IR::HomeDef *_tao_impl;
+ CORBA::Boolean _result;
+};
+
+TAO_ServerRequestInfo_IR_HomeDef_is_basic_get::TAO_ServerRequestInfo_IR_HomeDef_is_basic_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_IR::HomeDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_IR_HomeDef_is_basic_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_IR_HomeDef_is_basic_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_IR_HomeDef_is_basic_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= CORBA::Any::from_boolean (this->_result);
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_IR_HomeDef_is_basic_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_IR_HomeDef_is_basic_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_IR_HomeDef_is_basic_get::result (CORBA::Boolean result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_IR_HomeDef_create_primary_key : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_IR_HomeDef_create_primary_key (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_IR::HomeDef *tao_impl
+ ,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_ValueDef_ptr primary_key
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (IR::PrimaryKeyDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_IR_HomeDef_create_primary_key (const TAO_ServerRequestInfo_IR_HomeDef_create_primary_key &);
+ void operator= (const TAO_ServerRequestInfo_IR_HomeDef_create_primary_key &);
+
+private:
+ POA_IR::HomeDef *_tao_impl;
+ const char * id_;
+ const char * name_;
+ const char * version_;
+ CORBA_ValueDef_ptr primary_key_;
+ IR::PrimaryKeyDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_IR_HomeDef_create_primary_key::TAO_ServerRequestInfo_IR_HomeDef_create_primary_key (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_IR::HomeDef *tao_impl,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_ValueDef_ptr primary_key
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ id_ (id),
+ name_ (name),
+ version_ (version),
+ primary_key_ (primary_key)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_IR_HomeDef_create_primary_key::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (4);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= name_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= version_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->primary_key_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_IR_HomeDef_create_primary_key::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_IR_HomeDef_create_primary_key::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_IR_HomeDef_create_primary_key::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_IR_HomeDef_create_primary_key::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_IR_HomeDef_create_primary_key::result (IR::PrimaryKeyDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_IR_HomeDef_create_factory : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_IR_HomeDef_create_factory (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_IR::HomeDef *tao_impl
+ ,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (IR::FactoryDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_IR_HomeDef_create_factory (const TAO_ServerRequestInfo_IR_HomeDef_create_factory &);
+ void operator= (const TAO_ServerRequestInfo_IR_HomeDef_create_factory &);
+
+private:
+ POA_IR::HomeDef *_tao_impl;
+ const char * id_;
+ const char * name_;
+ const char * version_;
+ const CORBA_ParDescriptionSeq & params_;
+ const CORBA_ExceptionDefSeq & exceptions_;
+ IR::FactoryDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_IR_HomeDef_create_factory::TAO_ServerRequestInfo_IR_HomeDef_create_factory (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_IR::HomeDef *tao_impl,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ id_ (id),
+ name_ (name),
+ version_ (version),
+ params_ (params),
+ exceptions_ (exceptions)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_IR_HomeDef_create_factory::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (5);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= name_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= version_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->params_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->exceptions_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_IR_HomeDef_create_factory::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_IR_HomeDef_create_factory::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_IR_HomeDef_create_factory::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_IR_HomeDef_create_factory::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_IR_HomeDef_create_factory::result (IR::FactoryDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_IR_HomeDef_create_finder : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_IR_HomeDef_create_finder (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_IR::HomeDef *tao_impl
+ ,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (IR::FinderDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_IR_HomeDef_create_finder (const TAO_ServerRequestInfo_IR_HomeDef_create_finder &);
+ void operator= (const TAO_ServerRequestInfo_IR_HomeDef_create_finder &);
+
+private:
+ POA_IR::HomeDef *_tao_impl;
+ const char * id_;
+ const char * name_;
+ const char * version_;
+ const CORBA_ParDescriptionSeq & params_;
+ const CORBA_ExceptionDefSeq & exceptions_;
+ IR::FinderDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_IR_HomeDef_create_finder::TAO_ServerRequestInfo_IR_HomeDef_create_finder (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_IR::HomeDef *tao_impl,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ id_ (id),
+ name_ (name),
+ version_ (version),
+ params_ (params),
+ exceptions_ (exceptions)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_IR_HomeDef_create_finder::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (5);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= name_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= version_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->params_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->exceptions_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_IR_HomeDef_create_finder::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_IR_HomeDef_create_finder::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_IR_HomeDef_create_finder::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_IR_HomeDef_create_finder::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_IR_HomeDef_create_finder::result (IR::FinderDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+POA_IR::_TAO_HomeDef_Strategized_Proxy_Broker *POA_IR::_TAO_HomeDef_Strategized_Proxy_Broker::the_TAO_HomeDef_Strategized_Proxy_Broker (void)
+{
+ static POA_IR::_TAO_HomeDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+POA_IR::_TAO_HomeDef_Strategized_Proxy_Broker::_TAO_HomeDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+POA_IR::_TAO_HomeDef_Strategized_Proxy_Broker::~_TAO_HomeDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+IR::_TAO_HomeDef_Proxy_Impl&
+POA_IR::_TAO_HomeDef_Strategized_Proxy_Broker::select_proxy (
+ ::IR::HomeDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+POA_IR::_TAO_HomeDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ POA_IR::_TAO_HomeDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::IR::_TAO_HomeDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+IR::_TAO_HomeDef_Proxy_Broker *
+IR__TAO_HomeDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::POA_IR::_TAO_HomeDef_Strategized_Proxy_Broker::the_TAO_HomeDef_Strategized_Proxy_Broker();
+}
+
+int
+IR__TAO_HomeDef_Proxy_Broker_Factory_Initializer (long)
+{
+ IR__TAO_HomeDef_Proxy_Broker_Factory_function_pointer =
+ IR__TAO_HomeDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int IR__TAO_HomeDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ IR__TAO_HomeDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, IR__TAO_HomeDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+POA_IR::_TAO_HomeDef_ThruPOA_Proxy_Impl::_TAO_HomeDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+IR::HomeDef_ptr POA_IR::_TAO_HomeDef_ThruPOA_Proxy_Impl::base_home (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ IR::HomeDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "base_home",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_IR::HomeDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/IR/HomeDef:1.0"
+ )
+ )->base_home (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+IR::ComponentDef_ptr POA_IR::_TAO_HomeDef_ThruPOA_Proxy_Impl::managed_component (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ IR::ComponentDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "managed_component",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_IR::HomeDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/IR/HomeDef:1.0"
+ )
+ )->managed_component (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+IR::PrimaryKeyDef_ptr POA_IR::_TAO_HomeDef_ThruPOA_Proxy_Impl::primary_key (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ IR::PrimaryKeyDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "primary_key",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_IR::HomeDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/IR/HomeDef:1.0"
+ )
+ )->primary_key (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+IR::FactoryDefSeq * POA_IR::_TAO_HomeDef_ThruPOA_Proxy_Impl::factories (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ IR::FactoryDefSeq_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "factories",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_IR::HomeDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/IR/HomeDef:1.0"
+ )
+ )->factories (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+IR::FinderDefSeq * POA_IR::_TAO_HomeDef_ThruPOA_Proxy_Impl::finders (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ IR::FinderDefSeq_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "finders",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_IR::HomeDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/IR/HomeDef:1.0"
+ )
+ )->finders (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+CORBA::Boolean POA_IR::_TAO_HomeDef_ThruPOA_Proxy_Impl::is_basic (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::Boolean _tao_retval = 0;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "is_basic",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (_tao_retval);
+ return ACE_reinterpret_cast (
+ POA_IR::HomeDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/IR/HomeDef:1.0"
+ )
+ )->is_basic (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+IR::PrimaryKeyDef_ptr POA_IR::_TAO_HomeDef_ThruPOA_Proxy_Impl::create_primary_key (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_ValueDef_ptr primary_key
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ IR::PrimaryKeyDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "create_primary_key",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_IR::HomeDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/IR/HomeDef:1.0"
+ )
+ )->create_primary_key (
+ id,
+ name,
+ version,
+ primary_key
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+IR::FactoryDef_ptr POA_IR::_TAO_HomeDef_ThruPOA_Proxy_Impl::create_factory (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ IR::FactoryDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "create_factory",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_IR::HomeDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/IR/HomeDef:1.0"
+ )
+ )->create_factory (
+ id,
+ name,
+ version,
+ params,
+ exceptions
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+IR::FinderDef_ptr POA_IR::_TAO_HomeDef_ThruPOA_Proxy_Impl::create_finder (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ IR::FinderDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "create_finder",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_IR::HomeDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/IR/HomeDef:1.0"
+ )
+ )->create_finder (
+ id,
+ name,
+ version,
+ params,
+ exceptions
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_IR::HomeDef::HomeDef (void)
+{
+ this->optable_ = &tao_IR_HomeDef_optable;
+}
+
+// copy ctor
+POA_IR::HomeDef::HomeDef (const HomeDef& rhs)
+ : POA_CORBA_InterfaceDef (rhs),
+ POA_CORBA_Container (rhs),
+ POA_CORBA_Contained (rhs),
+ POA_CORBA_IDLType (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_IR::HomeDef::~HomeDef (void)
+{
+}
+
+void POA_IR::HomeDef::_get_base_home_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::HomeDef *_tao_impl =
+ ACE_static_cast (POA_IR::HomeDef *, _tao_object_reference);
+
+ IR::HomeDef_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_IR_HomeDef_base_home_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->base_home (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ IR::HomeDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_IR::HomeDef::_get_managed_component_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::HomeDef *_tao_impl =
+ ACE_static_cast (POA_IR::HomeDef *, _tao_object_reference);
+
+ IR::ComponentDef_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_IR_HomeDef_managed_component_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->managed_component (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ IR::ComponentDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_IR::HomeDef::_get_primary_key_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::HomeDef *_tao_impl =
+ ACE_static_cast (POA_IR::HomeDef *, _tao_object_reference);
+
+ IR::PrimaryKeyDef_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_IR_HomeDef_primary_key_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->primary_key (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ IR::PrimaryKeyDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_IR::HomeDef::_get_factories_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::HomeDef *_tao_impl =
+ ACE_static_cast (POA_IR::HomeDef *, _tao_object_reference);
+
+ IR::FactoryDefSeq_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_IR_HomeDef_factories_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->factories (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ IR::FactoryDefSeq * _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_IR::HomeDef::_get_finders_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::HomeDef *_tao_impl =
+ ACE_static_cast (POA_IR::HomeDef *, _tao_object_reference);
+
+ IR::FinderDefSeq_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_IR_HomeDef_finders_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->finders (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ IR::FinderDefSeq * _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_IR::HomeDef::_get_is_basic_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::HomeDef *_tao_impl =
+ ACE_static_cast (POA_IR::HomeDef *, _tao_object_reference);
+
+ CORBA::Boolean _tao_retval = 0;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_IR_HomeDef_is_basic_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->is_basic (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA::Boolean _tao_retval_info = _tao_retval;
+ ri.result (_tao_retval_info);
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << CORBA::Any::from_boolean (_tao_retval))
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_IR::HomeDef::create_primary_key_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_IR::HomeDef *_tao_impl =
+ ACE_static_cast (POA_IR::HomeDef *, _tao_object_reference);
+
+ IR::PrimaryKeyDef_var _tao_retval;
+ CORBA::String_var id;
+ CORBA::String_var name;
+ CORBA::String_var version;
+ CORBA_ValueDef_var primary_key;
+ if (!(
+ (_tao_in >> id.out ()) &&
+ (_tao_in >> name.out ()) &&
+ (_tao_in >> version.out ()) &&
+ (_tao_in >> primary_key.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_IR_HomeDef_create_primary_key ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ id.in (),
+ name.in (),
+ version.in (),
+ primary_key.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->create_primary_key (
+ id.in (),
+ name.in (),
+ version.in (),
+ primary_key.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ IR::PrimaryKeyDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_IR::HomeDef::create_factory_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_IR::HomeDef *_tao_impl =
+ ACE_static_cast (POA_IR::HomeDef *, _tao_object_reference);
+
+ IR::FactoryDef_var _tao_retval;
+ CORBA::String_var id;
+ CORBA::String_var name;
+ CORBA::String_var version;
+ CORBA_ParDescriptionSeq params;
+ CORBA_ExceptionDefSeq exceptions;
+ if (!(
+ (_tao_in >> id.out ()) &&
+ (_tao_in >> name.out ()) &&
+ (_tao_in >> version.out ()) &&
+ (_tao_in >> params) &&
+ (_tao_in >> exceptions)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_IR_HomeDef_create_factory ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ id.in (),
+ name.in (),
+ version.in (),
+ params,
+ exceptions
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->create_factory (
+ id.in (),
+ name.in (),
+ version.in (),
+ params,
+ exceptions
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ IR::FactoryDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_IR::HomeDef::create_finder_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_IR::HomeDef *_tao_impl =
+ ACE_static_cast (POA_IR::HomeDef *, _tao_object_reference);
+
+ IR::FinderDef_var _tao_retval;
+ CORBA::String_var id;
+ CORBA::String_var name;
+ CORBA::String_var version;
+ CORBA_ParDescriptionSeq params;
+ CORBA_ExceptionDefSeq exceptions;
+ if (!(
+ (_tao_in >> id.out ()) &&
+ (_tao_in >> name.out ()) &&
+ (_tao_in >> version.out ()) &&
+ (_tao_in >> params) &&
+ (_tao_in >> exceptions)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_IR_HomeDef_create_finder ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ id.in (),
+ name.in (),
+ version.in (),
+ params,
+ exceptions
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->create_finder (
+ id.in (),
+ name.in (),
+ version.in (),
+ params,
+ exceptions
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ IR::FinderDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_IR::HomeDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_IR::HomeDef *_tao_impl = (POA_IR::HomeDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_IR::HomeDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::HomeDef *_tao_impl = (POA_IR::HomeDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_IR::HomeDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::HomeDef *_tao_impl = (POA_IR::HomeDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_IR::HomeDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/IR/HomeDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/InterfaceDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Container:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Contained:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IDLType:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_IR::HomeDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/IR/HomeDef:1.0") == 0)
+ return ACE_static_cast (POA_IR::HomeDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/InterfaceDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_InterfaceDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Container:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Container_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Contained:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Contained_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IDLType:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IDLType_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_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_IR::HomeDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_IR::HomeDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/IR/HomeDef:1.0";
+}
+
+IR::HomeDef*
+POA_IR::HomeDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::IR::HomeDef::_unchecked_narrow (obj.in ());
+}
+
+
+
+#endif /* ifndef */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IFR_ComponentsS.h b/TAO/orbsvcs/orbsvcs/IFRService/IFR_ComponentsS.h
new file mode 100644
index 00000000000..cd49eb534e2
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_ComponentsS.h
@@ -0,0 +1,4190 @@
+// -*- C++ -*-
+//
+// $Id$
+
+// **** Code generated by the The ACE ORB (TAO) IDL Compiler ****
+// TAO and the TAO IDL Compiler have been developed by:
+// Center for Distributed Object Computing
+// Washington University
+// St. Louis, MO
+// USA
+// http://www.cs.wustl.edu/~schmidt/doc-center.html
+// and
+// Distributed Object Computing Laboratory
+// University of California at Irvine
+// Irvine, CA
+// USA
+// http://doc.ece.uci.edu/
+//
+// Information about TAO is available at:
+// http://www.cs.wustl.edu/~schmidt/TAO.html
+
+#ifndef _TAO_IDL__________ORBSVCS_IFR_SERVICE_ORIG_IFR_COMPONENTSS_H_
+#define _TAO_IDL__________ORBSVCS_IFR_SERVICE_ORIG_IFR_COMPONENTSS_H_
+
+#include "ace/pre.h"
+#include "IFR_ExtendedS.h"
+#include "tao/IFR_Client/IFR_ComponentsC.h"
+
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+
+#include "tao/PortableServer/PortableServer.h"
+#include "tao/PortableServer/Servant_Base.h"
+#include "tao/PortableServer/Collocated_Object.h"
+#include "tao/PortableServer/ThruPOA_Object_Proxy_Impl.h"
+#include "tao/PortableServer/Direct_Object_Proxy_Impl.h"
+#if defined(_MSC_VER)
+#if (_MSC_VER >= 1200)
+#pragma warning(push)
+#endif /* _MSC_VER >= 1200 */
+#pragma warning(disable:4250)
+#endif /* _MSC_VER */
+
+#if defined (__BORLANDC__)
+#pragma option push -w-rvl -w-rch -w-ccc -w-inl
+#endif /* __BORLANDC__ */
+
+TAO_NAMESPACE POA_IR
+{
+ class ComponentRepository;
+ typedef ComponentRepository *ComponentRepository_ptr;
+ // Forward Classes Declaration
+ class _TAO_ComponentRepository_ThruPOA_Proxy_Impl;
+ class _TAO_ComponentRepository_Strategized_Proxy_Broker;
+
+ class ComponentRepository : public virtual POA_CORBA_Repository
+ {
+ protected:
+ ComponentRepository (void);
+
+ public:
+ ComponentRepository (const ComponentRepository& rhs);
+ virtual ~ComponentRepository (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::IR::ComponentRepository *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ virtual IR::ComponentDef_ptr create_component (
+ const char * id,
+ const char * name,
+ const char * version,
+ IR::ComponentDef_ptr base_component,
+ const CORBA_InterfaceDefSeq & supports_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void create_component_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual IR::HomeDef_ptr create_home (
+ const char * id,
+ const char * name,
+ const char * version,
+ IR::HomeDef_ptr base_home,
+ IR::ComponentDef_ptr managed_component,
+ CORBA_ValueDef_ptr primary_key
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void create_home_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void lookup_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void get_canonical_typecode_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void get_primitive_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_string_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_wstring_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_sequence_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_array_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_fixed_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void lookup_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void lookup_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_module_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_constant_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_struct_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_union_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_enum_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_alias_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_value_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_value_box_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_exception_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_native_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_abstract_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_local_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+ };
+
+
+ ///////////////////////////////////////////////////////////////////////
+ // Strategized Proxy Broker Declaration
+ //
+
+ class _TAO_ComponentRepository_Strategized_Proxy_Broker : public virtual ::IR::_TAO_ComponentRepository_Proxy_Broker
+ {
+ public:
+ _TAO_ComponentRepository_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_ComponentRepository_Strategized_Proxy_Broker (void);
+
+ virtual ::IR::_TAO_ComponentRepository_Proxy_Impl &select_proxy (
+ ::IR::ComponentRepository *object
+ ACE_ENV_ARG_DECL
+ );
+
+ private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+ private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::IR::_TAO_ComponentRepository_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+ public:
+ static _TAO_ComponentRepository_Strategized_Proxy_Broker *the_TAO_ComponentRepository_Strategized_Proxy_Broker (void);
+ };
+
+
+ //
+ // End Strategized Proxy Broker Declaration
+ ///////////////////////////////////////////////////////////////////////
+
+
+ ///////////////////////////////////////////////////////////////////////
+ // ThruPOA Impl. Declaration
+ //
+
+ class _TAO_ComponentRepository_ThruPOA_Proxy_Impl :
+ public virtual ::IR::_TAO_ComponentRepository_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_Repository_ThruPOA_Proxy_Impl
+
+ {
+ public:
+ _TAO_ComponentRepository_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_ComponentRepository_ThruPOA_Proxy_Impl (void) { }
+
+ virtual IR::ComponentDef_ptr create_component (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ IR::ComponentDef_ptr base_component,
+ const CORBA_InterfaceDefSeq & supports_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual IR::HomeDef_ptr create_home (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ IR::HomeDef_ptr base_home,
+ IR::ComponentDef_ptr managed_component,
+ CORBA_ValueDef_ptr primary_key
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+
+ };
+
+ //
+ // ThruPOA Proxy Impl. Declaration
+ ///////////////////////////////////////////////////////////////////////
+
+
+ class ProvidesDef;
+ typedef ProvidesDef *ProvidesDef_ptr;
+ // Forward Classes Declaration
+ class _TAO_ProvidesDef_ThruPOA_Proxy_Impl;
+ class _TAO_ProvidesDef_Strategized_Proxy_Broker;
+
+ class ProvidesDef : public virtual POA_CORBA_Contained
+ {
+ protected:
+ ProvidesDef (void);
+
+ public:
+ ProvidesDef (const ProvidesDef& rhs);
+ virtual ~ProvidesDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::IR::ProvidesDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ virtual CORBA_InterfaceDef_ptr interface_type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_interface_type_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+ };
+
+
+ ///////////////////////////////////////////////////////////////////////
+ // Strategized Proxy Broker Declaration
+ //
+
+ class _TAO_ProvidesDef_Strategized_Proxy_Broker : public virtual ::IR::_TAO_ProvidesDef_Proxy_Broker
+ {
+ public:
+ _TAO_ProvidesDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_ProvidesDef_Strategized_Proxy_Broker (void);
+
+ virtual ::IR::_TAO_ProvidesDef_Proxy_Impl &select_proxy (
+ ::IR::ProvidesDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+ private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::IR::_TAO_ProvidesDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+ public:
+ static _TAO_ProvidesDef_Strategized_Proxy_Broker *the_TAO_ProvidesDef_Strategized_Proxy_Broker (void);
+ };
+
+
+ //
+ // End Strategized Proxy Broker Declaration
+ ///////////////////////////////////////////////////////////////////////
+
+
+ ///////////////////////////////////////////////////////////////////////
+ // ThruPOA Impl. Declaration
+ //
+
+ class _TAO_ProvidesDef_ThruPOA_Proxy_Impl :
+ public virtual ::IR::_TAO_ProvidesDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_Contained_ThruPOA_Proxy_Impl
+
+ {
+ public:
+ _TAO_ProvidesDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_ProvidesDef_ThruPOA_Proxy_Impl (void) { }
+
+ virtual CORBA_InterfaceDef_ptr interface_type (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+
+ };
+
+ //
+ // ThruPOA Proxy Impl. Declaration
+ ///////////////////////////////////////////////////////////////////////
+
+
+ class UsesDef;
+ typedef UsesDef *UsesDef_ptr;
+ // Forward Classes Declaration
+ class _TAO_UsesDef_ThruPOA_Proxy_Impl;
+ class _TAO_UsesDef_Strategized_Proxy_Broker;
+
+ class UsesDef : public virtual POA_CORBA_Contained
+ {
+ protected:
+ UsesDef (void);
+
+ public:
+ UsesDef (const UsesDef& rhs);
+ virtual ~UsesDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::IR::UsesDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ virtual CORBA_InterfaceDef_ptr interface_type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_interface_type_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA::Boolean is_multiple (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_is_multiple_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+ };
+
+
+ ///////////////////////////////////////////////////////////////////////
+ // Strategized Proxy Broker Declaration
+ //
+
+ class _TAO_UsesDef_Strategized_Proxy_Broker : public virtual ::IR::_TAO_UsesDef_Proxy_Broker
+ {
+ public:
+ _TAO_UsesDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_UsesDef_Strategized_Proxy_Broker (void);
+
+ virtual ::IR::_TAO_UsesDef_Proxy_Impl &select_proxy (
+ ::IR::UsesDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+ private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::IR::_TAO_UsesDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+ public:
+ static _TAO_UsesDef_Strategized_Proxy_Broker *the_TAO_UsesDef_Strategized_Proxy_Broker (void);
+ };
+
+
+ //
+ // End Strategized Proxy Broker Declaration
+ ///////////////////////////////////////////////////////////////////////
+
+
+ ///////////////////////////////////////////////////////////////////////
+ // ThruPOA Impl. Declaration
+ //
+
+ class _TAO_UsesDef_ThruPOA_Proxy_Impl :
+ public virtual ::IR::_TAO_UsesDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_Contained_ThruPOA_Proxy_Impl
+
+ {
+ public:
+ _TAO_UsesDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_UsesDef_ThruPOA_Proxy_Impl (void) { }
+
+ virtual CORBA_InterfaceDef_ptr interface_type (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA::Boolean is_multiple (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+
+ };
+
+ //
+ // ThruPOA Proxy Impl. Declaration
+ ///////////////////////////////////////////////////////////////////////
+
+
+ class EventDef;
+ typedef EventDef *EventDef_ptr;
+ // Forward Classes Declaration
+ class _TAO_EventDef_ThruPOA_Proxy_Impl;
+ class _TAO_EventDef_Strategized_Proxy_Broker;
+
+ class EventDef : public virtual POA_CORBA_Contained
+ {
+ protected:
+ EventDef (void);
+
+ public:
+ EventDef (const EventDef& rhs);
+ virtual ~EventDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::IR::EventDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ virtual CORBA::Boolean is_a (
+ const char * event_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void is_a_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_ValueDef_ptr event (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_event_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+ };
+
+
+ ///////////////////////////////////////////////////////////////////////
+ // Strategized Proxy Broker Declaration
+ //
+
+ class _TAO_EventDef_Strategized_Proxy_Broker : public virtual ::IR::_TAO_EventDef_Proxy_Broker
+ {
+ public:
+ _TAO_EventDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_EventDef_Strategized_Proxy_Broker (void);
+
+ virtual ::IR::_TAO_EventDef_Proxy_Impl &select_proxy (
+ ::IR::EventDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+ private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::IR::_TAO_EventDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+ public:
+ static _TAO_EventDef_Strategized_Proxy_Broker *the_TAO_EventDef_Strategized_Proxy_Broker (void);
+ };
+
+
+ //
+ // End Strategized Proxy Broker Declaration
+ ///////////////////////////////////////////////////////////////////////
+
+
+ ///////////////////////////////////////////////////////////////////////
+ // ThruPOA Impl. Declaration
+ //
+
+ class _TAO_EventDef_ThruPOA_Proxy_Impl :
+ public virtual ::IR::_TAO_EventDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_Contained_ThruPOA_Proxy_Impl
+
+ {
+ public:
+ _TAO_EventDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_EventDef_ThruPOA_Proxy_Impl (void) { }
+
+ virtual CORBA::Boolean is_a (
+ CORBA_Object *_collocated_tao_target_,
+ const char * event_id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_ValueDef_ptr event (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+
+ };
+
+ //
+ // ThruPOA Proxy Impl. Declaration
+ ///////////////////////////////////////////////////////////////////////
+
+
+ class EmitsDef;
+ typedef EmitsDef *EmitsDef_ptr;
+ // Forward Classes Declaration
+ class _TAO_EmitsDef_ThruPOA_Proxy_Impl;
+ class _TAO_EmitsDef_Strategized_Proxy_Broker;
+
+ class EmitsDef : public virtual EventDef
+ {
+ protected:
+ EmitsDef (void);
+
+ public:
+ EmitsDef (const EmitsDef& rhs);
+ virtual ~EmitsDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::IR::EmitsDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ static void is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_event_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+ };
+
+
+ ///////////////////////////////////////////////////////////////////////
+ // Strategized Proxy Broker Declaration
+ //
+
+ class _TAO_EmitsDef_Strategized_Proxy_Broker : public virtual ::IR::_TAO_EmitsDef_Proxy_Broker
+ {
+ public:
+ _TAO_EmitsDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_EmitsDef_Strategized_Proxy_Broker (void);
+
+ virtual ::IR::_TAO_EmitsDef_Proxy_Impl &select_proxy (
+ ::IR::EmitsDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+ private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::IR::_TAO_EmitsDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+ public:
+ static _TAO_EmitsDef_Strategized_Proxy_Broker *the_TAO_EmitsDef_Strategized_Proxy_Broker (void);
+ };
+
+
+ //
+ // End Strategized Proxy Broker Declaration
+ ///////////////////////////////////////////////////////////////////////
+
+
+ ///////////////////////////////////////////////////////////////////////
+ // ThruPOA Impl. Declaration
+ //
+
+ class _TAO_EmitsDef_ThruPOA_Proxy_Impl :
+ public virtual ::IR::_TAO_EmitsDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::POA_IR::_TAO_EventDef_ThruPOA_Proxy_Impl
+
+ {
+ public:
+ _TAO_EmitsDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_EmitsDef_ThruPOA_Proxy_Impl (void) { }
+
+ };
+
+
+ //
+ // ThruPOA Proxy Impl. Declaration
+ ///////////////////////////////////////////////////////////////////////
+
+
+ class PublishesDef;
+ typedef PublishesDef *PublishesDef_ptr;
+ // Forward Classes Declaration
+ class _TAO_PublishesDef_ThruPOA_Proxy_Impl;
+ class _TAO_PublishesDef_Strategized_Proxy_Broker;
+
+ class PublishesDef : public virtual EventDef
+ {
+ protected:
+ PublishesDef (void);
+
+ public:
+ PublishesDef (const PublishesDef& rhs);
+ virtual ~PublishesDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::IR::PublishesDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ static void is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_event_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+ };
+
+
+ ///////////////////////////////////////////////////////////////////////
+ // Strategized Proxy Broker Declaration
+ //
+
+ class _TAO_PublishesDef_Strategized_Proxy_Broker : public virtual ::IR::_TAO_PublishesDef_Proxy_Broker
+ {
+ public:
+ _TAO_PublishesDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_PublishesDef_Strategized_Proxy_Broker (void);
+
+ virtual ::IR::_TAO_PublishesDef_Proxy_Impl &select_proxy (
+ ::IR::PublishesDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+ private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::IR::_TAO_PublishesDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+ public:
+ static _TAO_PublishesDef_Strategized_Proxy_Broker *the_TAO_PublishesDef_Strategized_Proxy_Broker (void);
+ };
+
+
+ //
+ // End Strategized Proxy Broker Declaration
+ ///////////////////////////////////////////////////////////////////////
+
+
+ ///////////////////////////////////////////////////////////////////////
+ // ThruPOA Impl. Declaration
+ //
+
+ class _TAO_PublishesDef_ThruPOA_Proxy_Impl :
+ public virtual ::IR::_TAO_PublishesDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::POA_IR::_TAO_EventDef_ThruPOA_Proxy_Impl
+
+ {
+ public:
+ _TAO_PublishesDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_PublishesDef_ThruPOA_Proxy_Impl (void) { }
+
+ };
+
+
+ //
+ // ThruPOA Proxy Impl. Declaration
+ ///////////////////////////////////////////////////////////////////////
+
+
+ class ConsumesDef;
+ typedef ConsumesDef *ConsumesDef_ptr;
+ // Forward Classes Declaration
+ class _TAO_ConsumesDef_ThruPOA_Proxy_Impl;
+ class _TAO_ConsumesDef_Strategized_Proxy_Broker;
+
+ class ConsumesDef : public virtual EventDef
+ {
+ protected:
+ ConsumesDef (void);
+
+ public:
+ ConsumesDef (const ConsumesDef& rhs);
+ virtual ~ConsumesDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::IR::ConsumesDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ static void is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_event_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+ };
+
+
+ ///////////////////////////////////////////////////////////////////////
+ // Strategized Proxy Broker Declaration
+ //
+
+ class _TAO_ConsumesDef_Strategized_Proxy_Broker : public virtual ::IR::_TAO_ConsumesDef_Proxy_Broker
+ {
+ public:
+ _TAO_ConsumesDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_ConsumesDef_Strategized_Proxy_Broker (void);
+
+ virtual ::IR::_TAO_ConsumesDef_Proxy_Impl &select_proxy (
+ ::IR::ConsumesDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+ private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::IR::_TAO_ConsumesDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+ public:
+ static _TAO_ConsumesDef_Strategized_Proxy_Broker *the_TAO_ConsumesDef_Strategized_Proxy_Broker (void);
+ };
+
+
+ //
+ // End Strategized Proxy Broker Declaration
+ ///////////////////////////////////////////////////////////////////////
+
+
+ ///////////////////////////////////////////////////////////////////////
+ // ThruPOA Impl. Declaration
+ //
+
+ class _TAO_ConsumesDef_ThruPOA_Proxy_Impl :
+ public virtual ::IR::_TAO_ConsumesDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::POA_IR::_TAO_EventDef_ThruPOA_Proxy_Impl
+
+ {
+ public:
+ _TAO_ConsumesDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_ConsumesDef_ThruPOA_Proxy_Impl (void) { }
+
+ };
+
+
+ //
+ // ThruPOA Proxy Impl. Declaration
+ ///////////////////////////////////////////////////////////////////////
+
+
+ class ComponentDef;
+ typedef ComponentDef *ComponentDef_ptr;
+ // Forward Classes Declaration
+ class _TAO_ComponentDef_ThruPOA_Proxy_Impl;
+ class _TAO_ComponentDef_Strategized_Proxy_Broker;
+
+ class ComponentDef : public virtual POA_CORBA_InterfaceDef
+ {
+ protected:
+ ComponentDef (void);
+
+ public:
+ ComponentDef (const ComponentDef& rhs);
+ virtual ~ComponentDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::IR::ComponentDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ virtual CORBA_InterfaceDefSeq * supported_interfaces (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_supported_interfaces_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void supported_interfaces (
+ const CORBA_InterfaceDefSeq & supported_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_supported_interfaces_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual IR::ComponentDef_ptr base_component (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_base_component_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual IR::ProvidesDefSeq * provides_interfaces (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_provides_interfaces_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual IR::UsesDefSeq * uses_interfaces (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_uses_interfaces_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual IR::EmitsDefSeq * emits_events (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_emits_events_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual IR::PublishesDefSeq * publishes_events (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_publishes_events_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual IR::ConsumesDefSeq * consumes_events (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_consumes_events_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA::Boolean is_basic (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_is_basic_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual IR::ProvidesDef_ptr create_provides (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_InterfaceDef_ptr interface_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void create_provides_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual IR::UsesDef_ptr create_uses (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_InterfaceDef_ptr interface_type,
+ CORBA::Boolean is_multiple
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void create_uses_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual IR::EmitsDef_ptr create_emits (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_ValueDef_ptr value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void create_emits_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual IR::PublishesDef_ptr create_publishes (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_ValueDef_ptr value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void create_publishes_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual IR::ConsumesDef_ptr create_consumes (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_ValueDef_ptr value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void create_consumes_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _get_base_interfaces_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_base_interfaces_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_attribute_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_operation_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void lookup_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void lookup_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_module_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_constant_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_struct_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_union_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_enum_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_alias_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_value_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_value_box_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_exception_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_native_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_abstract_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_local_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+ };
+
+
+ ///////////////////////////////////////////////////////////////////////
+ // Strategized Proxy Broker Declaration
+ //
+
+ class _TAO_ComponentDef_Strategized_Proxy_Broker : public virtual ::IR::_TAO_ComponentDef_Proxy_Broker
+ {
+ public:
+ _TAO_ComponentDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_ComponentDef_Strategized_Proxy_Broker (void);
+
+ virtual ::IR::_TAO_ComponentDef_Proxy_Impl &select_proxy (
+ ::IR::ComponentDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+ private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::IR::_TAO_ComponentDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+ public:
+ static _TAO_ComponentDef_Strategized_Proxy_Broker *the_TAO_ComponentDef_Strategized_Proxy_Broker (void);
+ };
+
+
+ //
+ // End Strategized Proxy Broker Declaration
+ ///////////////////////////////////////////////////////////////////////
+
+
+ ///////////////////////////////////////////////////////////////////////
+ // ThruPOA Impl. Declaration
+ //
+
+ class _TAO_ComponentDef_ThruPOA_Proxy_Impl :
+ public virtual ::IR::_TAO_ComponentDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_InterfaceDef_ThruPOA_Proxy_Impl
+
+ {
+ public:
+ _TAO_ComponentDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_ComponentDef_ThruPOA_Proxy_Impl (void) { }
+
+ virtual CORBA_InterfaceDefSeq * supported_interfaces (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void supported_interfaces (
+ CORBA_Object *_collocated_tao_target_,
+ const CORBA_InterfaceDefSeq & supported_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual IR::ComponentDef_ptr base_component (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual IR::ProvidesDefSeq * provides_interfaces (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual IR::UsesDefSeq * uses_interfaces (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual IR::EmitsDefSeq * emits_events (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual IR::PublishesDefSeq * publishes_events (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual IR::ConsumesDefSeq * consumes_events (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA::Boolean is_basic (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual IR::ProvidesDef_ptr create_provides (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_InterfaceDef_ptr interface_type
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual IR::UsesDef_ptr create_uses (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_InterfaceDef_ptr interface_type,
+ CORBA::Boolean is_multiple
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual IR::EmitsDef_ptr create_emits (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_ValueDef_ptr value
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual IR::PublishesDef_ptr create_publishes (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_ValueDef_ptr value
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual IR::ConsumesDef_ptr create_consumes (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_ValueDef_ptr value
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+
+ };
+
+ //
+ // ThruPOA Proxy Impl. Declaration
+ ///////////////////////////////////////////////////////////////////////
+
+
+ class PrimaryKeyDef;
+ typedef PrimaryKeyDef *PrimaryKeyDef_ptr;
+ // Forward Classes Declaration
+ class _TAO_PrimaryKeyDef_ThruPOA_Proxy_Impl;
+ class _TAO_PrimaryKeyDef_Strategized_Proxy_Broker;
+
+ class PrimaryKeyDef : public virtual POA_CORBA_Contained
+ {
+ protected:
+ PrimaryKeyDef (void);
+
+ public:
+ PrimaryKeyDef (const PrimaryKeyDef& rhs);
+ virtual ~PrimaryKeyDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::IR::PrimaryKeyDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ virtual CORBA::Boolean is_a (
+ const char * primary_key_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void is_a_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_ValueDef_ptr primary_key (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_primary_key_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+ };
+
+
+ ///////////////////////////////////////////////////////////////////////
+ // Strategized Proxy Broker Declaration
+ //
+
+ class _TAO_PrimaryKeyDef_Strategized_Proxy_Broker : public virtual ::IR::_TAO_PrimaryKeyDef_Proxy_Broker
+ {
+ public:
+ _TAO_PrimaryKeyDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_PrimaryKeyDef_Strategized_Proxy_Broker (void);
+
+ virtual ::IR::_TAO_PrimaryKeyDef_Proxy_Impl &select_proxy (
+ ::IR::PrimaryKeyDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+ private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::IR::_TAO_PrimaryKeyDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+ public:
+ static _TAO_PrimaryKeyDef_Strategized_Proxy_Broker *the_TAO_PrimaryKeyDef_Strategized_Proxy_Broker (void);
+ };
+
+
+ //
+ // End Strategized Proxy Broker Declaration
+ ///////////////////////////////////////////////////////////////////////
+
+
+ ///////////////////////////////////////////////////////////////////////
+ // ThruPOA Impl. Declaration
+ //
+
+ class _TAO_PrimaryKeyDef_ThruPOA_Proxy_Impl :
+ public virtual ::IR::_TAO_PrimaryKeyDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_Contained_ThruPOA_Proxy_Impl
+
+ {
+ public:
+ _TAO_PrimaryKeyDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_PrimaryKeyDef_ThruPOA_Proxy_Impl (void) { }
+
+ virtual CORBA::Boolean is_a (
+ CORBA_Object *_collocated_tao_target_,
+ const char * primary_key_id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_ValueDef_ptr primary_key (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+
+ };
+
+ //
+ // ThruPOA Proxy Impl. Declaration
+ ///////////////////////////////////////////////////////////////////////
+
+
+ class FactoryDef;
+ typedef FactoryDef *FactoryDef_ptr;
+ // Forward Classes Declaration
+ class _TAO_FactoryDef_ThruPOA_Proxy_Impl;
+ class _TAO_FactoryDef_Strategized_Proxy_Broker;
+
+ class FactoryDef : public virtual POA_CORBA_OperationDef
+ {
+ protected:
+ FactoryDef (void);
+
+ public:
+ FactoryDef (const FactoryDef& rhs);
+ virtual ~FactoryDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::IR::FactoryDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ static void _get_result_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_result_def_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_result_def_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_params_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_params_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_mode_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_mode_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_contexts_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_contexts_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_exceptions_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_exceptions_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+ };
+
+
+ ///////////////////////////////////////////////////////////////////////
+ // Strategized Proxy Broker Declaration
+ //
+
+ class _TAO_FactoryDef_Strategized_Proxy_Broker : public virtual ::IR::_TAO_FactoryDef_Proxy_Broker
+ {
+ public:
+ _TAO_FactoryDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_FactoryDef_Strategized_Proxy_Broker (void);
+
+ virtual ::IR::_TAO_FactoryDef_Proxy_Impl &select_proxy (
+ ::IR::FactoryDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+ private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::IR::_TAO_FactoryDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+ public:
+ static _TAO_FactoryDef_Strategized_Proxy_Broker *the_TAO_FactoryDef_Strategized_Proxy_Broker (void);
+ };
+
+
+ //
+ // End Strategized Proxy Broker Declaration
+ ///////////////////////////////////////////////////////////////////////
+
+
+ ///////////////////////////////////////////////////////////////////////
+ // ThruPOA Impl. Declaration
+ //
+
+ class _TAO_FactoryDef_ThruPOA_Proxy_Impl :
+ public virtual ::IR::_TAO_FactoryDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_OperationDef_ThruPOA_Proxy_Impl
+
+ {
+ public:
+ _TAO_FactoryDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_FactoryDef_ThruPOA_Proxy_Impl (void) { }
+
+ };
+
+
+ //
+ // ThruPOA Proxy Impl. Declaration
+ ///////////////////////////////////////////////////////////////////////
+
+
+ class FinderDef;
+ typedef FinderDef *FinderDef_ptr;
+ // Forward Classes Declaration
+ class _TAO_FinderDef_ThruPOA_Proxy_Impl;
+ class _TAO_FinderDef_Strategized_Proxy_Broker;
+
+ class FinderDef : public virtual POA_CORBA_OperationDef
+ {
+ protected:
+ FinderDef (void);
+
+ public:
+ FinderDef (const FinderDef& rhs);
+ virtual ~FinderDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::IR::FinderDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ static void _get_result_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_result_def_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_result_def_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_params_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_params_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_mode_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_mode_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_contexts_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_contexts_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_exceptions_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_exceptions_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+ };
+
+
+ ///////////////////////////////////////////////////////////////////////
+ // Strategized Proxy Broker Declaration
+ //
+
+ class _TAO_FinderDef_Strategized_Proxy_Broker : public virtual ::IR::_TAO_FinderDef_Proxy_Broker
+ {
+ public:
+ _TAO_FinderDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_FinderDef_Strategized_Proxy_Broker (void);
+
+ virtual ::IR::_TAO_FinderDef_Proxy_Impl &select_proxy (
+ ::IR::FinderDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+ private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::IR::_TAO_FinderDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+ public:
+ static _TAO_FinderDef_Strategized_Proxy_Broker *the_TAO_FinderDef_Strategized_Proxy_Broker (void);
+ };
+
+
+ //
+ // End Strategized Proxy Broker Declaration
+ ///////////////////////////////////////////////////////////////////////
+
+
+ ///////////////////////////////////////////////////////////////////////
+ // ThruPOA Impl. Declaration
+ //
+
+ class _TAO_FinderDef_ThruPOA_Proxy_Impl :
+ public virtual ::IR::_TAO_FinderDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_OperationDef_ThruPOA_Proxy_Impl
+
+ {
+ public:
+ _TAO_FinderDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_FinderDef_ThruPOA_Proxy_Impl (void) { }
+
+ };
+
+
+ //
+ // ThruPOA Proxy Impl. Declaration
+ ///////////////////////////////////////////////////////////////////////
+
+
+ class HomeDef;
+ typedef HomeDef *HomeDef_ptr;
+ // Forward Classes Declaration
+ class _TAO_HomeDef_ThruPOA_Proxy_Impl;
+ class _TAO_HomeDef_Strategized_Proxy_Broker;
+
+ class HomeDef : public virtual POA_CORBA_InterfaceDef
+ {
+ protected:
+ HomeDef (void);
+
+ public:
+ HomeDef (const HomeDef& rhs);
+ virtual ~HomeDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::IR::HomeDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ virtual IR::HomeDef_ptr base_home (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_base_home_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual IR::ComponentDef_ptr managed_component (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_managed_component_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual IR::PrimaryKeyDef_ptr primary_key (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_primary_key_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual IR::FactoryDefSeq * factories (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_factories_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual IR::FinderDefSeq * finders (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_finders_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA::Boolean is_basic (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_is_basic_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual IR::PrimaryKeyDef_ptr create_primary_key (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_ValueDef_ptr primary_key
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void create_primary_key_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual IR::FactoryDef_ptr create_factory (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void create_factory_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual IR::FinderDef_ptr create_finder (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void create_finder_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _get_base_interfaces_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_base_interfaces_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_attribute_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_operation_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void lookup_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void lookup_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_module_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_constant_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_struct_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_union_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_enum_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_alias_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_value_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_value_box_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_exception_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_native_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_abstract_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_local_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+ };
+
+
+ ///////////////////////////////////////////////////////////////////////
+ // Strategized Proxy Broker Declaration
+ //
+
+ class _TAO_HomeDef_Strategized_Proxy_Broker : public virtual ::IR::_TAO_HomeDef_Proxy_Broker
+ {
+ public:
+ _TAO_HomeDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_HomeDef_Strategized_Proxy_Broker (void);
+
+ virtual ::IR::_TAO_HomeDef_Proxy_Impl &select_proxy (
+ ::IR::HomeDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+ private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::IR::_TAO_HomeDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+ public:
+ static _TAO_HomeDef_Strategized_Proxy_Broker *the_TAO_HomeDef_Strategized_Proxy_Broker (void);
+ };
+
+
+ //
+ // End Strategized Proxy Broker Declaration
+ ///////////////////////////////////////////////////////////////////////
+
+
+ ///////////////////////////////////////////////////////////////////////
+ // ThruPOA Impl. Declaration
+ //
+
+ class _TAO_HomeDef_ThruPOA_Proxy_Impl :
+ public virtual ::IR::_TAO_HomeDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_InterfaceDef_ThruPOA_Proxy_Impl
+
+ {
+ public:
+ _TAO_HomeDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_HomeDef_ThruPOA_Proxy_Impl (void) { }
+
+ virtual IR::HomeDef_ptr base_home (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual IR::ComponentDef_ptr managed_component (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual IR::PrimaryKeyDef_ptr primary_key (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual IR::FactoryDefSeq * factories (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual IR::FinderDefSeq * finders (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA::Boolean is_basic (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual IR::PrimaryKeyDef_ptr create_primary_key (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_ValueDef_ptr primary_key
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual IR::FactoryDef_ptr create_factory (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual IR::FinderDef_ptr create_finder (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+
+ };
+
+ //
+ // ThruPOA Proxy Impl. Declaration
+ ///////////////////////////////////////////////////////////////////////
+
+
+}
+TAO_NAMESPACE_CLOSE // module IR
+
+#include "IFR_ComponentsS_T.h"
+
+#if defined (__ACE_INLINE__)
+#include "IFR_ComponentsS.i"
+#endif /* defined INLINE */
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#if defined (__BORLANDC__)
+#pragma option pop
+#endif /* __BORLANDC__ */
+
+#include "ace/post.h"
+#endif /* ifndef */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IFR_ComponentsS.i b/TAO/orbsvcs/orbsvcs/IFRService/IFR_ComponentsS.i
new file mode 100644
index 00000000000..8a5a82037d4
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_ComponentsS.i
@@ -0,0 +1,3711 @@
+// -*- C++ -*-
+//
+// $Id$
+
+// **** Code generated by the The ACE ORB (TAO) IDL Compiler ****
+// TAO and the TAO IDL Compiler have been developed by:
+// Center for Distributed Object Computing
+// Washington University
+// St. Louis, MO
+// USA
+// http://www.cs.wustl.edu/~schmidt/doc-center.html
+// and
+// Distributed Object Computing Laboratory
+// University of California at Irvine
+// Irvine, CA
+// USA
+// http://doc.ece.uci.edu/
+//
+// Information about TAO is available at:
+// http://www.cs.wustl.edu/~schmidt/TAO.html
+
+ACE_INLINE void POA_IR::ComponentRepository::lookup_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Repository_ptr impl = (POA_IR::ComponentRepository_ptr) obj;
+ POA_CORBA_Repository::lookup_id_skel (
+ req,
+ (POA_CORBA_Repository_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentRepository::get_canonical_typecode_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Repository_ptr impl = (POA_IR::ComponentRepository_ptr) obj;
+ POA_CORBA_Repository::get_canonical_typecode_skel (
+ req,
+ (POA_CORBA_Repository_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentRepository::get_primitive_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Repository_ptr impl = (POA_IR::ComponentRepository_ptr) obj;
+ POA_CORBA_Repository::get_primitive_skel (
+ req,
+ (POA_CORBA_Repository_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentRepository::create_string_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Repository_ptr impl = (POA_IR::ComponentRepository_ptr) obj;
+ POA_CORBA_Repository::create_string_skel (
+ req,
+ (POA_CORBA_Repository_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentRepository::create_wstring_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Repository_ptr impl = (POA_IR::ComponentRepository_ptr) obj;
+ POA_CORBA_Repository::create_wstring_skel (
+ req,
+ (POA_CORBA_Repository_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentRepository::create_sequence_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Repository_ptr impl = (POA_IR::ComponentRepository_ptr) obj;
+ POA_CORBA_Repository::create_sequence_skel (
+ req,
+ (POA_CORBA_Repository_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentRepository::create_array_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Repository_ptr impl = (POA_IR::ComponentRepository_ptr) obj;
+ POA_CORBA_Repository::create_array_skel (
+ req,
+ (POA_CORBA_Repository_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentRepository::create_fixed_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Repository_ptr impl = (POA_IR::ComponentRepository_ptr) obj;
+ POA_CORBA_Repository::create_fixed_skel (
+ req,
+ (POA_CORBA_Repository_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentRepository::lookup_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentRepository_ptr) obj;
+ POA_CORBA_Container::lookup_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentRepository::contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentRepository_ptr) obj;
+ POA_CORBA_Container::contents_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentRepository::lookup_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentRepository_ptr) obj;
+ POA_CORBA_Container::lookup_name_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentRepository::describe_contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentRepository_ptr) obj;
+ POA_CORBA_Container::describe_contents_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentRepository::create_module_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentRepository_ptr) obj;
+ POA_CORBA_Container::create_module_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentRepository::create_constant_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentRepository_ptr) obj;
+ POA_CORBA_Container::create_constant_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentRepository::create_struct_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentRepository_ptr) obj;
+ POA_CORBA_Container::create_struct_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentRepository::create_union_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentRepository_ptr) obj;
+ POA_CORBA_Container::create_union_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentRepository::create_enum_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentRepository_ptr) obj;
+ POA_CORBA_Container::create_enum_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentRepository::create_alias_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentRepository_ptr) obj;
+ POA_CORBA_Container::create_alias_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentRepository::create_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentRepository_ptr) obj;
+ POA_CORBA_Container::create_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentRepository::create_value_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentRepository_ptr) obj;
+ POA_CORBA_Container::create_value_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentRepository::create_value_box_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentRepository_ptr) obj;
+ POA_CORBA_Container::create_value_box_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentRepository::create_exception_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentRepository_ptr) obj;
+ POA_CORBA_Container::create_exception_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentRepository::create_native_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentRepository_ptr) obj;
+ POA_CORBA_Container::create_native_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentRepository::create_abstract_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentRepository_ptr) obj;
+ POA_CORBA_Container::create_abstract_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentRepository::create_local_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentRepository_ptr) obj;
+ POA_CORBA_Container::create_local_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentRepository::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_IR::ComponentRepository_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentRepository::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_IR::ComponentRepository_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ProvidesDef::_get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::ProvidesDef_ptr) obj;
+ POA_CORBA_Contained::_get_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ProvidesDef::_set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::ProvidesDef_ptr) obj;
+ POA_CORBA_Contained::_set_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ProvidesDef::_get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::ProvidesDef_ptr) obj;
+ POA_CORBA_Contained::_get_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ProvidesDef::_set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::ProvidesDef_ptr) obj;
+ POA_CORBA_Contained::_set_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ProvidesDef::_get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::ProvidesDef_ptr) obj;
+ POA_CORBA_Contained::_get_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ProvidesDef::_set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::ProvidesDef_ptr) obj;
+ POA_CORBA_Contained::_set_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ProvidesDef::_get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::ProvidesDef_ptr) obj;
+ POA_CORBA_Contained::_get_defined_in_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ProvidesDef::_get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::ProvidesDef_ptr) obj;
+ POA_CORBA_Contained::_get_absolute_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ProvidesDef::_get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::ProvidesDef_ptr) obj;
+ POA_CORBA_Contained::_get_containing_repository_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ProvidesDef::describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::ProvidesDef_ptr) obj;
+ POA_CORBA_Contained::describe_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ProvidesDef::move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::ProvidesDef_ptr) obj;
+ POA_CORBA_Contained::move_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ProvidesDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_IR::ProvidesDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ProvidesDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_IR::ProvidesDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::UsesDef::_get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::UsesDef_ptr) obj;
+ POA_CORBA_Contained::_get_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::UsesDef::_set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::UsesDef_ptr) obj;
+ POA_CORBA_Contained::_set_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::UsesDef::_get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::UsesDef_ptr) obj;
+ POA_CORBA_Contained::_get_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::UsesDef::_set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::UsesDef_ptr) obj;
+ POA_CORBA_Contained::_set_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::UsesDef::_get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::UsesDef_ptr) obj;
+ POA_CORBA_Contained::_get_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::UsesDef::_set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::UsesDef_ptr) obj;
+ POA_CORBA_Contained::_set_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::UsesDef::_get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::UsesDef_ptr) obj;
+ POA_CORBA_Contained::_get_defined_in_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::UsesDef::_get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::UsesDef_ptr) obj;
+ POA_CORBA_Contained::_get_absolute_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::UsesDef::_get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::UsesDef_ptr) obj;
+ POA_CORBA_Contained::_get_containing_repository_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::UsesDef::describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::UsesDef_ptr) obj;
+ POA_CORBA_Contained::describe_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::UsesDef::move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::UsesDef_ptr) obj;
+ POA_CORBA_Contained::move_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::UsesDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_IR::UsesDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::UsesDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_IR::UsesDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::EventDef::_get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::EventDef_ptr) obj;
+ POA_CORBA_Contained::_get_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::EventDef::_set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::EventDef_ptr) obj;
+ POA_CORBA_Contained::_set_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::EventDef::_get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::EventDef_ptr) obj;
+ POA_CORBA_Contained::_get_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::EventDef::_set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::EventDef_ptr) obj;
+ POA_CORBA_Contained::_set_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::EventDef::_get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::EventDef_ptr) obj;
+ POA_CORBA_Contained::_get_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::EventDef::_set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::EventDef_ptr) obj;
+ POA_CORBA_Contained::_set_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::EventDef::_get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::EventDef_ptr) obj;
+ POA_CORBA_Contained::_get_defined_in_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::EventDef::_get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::EventDef_ptr) obj;
+ POA_CORBA_Contained::_get_absolute_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::EventDef::_get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::EventDef_ptr) obj;
+ POA_CORBA_Contained::_get_containing_repository_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::EventDef::describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::EventDef_ptr) obj;
+ POA_CORBA_Contained::describe_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::EventDef::move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::EventDef_ptr) obj;
+ POA_CORBA_Contained::move_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::EventDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_IR::EventDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::EventDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_IR::EventDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::EmitsDef::is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::EventDef_ptr impl = (POA_IR::EmitsDef_ptr) obj;
+ POA_IR::EventDef::is_a_skel (
+ req,
+ (POA_IR::EventDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::EmitsDef::_get_event_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::EventDef_ptr impl = (POA_IR::EmitsDef_ptr) obj;
+ POA_IR::EventDef::_get_event_skel (
+ req,
+ (POA_IR::EventDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::EmitsDef::_get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::EmitsDef_ptr) obj;
+ POA_CORBA_Contained::_get_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::EmitsDef::_set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::EmitsDef_ptr) obj;
+ POA_CORBA_Contained::_set_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::EmitsDef::_get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::EmitsDef_ptr) obj;
+ POA_CORBA_Contained::_get_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::EmitsDef::_set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::EmitsDef_ptr) obj;
+ POA_CORBA_Contained::_set_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::EmitsDef::_get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::EmitsDef_ptr) obj;
+ POA_CORBA_Contained::_get_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::EmitsDef::_set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::EmitsDef_ptr) obj;
+ POA_CORBA_Contained::_set_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::EmitsDef::_get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::EmitsDef_ptr) obj;
+ POA_CORBA_Contained::_get_defined_in_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::EmitsDef::_get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::EmitsDef_ptr) obj;
+ POA_CORBA_Contained::_get_absolute_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::EmitsDef::_get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::EmitsDef_ptr) obj;
+ POA_CORBA_Contained::_get_containing_repository_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::EmitsDef::describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::EmitsDef_ptr) obj;
+ POA_CORBA_Contained::describe_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::EmitsDef::move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::EmitsDef_ptr) obj;
+ POA_CORBA_Contained::move_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::EmitsDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_IR::EmitsDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::EmitsDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_IR::EmitsDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::PublishesDef::is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::EventDef_ptr impl = (POA_IR::PublishesDef_ptr) obj;
+ POA_IR::EventDef::is_a_skel (
+ req,
+ (POA_IR::EventDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::PublishesDef::_get_event_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::EventDef_ptr impl = (POA_IR::PublishesDef_ptr) obj;
+ POA_IR::EventDef::_get_event_skel (
+ req,
+ (POA_IR::EventDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::PublishesDef::_get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::PublishesDef_ptr) obj;
+ POA_CORBA_Contained::_get_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::PublishesDef::_set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::PublishesDef_ptr) obj;
+ POA_CORBA_Contained::_set_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::PublishesDef::_get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::PublishesDef_ptr) obj;
+ POA_CORBA_Contained::_get_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::PublishesDef::_set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::PublishesDef_ptr) obj;
+ POA_CORBA_Contained::_set_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::PublishesDef::_get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::PublishesDef_ptr) obj;
+ POA_CORBA_Contained::_get_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::PublishesDef::_set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::PublishesDef_ptr) obj;
+ POA_CORBA_Contained::_set_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::PublishesDef::_get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::PublishesDef_ptr) obj;
+ POA_CORBA_Contained::_get_defined_in_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::PublishesDef::_get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::PublishesDef_ptr) obj;
+ POA_CORBA_Contained::_get_absolute_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::PublishesDef::_get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::PublishesDef_ptr) obj;
+ POA_CORBA_Contained::_get_containing_repository_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::PublishesDef::describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::PublishesDef_ptr) obj;
+ POA_CORBA_Contained::describe_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::PublishesDef::move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::PublishesDef_ptr) obj;
+ POA_CORBA_Contained::move_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::PublishesDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_IR::PublishesDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::PublishesDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_IR::PublishesDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ConsumesDef::is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::EventDef_ptr impl = (POA_IR::ConsumesDef_ptr) obj;
+ POA_IR::EventDef::is_a_skel (
+ req,
+ (POA_IR::EventDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ConsumesDef::_get_event_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_IR::EventDef_ptr impl = (POA_IR::ConsumesDef_ptr) obj;
+ POA_IR::EventDef::_get_event_skel (
+ req,
+ (POA_IR::EventDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ConsumesDef::_get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::ConsumesDef_ptr) obj;
+ POA_CORBA_Contained::_get_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ConsumesDef::_set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::ConsumesDef_ptr) obj;
+ POA_CORBA_Contained::_set_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ConsumesDef::_get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::ConsumesDef_ptr) obj;
+ POA_CORBA_Contained::_get_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ConsumesDef::_set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::ConsumesDef_ptr) obj;
+ POA_CORBA_Contained::_set_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ConsumesDef::_get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::ConsumesDef_ptr) obj;
+ POA_CORBA_Contained::_get_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ConsumesDef::_set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::ConsumesDef_ptr) obj;
+ POA_CORBA_Contained::_set_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ConsumesDef::_get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::ConsumesDef_ptr) obj;
+ POA_CORBA_Contained::_get_defined_in_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ConsumesDef::_get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::ConsumesDef_ptr) obj;
+ POA_CORBA_Contained::_get_absolute_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ConsumesDef::_get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::ConsumesDef_ptr) obj;
+ POA_CORBA_Contained::_get_containing_repository_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ConsumesDef::describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::ConsumesDef_ptr) obj;
+ POA_CORBA_Contained::describe_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ConsumesDef::move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::ConsumesDef_ptr) obj;
+ POA_CORBA_Contained::move_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ConsumesDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_IR::ConsumesDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ConsumesDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_IR::ConsumesDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::_get_base_interfaces_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_InterfaceDef_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_InterfaceDef::_get_base_interfaces_skel (
+ req,
+ (POA_CORBA_InterfaceDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::_set_base_interfaces_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_InterfaceDef_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_InterfaceDef::_set_base_interfaces_skel (
+ req,
+ (POA_CORBA_InterfaceDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_InterfaceDef_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_InterfaceDef::is_a_skel (
+ req,
+ (POA_CORBA_InterfaceDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::describe_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_InterfaceDef_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_InterfaceDef::describe_interface_skel (
+ req,
+ (POA_CORBA_InterfaceDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::create_attribute_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_InterfaceDef_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_InterfaceDef::create_attribute_skel (
+ req,
+ (POA_CORBA_InterfaceDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::create_operation_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_InterfaceDef_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_InterfaceDef::create_operation_skel (
+ req,
+ (POA_CORBA_InterfaceDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::lookup_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_Container::lookup_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_Container::contents_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::lookup_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_Container::lookup_name_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::describe_contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_Container::describe_contents_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::create_module_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_Container::create_module_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::create_constant_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_Container::create_constant_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::create_struct_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_Container::create_struct_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::create_union_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_Container::create_union_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::create_enum_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_Container::create_enum_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::create_alias_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_Container::create_alias_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::create_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_Container::create_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::create_value_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_Container::create_value_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::create_value_box_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_Container::create_value_box_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::create_exception_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_Container::create_exception_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::create_native_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_Container::create_native_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::create_abstract_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_Container::create_abstract_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::create_local_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_Container::create_local_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::_get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_Contained::_get_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::_set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_Contained::_set_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::_get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_Contained::_get_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::_set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_Contained::_set_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::_get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_Contained::_get_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::_set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_Contained::_set_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::_get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_Contained::_get_defined_in_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::_get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_Contained::_get_absolute_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::_get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_Contained::_get_containing_repository_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_Contained::describe_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_Contained::move_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::_get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IDLType_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_IDLType::_get_type_skel (
+ req,
+ (POA_CORBA_IDLType_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::ComponentDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_IR::ComponentDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::PrimaryKeyDef::_get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::PrimaryKeyDef_ptr) obj;
+ POA_CORBA_Contained::_get_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::PrimaryKeyDef::_set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::PrimaryKeyDef_ptr) obj;
+ POA_CORBA_Contained::_set_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::PrimaryKeyDef::_get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::PrimaryKeyDef_ptr) obj;
+ POA_CORBA_Contained::_get_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::PrimaryKeyDef::_set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::PrimaryKeyDef_ptr) obj;
+ POA_CORBA_Contained::_set_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::PrimaryKeyDef::_get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::PrimaryKeyDef_ptr) obj;
+ POA_CORBA_Contained::_get_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::PrimaryKeyDef::_set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::PrimaryKeyDef_ptr) obj;
+ POA_CORBA_Contained::_set_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::PrimaryKeyDef::_get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::PrimaryKeyDef_ptr) obj;
+ POA_CORBA_Contained::_get_defined_in_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::PrimaryKeyDef::_get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::PrimaryKeyDef_ptr) obj;
+ POA_CORBA_Contained::_get_absolute_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::PrimaryKeyDef::_get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::PrimaryKeyDef_ptr) obj;
+ POA_CORBA_Contained::_get_containing_repository_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::PrimaryKeyDef::describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::PrimaryKeyDef_ptr) obj;
+ POA_CORBA_Contained::describe_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::PrimaryKeyDef::move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::PrimaryKeyDef_ptr) obj;
+ POA_CORBA_Contained::move_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::PrimaryKeyDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_IR::PrimaryKeyDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::PrimaryKeyDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_IR::PrimaryKeyDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FactoryDef::_get_result_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_OperationDef_ptr impl = (POA_IR::FactoryDef_ptr) obj;
+ POA_CORBA_OperationDef::_get_result_skel (
+ req,
+ (POA_CORBA_OperationDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FactoryDef::_get_result_def_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_OperationDef_ptr impl = (POA_IR::FactoryDef_ptr) obj;
+ POA_CORBA_OperationDef::_get_result_def_skel (
+ req,
+ (POA_CORBA_OperationDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FactoryDef::_set_result_def_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_OperationDef_ptr impl = (POA_IR::FactoryDef_ptr) obj;
+ POA_CORBA_OperationDef::_set_result_def_skel (
+ req,
+ (POA_CORBA_OperationDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FactoryDef::_get_params_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_OperationDef_ptr impl = (POA_IR::FactoryDef_ptr) obj;
+ POA_CORBA_OperationDef::_get_params_skel (
+ req,
+ (POA_CORBA_OperationDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FactoryDef::_set_params_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_OperationDef_ptr impl = (POA_IR::FactoryDef_ptr) obj;
+ POA_CORBA_OperationDef::_set_params_skel (
+ req,
+ (POA_CORBA_OperationDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FactoryDef::_get_mode_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_OperationDef_ptr impl = (POA_IR::FactoryDef_ptr) obj;
+ POA_CORBA_OperationDef::_get_mode_skel (
+ req,
+ (POA_CORBA_OperationDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FactoryDef::_set_mode_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_OperationDef_ptr impl = (POA_IR::FactoryDef_ptr) obj;
+ POA_CORBA_OperationDef::_set_mode_skel (
+ req,
+ (POA_CORBA_OperationDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FactoryDef::_get_contexts_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_OperationDef_ptr impl = (POA_IR::FactoryDef_ptr) obj;
+ POA_CORBA_OperationDef::_get_contexts_skel (
+ req,
+ (POA_CORBA_OperationDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FactoryDef::_set_contexts_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_OperationDef_ptr impl = (POA_IR::FactoryDef_ptr) obj;
+ POA_CORBA_OperationDef::_set_contexts_skel (
+ req,
+ (POA_CORBA_OperationDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FactoryDef::_get_exceptions_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_OperationDef_ptr impl = (POA_IR::FactoryDef_ptr) obj;
+ POA_CORBA_OperationDef::_get_exceptions_skel (
+ req,
+ (POA_CORBA_OperationDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FactoryDef::_set_exceptions_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_OperationDef_ptr impl = (POA_IR::FactoryDef_ptr) obj;
+ POA_CORBA_OperationDef::_set_exceptions_skel (
+ req,
+ (POA_CORBA_OperationDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FactoryDef::_get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::FactoryDef_ptr) obj;
+ POA_CORBA_Contained::_get_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FactoryDef::_set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::FactoryDef_ptr) obj;
+ POA_CORBA_Contained::_set_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FactoryDef::_get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::FactoryDef_ptr) obj;
+ POA_CORBA_Contained::_get_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FactoryDef::_set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::FactoryDef_ptr) obj;
+ POA_CORBA_Contained::_set_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FactoryDef::_get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::FactoryDef_ptr) obj;
+ POA_CORBA_Contained::_get_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FactoryDef::_set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::FactoryDef_ptr) obj;
+ POA_CORBA_Contained::_set_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FactoryDef::_get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::FactoryDef_ptr) obj;
+ POA_CORBA_Contained::_get_defined_in_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FactoryDef::_get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::FactoryDef_ptr) obj;
+ POA_CORBA_Contained::_get_absolute_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FactoryDef::_get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::FactoryDef_ptr) obj;
+ POA_CORBA_Contained::_get_containing_repository_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FactoryDef::describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::FactoryDef_ptr) obj;
+ POA_CORBA_Contained::describe_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FactoryDef::move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::FactoryDef_ptr) obj;
+ POA_CORBA_Contained::move_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FactoryDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_IR::FactoryDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FactoryDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_IR::FactoryDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FinderDef::_get_result_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_OperationDef_ptr impl = (POA_IR::FinderDef_ptr) obj;
+ POA_CORBA_OperationDef::_get_result_skel (
+ req,
+ (POA_CORBA_OperationDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FinderDef::_get_result_def_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_OperationDef_ptr impl = (POA_IR::FinderDef_ptr) obj;
+ POA_CORBA_OperationDef::_get_result_def_skel (
+ req,
+ (POA_CORBA_OperationDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FinderDef::_set_result_def_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_OperationDef_ptr impl = (POA_IR::FinderDef_ptr) obj;
+ POA_CORBA_OperationDef::_set_result_def_skel (
+ req,
+ (POA_CORBA_OperationDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FinderDef::_get_params_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_OperationDef_ptr impl = (POA_IR::FinderDef_ptr) obj;
+ POA_CORBA_OperationDef::_get_params_skel (
+ req,
+ (POA_CORBA_OperationDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FinderDef::_set_params_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_OperationDef_ptr impl = (POA_IR::FinderDef_ptr) obj;
+ POA_CORBA_OperationDef::_set_params_skel (
+ req,
+ (POA_CORBA_OperationDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FinderDef::_get_mode_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_OperationDef_ptr impl = (POA_IR::FinderDef_ptr) obj;
+ POA_CORBA_OperationDef::_get_mode_skel (
+ req,
+ (POA_CORBA_OperationDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FinderDef::_set_mode_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_OperationDef_ptr impl = (POA_IR::FinderDef_ptr) obj;
+ POA_CORBA_OperationDef::_set_mode_skel (
+ req,
+ (POA_CORBA_OperationDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FinderDef::_get_contexts_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_OperationDef_ptr impl = (POA_IR::FinderDef_ptr) obj;
+ POA_CORBA_OperationDef::_get_contexts_skel (
+ req,
+ (POA_CORBA_OperationDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FinderDef::_set_contexts_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_OperationDef_ptr impl = (POA_IR::FinderDef_ptr) obj;
+ POA_CORBA_OperationDef::_set_contexts_skel (
+ req,
+ (POA_CORBA_OperationDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FinderDef::_get_exceptions_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_OperationDef_ptr impl = (POA_IR::FinderDef_ptr) obj;
+ POA_CORBA_OperationDef::_get_exceptions_skel (
+ req,
+ (POA_CORBA_OperationDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FinderDef::_set_exceptions_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_OperationDef_ptr impl = (POA_IR::FinderDef_ptr) obj;
+ POA_CORBA_OperationDef::_set_exceptions_skel (
+ req,
+ (POA_CORBA_OperationDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FinderDef::_get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::FinderDef_ptr) obj;
+ POA_CORBA_Contained::_get_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FinderDef::_set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::FinderDef_ptr) obj;
+ POA_CORBA_Contained::_set_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FinderDef::_get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::FinderDef_ptr) obj;
+ POA_CORBA_Contained::_get_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FinderDef::_set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::FinderDef_ptr) obj;
+ POA_CORBA_Contained::_set_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FinderDef::_get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::FinderDef_ptr) obj;
+ POA_CORBA_Contained::_get_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FinderDef::_set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::FinderDef_ptr) obj;
+ POA_CORBA_Contained::_set_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FinderDef::_get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::FinderDef_ptr) obj;
+ POA_CORBA_Contained::_get_defined_in_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FinderDef::_get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::FinderDef_ptr) obj;
+ POA_CORBA_Contained::_get_absolute_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FinderDef::_get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::FinderDef_ptr) obj;
+ POA_CORBA_Contained::_get_containing_repository_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FinderDef::describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::FinderDef_ptr) obj;
+ POA_CORBA_Contained::describe_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FinderDef::move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::FinderDef_ptr) obj;
+ POA_CORBA_Contained::move_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FinderDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_IR::FinderDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::FinderDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_IR::FinderDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::_get_base_interfaces_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_InterfaceDef_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_InterfaceDef::_get_base_interfaces_skel (
+ req,
+ (POA_CORBA_InterfaceDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::_set_base_interfaces_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_InterfaceDef_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_InterfaceDef::_set_base_interfaces_skel (
+ req,
+ (POA_CORBA_InterfaceDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_InterfaceDef_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_InterfaceDef::is_a_skel (
+ req,
+ (POA_CORBA_InterfaceDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::describe_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_InterfaceDef_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_InterfaceDef::describe_interface_skel (
+ req,
+ (POA_CORBA_InterfaceDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::create_attribute_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_InterfaceDef_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_InterfaceDef::create_attribute_skel (
+ req,
+ (POA_CORBA_InterfaceDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::create_operation_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_InterfaceDef_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_InterfaceDef::create_operation_skel (
+ req,
+ (POA_CORBA_InterfaceDef_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::lookup_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_Container::lookup_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_Container::contents_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::lookup_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_Container::lookup_name_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::describe_contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_Container::describe_contents_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::create_module_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_Container::create_module_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::create_constant_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_Container::create_constant_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::create_struct_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_Container::create_struct_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::create_union_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_Container::create_union_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::create_enum_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_Container::create_enum_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::create_alias_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_Container::create_alias_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::create_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_Container::create_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::create_value_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_Container::create_value_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::create_value_box_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_Container::create_value_box_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::create_exception_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_Container::create_exception_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::create_native_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_Container::create_native_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::create_abstract_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_Container::create_abstract_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::create_local_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_Container::create_local_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::_get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_Contained::_get_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::_set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_Contained::_set_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::_get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_Contained::_get_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::_set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_Contained::_set_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::_get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_Contained::_get_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::_set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_Contained::_set_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::_get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_Contained::_get_defined_in_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::_get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_Contained::_get_absolute_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::_get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_Contained::_get_containing_repository_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_Contained::describe_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_Contained::move_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::_get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IDLType_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_IDLType::_get_type_skel (
+ req,
+ (POA_CORBA_IDLType_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_IR::HomeDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_IR::HomeDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IFR_ComponentsS_T.cpp b/TAO/orbsvcs/orbsvcs/IFRService/IFR_ComponentsS_T.cpp
new file mode 100644
index 00000000000..2dd545c475f
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_ComponentsS_T.cpp
@@ -0,0 +1,32 @@
+// -*- C++ -*-
+//
+// $Id$
+
+// **** Code generated by the The ACE ORB (TAO) IDL Compiler ****
+// TAO and the TAO IDL Compiler have been developed by:
+// Center for Distributed Object Computing
+// Washington University
+// St. Louis, MO
+// USA
+// http://www.cs.wustl.edu/~schmidt/doc-center.html
+// and
+// Distributed Object Computing Laboratory
+// University of California at Irvine
+// Irvine, CA
+// USA
+// http://doc.ece.uci.edu/
+//
+// Information about TAO is available at:
+// http://www.cs.wustl.edu/~schmidt/TAO.html
+
+#ifndef _TAO_IDL_IFR_COMPONENTSS_T_CPP_
+#define _TAO_IDL_IFR_COMPONENTSS_T_CPP_
+
+#include "IFR_ComponentsS_T.h"
+
+#if !defined (__ACE_INLINE__)
+#include "IFR_ComponentsS_T.i"
+#endif /* !defined INLINE */
+
+
+#endif /* ifndef */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IFR_ComponentsS_T.h b/TAO/orbsvcs/orbsvcs/IFRService/IFR_ComponentsS_T.h
new file mode 100644
index 00000000000..cc915fc6a37
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_ComponentsS_T.h
@@ -0,0 +1,2884 @@
+// -*- C++ -*-
+//
+// $Id$
+
+// **** Code generated by the The ACE ORB (TAO) IDL Compiler ****
+// TAO and the TAO IDL Compiler have been developed by:
+// Center for Distributed Object Computing
+// Washington University
+// St. Louis, MO
+// USA
+// http://www.cs.wustl.edu/~schmidt/doc-center.html
+// and
+// Distributed Object Computing Laboratory
+// University of California at Irvine
+// Irvine, CA
+// USA
+// http://doc.ece.uci.edu/
+//
+// Information about TAO is available at:
+// http://www.cs.wustl.edu/~schmidt/TAO.html
+
+#ifndef _TAO_IDL_IFR_COMPONENTSS_T_H_
+#define _TAO_IDL_IFR_COMPONENTSS_T_H_
+
+#include "ace/pre.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_HAS_USING_KEYWORD)
+
+TAO_NAMESPACE POA_IR
+{
+ // TIE class: Refer to CORBA v2.2, Section 20.34.4
+ template <class T>
+ class ComponentRepository_tie : public ComponentRepository
+ {
+ public:
+ ComponentRepository_tie (T &t);
+ // the T& ctor
+ ComponentRepository_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ ComponentRepository_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ ComponentRepository_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~ComponentRepository_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ IR::ComponentDef_ptr create_component (
+ const char * id,
+ const char * name,
+ const char * version,
+ IR::ComponentDef_ptr base_component,
+ const CORBA_InterfaceDefSeq & supports_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ IR::HomeDef_ptr create_home (
+ const char * id,
+ const char * name,
+ const char * version,
+ IR::HomeDef_ptr base_home,
+ IR::ComponentDef_ptr managed_component,
+ CORBA_ValueDef_ptr primary_key
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained_ptr lookup_id (
+ const char * search_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::TypeCode_ptr get_canonical_typecode (
+ CORBA::TypeCode_ptr tc
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_PrimitiveDef_ptr get_primitive (
+ CORBA::PrimitiveKind kind
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_StringDef_ptr create_string (
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_WstringDef_ptr create_wstring (
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_SequenceDef_ptr create_sequence (
+ CORBA::ULong bound,
+ CORBA_IDLType_ptr element_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ArrayDef_ptr create_array (
+ CORBA::ULong length,
+ CORBA_IDLType_ptr element_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_FixedDef_ptr create_fixed (
+ CORBA::UShort digits,
+ CORBA::Short scale
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained_ptr lookup (
+ const char * search_name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ContainedSeq * contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ContainedSeq * lookup_name (
+ const char * search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container::DescriptionSeq * describe_contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited,
+ CORBA::Long max_returned_objs
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ModuleDef_ptr create_module (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ConstantDef_ptr create_constant (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_StructDef_ptr create_struct (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_UnionDef_ptr create_union (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_EnumDef_ptr create_enum (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_AliasDef_ptr create_alias (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_InterfaceDef_ptr create_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueDef_ptr create_value (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA::Boolean is_custom,
+ CORBA::Boolean is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ CORBA::Boolean is_truncatable,
+ const CORBA_ValueDefSeq & abstract_base_values,
+ const CORBA_InterfaceDefSeq & supported_interfaces,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueBoxDef_ptr create_value_box (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ExceptionDef_ptr create_exception (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_NativeDef_ptr create_native (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_AbstractInterfaceDef_ptr create_abstract_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_AbstractInterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_LocalInterfaceDef_ptr create_local_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ ComponentRepository_tie (const ComponentRepository_tie &);
+ void operator= (const ComponentRepository_tie &);
+ };
+
+ // TIE class: Refer to CORBA v2.2, Section 20.34.4
+ template <class T>
+ class ProvidesDef_tie : public ProvidesDef
+ {
+ public:
+ ProvidesDef_tie (T &t);
+ // the T& ctor
+ ProvidesDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ ProvidesDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ ProvidesDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~ProvidesDef_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA_InterfaceDef_ptr interface_type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * id (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void id (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void name (
+ const char * name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * version (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void version (
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container_ptr defined_in (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Repository_ptr containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained::Description * describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ ProvidesDef_tie (const ProvidesDef_tie &);
+ void operator= (const ProvidesDef_tie &);
+ };
+
+ // TIE class: Refer to CORBA v2.2, Section 20.34.4
+ template <class T>
+ class UsesDef_tie : public UsesDef
+ {
+ public:
+ UsesDef_tie (T &t);
+ // the T& ctor
+ UsesDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ UsesDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ UsesDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~UsesDef_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA_InterfaceDef_ptr interface_type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::Boolean is_multiple (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * id (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void id (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void name (
+ const char * name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * version (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void version (
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container_ptr defined_in (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Repository_ptr containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained::Description * describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ UsesDef_tie (const UsesDef_tie &);
+ void operator= (const UsesDef_tie &);
+ };
+
+ // TIE class: Refer to CORBA v2.2, Section 20.34.4
+ template <class T>
+ class EventDef_tie : public EventDef
+ {
+ public:
+ EventDef_tie (T &t);
+ // the T& ctor
+ EventDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ EventDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ EventDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~EventDef_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA::Boolean is_a (
+ const char * event_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueDef_ptr event (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * id (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void id (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void name (
+ const char * name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * version (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void version (
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container_ptr defined_in (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Repository_ptr containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained::Description * describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ EventDef_tie (const EventDef_tie &);
+ void operator= (const EventDef_tie &);
+ };
+
+ // TIE class: Refer to CORBA v2.2, Section 20.34.4
+ template <class T>
+ class EmitsDef_tie : public EmitsDef
+ {
+ public:
+ EmitsDef_tie (T &t);
+ // the T& ctor
+ EmitsDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ EmitsDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ EmitsDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~EmitsDef_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA::Boolean is_a (
+ const char * event_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueDef_ptr event (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * id (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void id (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void name (
+ const char * name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * version (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void version (
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container_ptr defined_in (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Repository_ptr containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained::Description * describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ EmitsDef_tie (const EmitsDef_tie &);
+ void operator= (const EmitsDef_tie &);
+ };
+
+ // TIE class: Refer to CORBA v2.2, Section 20.34.4
+ template <class T>
+ class PublishesDef_tie : public PublishesDef
+ {
+ public:
+ PublishesDef_tie (T &t);
+ // the T& ctor
+ PublishesDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ PublishesDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ PublishesDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~PublishesDef_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA::Boolean is_a (
+ const char * event_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueDef_ptr event (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * id (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void id (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void name (
+ const char * name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * version (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void version (
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container_ptr defined_in (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Repository_ptr containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained::Description * describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ PublishesDef_tie (const PublishesDef_tie &);
+ void operator= (const PublishesDef_tie &);
+ };
+
+ // TIE class: Refer to CORBA v2.2, Section 20.34.4
+ template <class T>
+ class ConsumesDef_tie : public ConsumesDef
+ {
+ public:
+ ConsumesDef_tie (T &t);
+ // the T& ctor
+ ConsumesDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ ConsumesDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ ConsumesDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~ConsumesDef_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA::Boolean is_a (
+ const char * event_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueDef_ptr event (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * id (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void id (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void name (
+ const char * name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * version (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void version (
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container_ptr defined_in (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Repository_ptr containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained::Description * describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ ConsumesDef_tie (const ConsumesDef_tie &);
+ void operator= (const ConsumesDef_tie &);
+ };
+
+ // TIE class: Refer to CORBA v2.2, Section 20.34.4
+ template <class T>
+ class ComponentDef_tie : public ComponentDef
+ {
+ public:
+ ComponentDef_tie (T &t);
+ // the T& ctor
+ ComponentDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ ComponentDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ ComponentDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~ComponentDef_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA_InterfaceDefSeq * supported_interfaces (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void supported_interfaces (
+ const CORBA_InterfaceDefSeq & supported_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ IR::ComponentDef_ptr base_component (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ IR::ProvidesDefSeq * provides_interfaces (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ IR::UsesDefSeq * uses_interfaces (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ IR::EmitsDefSeq * emits_events (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ IR::PublishesDefSeq * publishes_events (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ IR::ConsumesDefSeq * consumes_events (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::Boolean is_basic (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ IR::ProvidesDef_ptr create_provides (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_InterfaceDef_ptr interface_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ IR::UsesDef_ptr create_uses (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_InterfaceDef_ptr interface_type,
+ CORBA::Boolean is_multiple
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ IR::EmitsDef_ptr create_emits (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_ValueDef_ptr value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ IR::PublishesDef_ptr create_publishes (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_ValueDef_ptr value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ IR::ConsumesDef_ptr create_consumes (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_ValueDef_ptr value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_InterfaceDefSeq * base_interfaces (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void base_interfaces (
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::Boolean is_a (
+ const char * interface_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_InterfaceDef::FullInterfaceDescription * describe_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_AttributeDef_ptr create_attribute (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_OperationDef_ptr create_operation (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr result,
+ CORBA::OperationMode mode,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions,
+ const CORBA_ContextIdSeq & contexts
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained_ptr lookup (
+ const char * search_name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ContainedSeq * contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ContainedSeq * lookup_name (
+ const char * search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container::DescriptionSeq * describe_contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited,
+ CORBA::Long max_returned_objs
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ModuleDef_ptr create_module (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ConstantDef_ptr create_constant (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_StructDef_ptr create_struct (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_UnionDef_ptr create_union (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_EnumDef_ptr create_enum (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_AliasDef_ptr create_alias (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_InterfaceDef_ptr create_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueDef_ptr create_value (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA::Boolean is_custom,
+ CORBA::Boolean is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ CORBA::Boolean is_truncatable,
+ const CORBA_ValueDefSeq & abstract_base_values,
+ const CORBA_InterfaceDefSeq & supported_interfaces,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueBoxDef_ptr create_value_box (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ExceptionDef_ptr create_exception (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_NativeDef_ptr create_native (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_AbstractInterfaceDef_ptr create_abstract_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_AbstractInterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_LocalInterfaceDef_ptr create_local_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * id (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void id (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void name (
+ const char * name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * version (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void version (
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container_ptr defined_in (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Repository_ptr containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained::Description * describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ ComponentDef_tie (const ComponentDef_tie &);
+ void operator= (const ComponentDef_tie &);
+ };
+
+ // TIE class: Refer to CORBA v2.2, Section 20.34.4
+ template <class T>
+ class PrimaryKeyDef_tie : public PrimaryKeyDef
+ {
+ public:
+ PrimaryKeyDef_tie (T &t);
+ // the T& ctor
+ PrimaryKeyDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ PrimaryKeyDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ PrimaryKeyDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~PrimaryKeyDef_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA::Boolean is_a (
+ const char * primary_key_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueDef_ptr primary_key (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * id (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void id (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void name (
+ const char * name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * version (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void version (
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container_ptr defined_in (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Repository_ptr containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained::Description * describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ PrimaryKeyDef_tie (const PrimaryKeyDef_tie &);
+ void operator= (const PrimaryKeyDef_tie &);
+ };
+
+ // TIE class: Refer to CORBA v2.2, Section 20.34.4
+ template <class T>
+ class FactoryDef_tie : public FactoryDef
+ {
+ public:
+ FactoryDef_tie (T &t);
+ // the T& ctor
+ FactoryDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ FactoryDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ FactoryDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~FactoryDef_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA::TypeCode_ptr result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_IDLType_ptr result_def (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void result_def (
+ CORBA_IDLType_ptr result_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ParDescriptionSeq * params (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void params (
+ const CORBA_ParDescriptionSeq & params
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::OperationMode mode (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void mode (
+ CORBA::OperationMode mode
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ContextIdSeq * contexts (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void contexts (
+ const CORBA_ContextIdSeq & contexts
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ExceptionDefSeq * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void exceptions (
+ const CORBA_ExceptionDefSeq & exceptions
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * id (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void id (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void name (
+ const char * name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * version (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void version (
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container_ptr defined_in (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Repository_ptr containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained::Description * describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ FactoryDef_tie (const FactoryDef_tie &);
+ void operator= (const FactoryDef_tie &);
+ };
+
+ // TIE class: Refer to CORBA v2.2, Section 20.34.4
+ template <class T>
+ class FinderDef_tie : public FinderDef
+ {
+ public:
+ FinderDef_tie (T &t);
+ // the T& ctor
+ FinderDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ FinderDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ FinderDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~FinderDef_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA::TypeCode_ptr result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_IDLType_ptr result_def (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void result_def (
+ CORBA_IDLType_ptr result_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ParDescriptionSeq * params (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void params (
+ const CORBA_ParDescriptionSeq & params
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::OperationMode mode (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void mode (
+ CORBA::OperationMode mode
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ContextIdSeq * contexts (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void contexts (
+ const CORBA_ContextIdSeq & contexts
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ExceptionDefSeq * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void exceptions (
+ const CORBA_ExceptionDefSeq & exceptions
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * id (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void id (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void name (
+ const char * name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * version (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void version (
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container_ptr defined_in (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Repository_ptr containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained::Description * describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ FinderDef_tie (const FinderDef_tie &);
+ void operator= (const FinderDef_tie &);
+ };
+
+ // TIE class: Refer to CORBA v2.2, Section 20.34.4
+ template <class T>
+ class HomeDef_tie : public HomeDef
+ {
+ public:
+ HomeDef_tie (T &t);
+ // the T& ctor
+ HomeDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ HomeDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ HomeDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~HomeDef_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ IR::HomeDef_ptr base_home (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ IR::ComponentDef_ptr managed_component (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ IR::PrimaryKeyDef_ptr primary_key (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ IR::FactoryDefSeq * factories (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ IR::FinderDefSeq * finders (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::Boolean is_basic (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ IR::PrimaryKeyDef_ptr create_primary_key (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_ValueDef_ptr primary_key
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ IR::FactoryDef_ptr create_factory (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ IR::FinderDef_ptr create_finder (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_InterfaceDefSeq * base_interfaces (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void base_interfaces (
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::Boolean is_a (
+ const char * interface_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_InterfaceDef::FullInterfaceDescription * describe_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_AttributeDef_ptr create_attribute (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_OperationDef_ptr create_operation (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr result,
+ CORBA::OperationMode mode,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions,
+ const CORBA_ContextIdSeq & contexts
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained_ptr lookup (
+ const char * search_name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ContainedSeq * contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ContainedSeq * lookup_name (
+ const char * search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container::DescriptionSeq * describe_contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited,
+ CORBA::Long max_returned_objs
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ModuleDef_ptr create_module (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ConstantDef_ptr create_constant (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_StructDef_ptr create_struct (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_UnionDef_ptr create_union (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_EnumDef_ptr create_enum (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_AliasDef_ptr create_alias (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_InterfaceDef_ptr create_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueDef_ptr create_value (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA::Boolean is_custom,
+ CORBA::Boolean is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ CORBA::Boolean is_truncatable,
+ const CORBA_ValueDefSeq & abstract_base_values,
+ const CORBA_InterfaceDefSeq & supported_interfaces,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueBoxDef_ptr create_value_box (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ExceptionDef_ptr create_exception (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_NativeDef_ptr create_native (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_AbstractInterfaceDef_ptr create_abstract_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_AbstractInterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_LocalInterfaceDef_ptr create_local_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * id (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void id (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void name (
+ const char * name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * version (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void version (
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container_ptr defined_in (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Repository_ptr containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained::Description * describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ HomeDef_tie (const HomeDef_tie &);
+ void operator= (const HomeDef_tie &);
+ };
+
+}
+TAO_NAMESPACE_CLOSE // module IR
+
+#endif /* ACE_HAS_USING_KEYWORD */
+
+#if defined (__ACE_INLINE__)
+#include "IFR_ComponentsS_T.i"
+#endif /* defined INLINE */
+
+
+#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
+#include "IFR_ComponentsS_T.cpp"
+#endif /* defined REQUIRED SOURCE */
+
+
+#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
+#pragma implementation ("IFR_ComponentsS_T.cpp")
+#endif /* defined REQUIRED PRAGMA */
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#include "ace/post.h"
+#endif /* ifndef */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IFR_ComponentsS_T.i b/TAO/orbsvcs/orbsvcs/IFRService/IFR_ComponentsS_T.i
new file mode 100644
index 00000000000..4b3ff1655a0
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_ComponentsS_T.i
@@ -0,0 +1,5308 @@
+// -*- C++ -*-
+//
+// $Id$
+
+// **** Code generated by the The ACE ORB (TAO) IDL Compiler ****
+// TAO and the TAO IDL Compiler have been developed by:
+// Center for Distributed Object Computing
+// Washington University
+// St. Louis, MO
+// USA
+// http://www.cs.wustl.edu/~schmidt/doc-center.html
+// and
+// Distributed Object Computing Laboratory
+// University of California at Irvine
+// Irvine, CA
+// USA
+// http://doc.ece.uci.edu/
+//
+// Information about TAO is available at:
+// http://www.cs.wustl.edu/~schmidt/TAO.html
+
+#if defined (ACE_HAS_USING_KEYWORD)
+
+template <class T> ACE_INLINE
+POA_IR::ComponentRepository_tie<T>::ComponentRepository_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::ComponentRepository_tie<T>::ComponentRepository_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::ComponentRepository_tie<T>::ComponentRepository_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::ComponentRepository_tie<T>::ComponentRepository_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_IR::ComponentRepository_tie<T>::~ComponentRepository_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_IR::ComponentRepository_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_IR::ComponentRepository_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_IR::ComponentRepository_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_IR::ComponentRepository_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_IR::ComponentRepository_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_IR::ComponentRepository_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->ComponentRepository::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+IR::ComponentDef_ptr POA_IR::ComponentRepository_tie<T>::create_component (
+ const char * id,
+ const char * name,
+ const char * version,
+ IR::ComponentDef_ptr base_component,
+ const CORBA_InterfaceDefSeq & supports_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_component (
+id,
+ name,
+ version,
+ base_component,
+ supports_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+IR::HomeDef_ptr POA_IR::ComponentRepository_tie<T>::create_home (
+ const char * id,
+ const char * name,
+ const char * version,
+ IR::HomeDef_ptr base_home,
+ IR::ComponentDef_ptr managed_component,
+ CORBA_ValueDef_ptr primary_key
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_home (
+id,
+ name,
+ version,
+ base_home,
+ managed_component,
+ primary_key
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained_ptr POA_IR::ComponentRepository_tie<T>::lookup_id (
+ const char * search_id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->lookup_id (
+search_id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::TypeCode_ptr POA_IR::ComponentRepository_tie<T>::get_canonical_typecode (
+ CORBA::TypeCode_ptr tc
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->get_canonical_typecode (
+tc
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_PrimitiveDef_ptr POA_IR::ComponentRepository_tie<T>::get_primitive (
+ CORBA::PrimitiveKind kind
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->get_primitive (
+kind
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_StringDef_ptr POA_IR::ComponentRepository_tie<T>::create_string (
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_string (
+bound
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_WstringDef_ptr POA_IR::ComponentRepository_tie<T>::create_wstring (
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_wstring (
+bound
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_SequenceDef_ptr POA_IR::ComponentRepository_tie<T>::create_sequence (
+ CORBA::ULong bound,
+ CORBA_IDLType_ptr element_type
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_sequence (
+bound,
+ element_type
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ArrayDef_ptr POA_IR::ComponentRepository_tie<T>::create_array (
+ CORBA::ULong length,
+ CORBA_IDLType_ptr element_type
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_array (
+length,
+ element_type
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_FixedDef_ptr POA_IR::ComponentRepository_tie<T>::create_fixed (
+ CORBA::UShort digits,
+ CORBA::Short scale
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_fixed (
+digits,
+ scale
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained_ptr POA_IR::ComponentRepository_tie<T>::lookup (
+ const char * search_name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->lookup (
+search_name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ContainedSeq * POA_IR::ComponentRepository_tie<T>::contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->contents (
+limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ContainedSeq * POA_IR::ComponentRepository_tie<T>::lookup_name (
+ const char * search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->lookup_name (
+search_name,
+ levels_to_search,
+ limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container::DescriptionSeq * POA_IR::ComponentRepository_tie<T>::describe_contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited,
+ CORBA::Long max_returned_objs
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe_contents (
+limit_type,
+ exclude_inherited,
+ max_returned_objs
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ModuleDef_ptr POA_IR::ComponentRepository_tie<T>::create_module (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_module (
+id,
+ name,
+ version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ConstantDef_ptr POA_IR::ComponentRepository_tie<T>::create_constant (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_constant (
+id,
+ name,
+ version,
+ type,
+ value
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_StructDef_ptr POA_IR::ComponentRepository_tie<T>::create_struct (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_struct (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_UnionDef_ptr POA_IR::ComponentRepository_tie<T>::create_union (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_union (
+id,
+ name,
+ version,
+ discriminator_type,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_EnumDef_ptr POA_IR::ComponentRepository_tie<T>::create_enum (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_enum (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_AliasDef_ptr POA_IR::ComponentRepository_tie<T>::create_alias (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_alias (
+id,
+ name,
+ version,
+ original_type
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_InterfaceDef_ptr POA_IR::ComponentRepository_tie<T>::create_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueDef_ptr POA_IR::ComponentRepository_tie<T>::create_value (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA::Boolean is_custom,
+ CORBA::Boolean is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ CORBA::Boolean is_truncatable,
+ const CORBA_ValueDefSeq & abstract_base_values,
+ const CORBA_InterfaceDefSeq & supported_interfaces,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_value (
+id,
+ name,
+ version,
+ is_custom,
+ is_abstract,
+ base_value,
+ is_truncatable,
+ abstract_base_values,
+ supported_interfaces,
+ initializers
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueBoxDef_ptr POA_IR::ComponentRepository_tie<T>::create_value_box (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_value_box (
+id,
+ name,
+ version,
+ original_type_def
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ExceptionDef_ptr POA_IR::ComponentRepository_tie<T>::create_exception (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_exception (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_NativeDef_ptr POA_IR::ComponentRepository_tie<T>::create_native (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_native (
+id,
+ name,
+ version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_AbstractInterfaceDef_ptr POA_IR::ComponentRepository_tie<T>::create_abstract_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_AbstractInterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_abstract_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_LocalInterfaceDef_ptr POA_IR::ComponentRepository_tie<T>::create_local_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_local_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_IR::ComponentRepository_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::ComponentRepository_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_IR::ProvidesDef_tie<T>::ProvidesDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::ProvidesDef_tie<T>::ProvidesDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::ProvidesDef_tie<T>::ProvidesDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::ProvidesDef_tie<T>::ProvidesDef_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_IR::ProvidesDef_tie<T>::~ProvidesDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_IR::ProvidesDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_IR::ProvidesDef_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_IR::ProvidesDef_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_IR::ProvidesDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_IR::ProvidesDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_IR::ProvidesDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->ProvidesDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA_InterfaceDef_ptr POA_IR::ProvidesDef_tie<T>::interface_type (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->interface_type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::ProvidesDef_tie<T>::id (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->id (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::ProvidesDef_tie<T>::id (
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->id (
+id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::ProvidesDef_tie<T>::name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::ProvidesDef_tie<T>::name (
+ const char * name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->name (
+name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::ProvidesDef_tie<T>::version (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->version (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::ProvidesDef_tie<T>::version (
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->version (
+version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container_ptr POA_IR::ProvidesDef_tie<T>::defined_in (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->defined_in (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::ProvidesDef_tie<T>::absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->absolute_name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Repository_ptr POA_IR::ProvidesDef_tie<T>::containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->containing_repository (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained::Description * POA_IR::ProvidesDef_tie<T>::describe (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::ProvidesDef_tie<T>::move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->move (
+new_container,
+ new_name,
+ new_version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_IR::ProvidesDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::ProvidesDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_IR::UsesDef_tie<T>::UsesDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::UsesDef_tie<T>::UsesDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::UsesDef_tie<T>::UsesDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::UsesDef_tie<T>::UsesDef_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_IR::UsesDef_tie<T>::~UsesDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_IR::UsesDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_IR::UsesDef_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_IR::UsesDef_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_IR::UsesDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_IR::UsesDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_IR::UsesDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->UsesDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA_InterfaceDef_ptr POA_IR::UsesDef_tie<T>::interface_type (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->interface_type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::Boolean POA_IR::UsesDef_tie<T>::is_multiple (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->is_multiple (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::UsesDef_tie<T>::id (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->id (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::UsesDef_tie<T>::id (
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->id (
+id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::UsesDef_tie<T>::name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::UsesDef_tie<T>::name (
+ const char * name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->name (
+name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::UsesDef_tie<T>::version (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->version (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::UsesDef_tie<T>::version (
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->version (
+version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container_ptr POA_IR::UsesDef_tie<T>::defined_in (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->defined_in (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::UsesDef_tie<T>::absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->absolute_name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Repository_ptr POA_IR::UsesDef_tie<T>::containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->containing_repository (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained::Description * POA_IR::UsesDef_tie<T>::describe (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::UsesDef_tie<T>::move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->move (
+new_container,
+ new_name,
+ new_version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_IR::UsesDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::UsesDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_IR::EventDef_tie<T>::EventDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::EventDef_tie<T>::EventDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::EventDef_tie<T>::EventDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::EventDef_tie<T>::EventDef_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_IR::EventDef_tie<T>::~EventDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_IR::EventDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_IR::EventDef_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_IR::EventDef_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_IR::EventDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_IR::EventDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_IR::EventDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->EventDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA::Boolean POA_IR::EventDef_tie<T>::is_a (
+ const char * event_id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->is_a (
+event_id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueDef_ptr POA_IR::EventDef_tie<T>::event (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->event (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::EventDef_tie<T>::id (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->id (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::EventDef_tie<T>::id (
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->id (
+id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::EventDef_tie<T>::name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::EventDef_tie<T>::name (
+ const char * name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->name (
+name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::EventDef_tie<T>::version (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->version (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::EventDef_tie<T>::version (
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->version (
+version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container_ptr POA_IR::EventDef_tie<T>::defined_in (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->defined_in (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::EventDef_tie<T>::absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->absolute_name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Repository_ptr POA_IR::EventDef_tie<T>::containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->containing_repository (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained::Description * POA_IR::EventDef_tie<T>::describe (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::EventDef_tie<T>::move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->move (
+new_container,
+ new_name,
+ new_version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_IR::EventDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::EventDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_IR::EmitsDef_tie<T>::EmitsDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::EmitsDef_tie<T>::EmitsDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::EmitsDef_tie<T>::EmitsDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::EmitsDef_tie<T>::EmitsDef_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_IR::EmitsDef_tie<T>::~EmitsDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_IR::EmitsDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_IR::EmitsDef_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_IR::EmitsDef_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_IR::EmitsDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_IR::EmitsDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_IR::EmitsDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->EmitsDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA::Boolean POA_IR::EmitsDef_tie<T>::is_a (
+ const char * event_id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->is_a (
+event_id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueDef_ptr POA_IR::EmitsDef_tie<T>::event (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->event (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::EmitsDef_tie<T>::id (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->id (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::EmitsDef_tie<T>::id (
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->id (
+id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::EmitsDef_tie<T>::name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::EmitsDef_tie<T>::name (
+ const char * name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->name (
+name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::EmitsDef_tie<T>::version (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->version (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::EmitsDef_tie<T>::version (
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->version (
+version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container_ptr POA_IR::EmitsDef_tie<T>::defined_in (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->defined_in (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::EmitsDef_tie<T>::absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->absolute_name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Repository_ptr POA_IR::EmitsDef_tie<T>::containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->containing_repository (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained::Description * POA_IR::EmitsDef_tie<T>::describe (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::EmitsDef_tie<T>::move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->move (
+new_container,
+ new_name,
+ new_version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_IR::EmitsDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::EmitsDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_IR::PublishesDef_tie<T>::PublishesDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::PublishesDef_tie<T>::PublishesDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::PublishesDef_tie<T>::PublishesDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::PublishesDef_tie<T>::PublishesDef_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_IR::PublishesDef_tie<T>::~PublishesDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_IR::PublishesDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_IR::PublishesDef_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_IR::PublishesDef_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_IR::PublishesDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_IR::PublishesDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_IR::PublishesDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->PublishesDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA::Boolean POA_IR::PublishesDef_tie<T>::is_a (
+ const char * event_id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->is_a (
+event_id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueDef_ptr POA_IR::PublishesDef_tie<T>::event (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->event (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::PublishesDef_tie<T>::id (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->id (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::PublishesDef_tie<T>::id (
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->id (
+id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::PublishesDef_tie<T>::name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::PublishesDef_tie<T>::name (
+ const char * name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->name (
+name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::PublishesDef_tie<T>::version (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->version (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::PublishesDef_tie<T>::version (
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->version (
+version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container_ptr POA_IR::PublishesDef_tie<T>::defined_in (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->defined_in (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::PublishesDef_tie<T>::absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->absolute_name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Repository_ptr POA_IR::PublishesDef_tie<T>::containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->containing_repository (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained::Description * POA_IR::PublishesDef_tie<T>::describe (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::PublishesDef_tie<T>::move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->move (
+new_container,
+ new_name,
+ new_version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_IR::PublishesDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::PublishesDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_IR::ConsumesDef_tie<T>::ConsumesDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::ConsumesDef_tie<T>::ConsumesDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::ConsumesDef_tie<T>::ConsumesDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::ConsumesDef_tie<T>::ConsumesDef_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_IR::ConsumesDef_tie<T>::~ConsumesDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_IR::ConsumesDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_IR::ConsumesDef_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_IR::ConsumesDef_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_IR::ConsumesDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_IR::ConsumesDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_IR::ConsumesDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->ConsumesDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA::Boolean POA_IR::ConsumesDef_tie<T>::is_a (
+ const char * event_id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->is_a (
+event_id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueDef_ptr POA_IR::ConsumesDef_tie<T>::event (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->event (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::ConsumesDef_tie<T>::id (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->id (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::ConsumesDef_tie<T>::id (
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->id (
+id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::ConsumesDef_tie<T>::name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::ConsumesDef_tie<T>::name (
+ const char * name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->name (
+name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::ConsumesDef_tie<T>::version (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->version (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::ConsumesDef_tie<T>::version (
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->version (
+version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container_ptr POA_IR::ConsumesDef_tie<T>::defined_in (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->defined_in (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::ConsumesDef_tie<T>::absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->absolute_name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Repository_ptr POA_IR::ConsumesDef_tie<T>::containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->containing_repository (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained::Description * POA_IR::ConsumesDef_tie<T>::describe (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::ConsumesDef_tie<T>::move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->move (
+new_container,
+ new_name,
+ new_version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_IR::ConsumesDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::ConsumesDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_IR::ComponentDef_tie<T>::ComponentDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::ComponentDef_tie<T>::ComponentDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::ComponentDef_tie<T>::ComponentDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::ComponentDef_tie<T>::ComponentDef_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_IR::ComponentDef_tie<T>::~ComponentDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_IR::ComponentDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_IR::ComponentDef_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_IR::ComponentDef_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_IR::ComponentDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_IR::ComponentDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_IR::ComponentDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->ComponentDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA_InterfaceDefSeq * POA_IR::ComponentDef_tie<T>::supported_interfaces (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->supported_interfaces (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::ComponentDef_tie<T>::supported_interfaces (
+ const CORBA_InterfaceDefSeq & supported_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->supported_interfaces (
+supported_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+IR::ComponentDef_ptr POA_IR::ComponentDef_tie<T>::base_component (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->base_component (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+IR::ProvidesDefSeq * POA_IR::ComponentDef_tie<T>::provides_interfaces (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->provides_interfaces (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+IR::UsesDefSeq * POA_IR::ComponentDef_tie<T>::uses_interfaces (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->uses_interfaces (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+IR::EmitsDefSeq * POA_IR::ComponentDef_tie<T>::emits_events (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->emits_events (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+IR::PublishesDefSeq * POA_IR::ComponentDef_tie<T>::publishes_events (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->publishes_events (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+IR::ConsumesDefSeq * POA_IR::ComponentDef_tie<T>::consumes_events (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->consumes_events (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::Boolean POA_IR::ComponentDef_tie<T>::is_basic (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->is_basic (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+IR::ProvidesDef_ptr POA_IR::ComponentDef_tie<T>::create_provides (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_InterfaceDef_ptr interface_type
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_provides (
+id,
+ name,
+ version,
+ interface_type
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+IR::UsesDef_ptr POA_IR::ComponentDef_tie<T>::create_uses (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_InterfaceDef_ptr interface_type,
+ CORBA::Boolean is_multiple
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_uses (
+id,
+ name,
+ version,
+ interface_type,
+ is_multiple
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+IR::EmitsDef_ptr POA_IR::ComponentDef_tie<T>::create_emits (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_ValueDef_ptr value
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_emits (
+id,
+ name,
+ version,
+ value
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+IR::PublishesDef_ptr POA_IR::ComponentDef_tie<T>::create_publishes (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_ValueDef_ptr value
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_publishes (
+id,
+ name,
+ version,
+ value
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+IR::ConsumesDef_ptr POA_IR::ComponentDef_tie<T>::create_consumes (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_ValueDef_ptr value
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_consumes (
+id,
+ name,
+ version,
+ value
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_InterfaceDefSeq * POA_IR::ComponentDef_tie<T>::base_interfaces (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->base_interfaces (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::ComponentDef_tie<T>::base_interfaces (
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->base_interfaces (
+base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::Boolean POA_IR::ComponentDef_tie<T>::is_a (
+ const char * interface_id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->is_a (
+interface_id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_InterfaceDef::FullInterfaceDescription * POA_IR::ComponentDef_tie<T>::describe_interface (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe_interface (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_AttributeDef_ptr POA_IR::ComponentDef_tie<T>::create_attribute (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_attribute (
+id,
+ name,
+ version,
+ type,
+ mode
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_OperationDef_ptr POA_IR::ComponentDef_tie<T>::create_operation (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr result,
+ CORBA::OperationMode mode,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions,
+ const CORBA_ContextIdSeq & contexts
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_operation (
+id,
+ name,
+ version,
+ result,
+ mode,
+ params,
+ exceptions,
+ contexts
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained_ptr POA_IR::ComponentDef_tie<T>::lookup (
+ const char * search_name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->lookup (
+search_name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ContainedSeq * POA_IR::ComponentDef_tie<T>::contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->contents (
+limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ContainedSeq * POA_IR::ComponentDef_tie<T>::lookup_name (
+ const char * search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->lookup_name (
+search_name,
+ levels_to_search,
+ limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container::DescriptionSeq * POA_IR::ComponentDef_tie<T>::describe_contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited,
+ CORBA::Long max_returned_objs
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe_contents (
+limit_type,
+ exclude_inherited,
+ max_returned_objs
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ModuleDef_ptr POA_IR::ComponentDef_tie<T>::create_module (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_module (
+id,
+ name,
+ version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ConstantDef_ptr POA_IR::ComponentDef_tie<T>::create_constant (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_constant (
+id,
+ name,
+ version,
+ type,
+ value
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_StructDef_ptr POA_IR::ComponentDef_tie<T>::create_struct (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_struct (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_UnionDef_ptr POA_IR::ComponentDef_tie<T>::create_union (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_union (
+id,
+ name,
+ version,
+ discriminator_type,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_EnumDef_ptr POA_IR::ComponentDef_tie<T>::create_enum (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_enum (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_AliasDef_ptr POA_IR::ComponentDef_tie<T>::create_alias (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_alias (
+id,
+ name,
+ version,
+ original_type
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_InterfaceDef_ptr POA_IR::ComponentDef_tie<T>::create_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueDef_ptr POA_IR::ComponentDef_tie<T>::create_value (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA::Boolean is_custom,
+ CORBA::Boolean is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ CORBA::Boolean is_truncatable,
+ const CORBA_ValueDefSeq & abstract_base_values,
+ const CORBA_InterfaceDefSeq & supported_interfaces,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_value (
+id,
+ name,
+ version,
+ is_custom,
+ is_abstract,
+ base_value,
+ is_truncatable,
+ abstract_base_values,
+ supported_interfaces,
+ initializers
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueBoxDef_ptr POA_IR::ComponentDef_tie<T>::create_value_box (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_value_box (
+id,
+ name,
+ version,
+ original_type_def
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ExceptionDef_ptr POA_IR::ComponentDef_tie<T>::create_exception (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_exception (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_NativeDef_ptr POA_IR::ComponentDef_tie<T>::create_native (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_native (
+id,
+ name,
+ version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_AbstractInterfaceDef_ptr POA_IR::ComponentDef_tie<T>::create_abstract_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_AbstractInterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_abstract_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_LocalInterfaceDef_ptr POA_IR::ComponentDef_tie<T>::create_local_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_local_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::ComponentDef_tie<T>::id (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->id (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::ComponentDef_tie<T>::id (
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->id (
+id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::ComponentDef_tie<T>::name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::ComponentDef_tie<T>::name (
+ const char * name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->name (
+name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::ComponentDef_tie<T>::version (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->version (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::ComponentDef_tie<T>::version (
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->version (
+version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container_ptr POA_IR::ComponentDef_tie<T>::defined_in (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->defined_in (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::ComponentDef_tie<T>::absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->absolute_name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Repository_ptr POA_IR::ComponentDef_tie<T>::containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->containing_repository (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained::Description * POA_IR::ComponentDef_tie<T>::describe (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::ComponentDef_tie<T>::move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->move (
+new_container,
+ new_name,
+ new_version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::TypeCode_ptr POA_IR::ComponentDef_tie<T>::type (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_IR::ComponentDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::ComponentDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_IR::PrimaryKeyDef_tie<T>::PrimaryKeyDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::PrimaryKeyDef_tie<T>::PrimaryKeyDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::PrimaryKeyDef_tie<T>::PrimaryKeyDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::PrimaryKeyDef_tie<T>::PrimaryKeyDef_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_IR::PrimaryKeyDef_tie<T>::~PrimaryKeyDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_IR::PrimaryKeyDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_IR::PrimaryKeyDef_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_IR::PrimaryKeyDef_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_IR::PrimaryKeyDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_IR::PrimaryKeyDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_IR::PrimaryKeyDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->PrimaryKeyDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA::Boolean POA_IR::PrimaryKeyDef_tie<T>::is_a (
+ const char * primary_key_id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->is_a (
+primary_key_id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueDef_ptr POA_IR::PrimaryKeyDef_tie<T>::primary_key (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->primary_key (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::PrimaryKeyDef_tie<T>::id (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->id (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::PrimaryKeyDef_tie<T>::id (
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->id (
+id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::PrimaryKeyDef_tie<T>::name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::PrimaryKeyDef_tie<T>::name (
+ const char * name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->name (
+name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::PrimaryKeyDef_tie<T>::version (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->version (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::PrimaryKeyDef_tie<T>::version (
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->version (
+version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container_ptr POA_IR::PrimaryKeyDef_tie<T>::defined_in (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->defined_in (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::PrimaryKeyDef_tie<T>::absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->absolute_name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Repository_ptr POA_IR::PrimaryKeyDef_tie<T>::containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->containing_repository (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained::Description * POA_IR::PrimaryKeyDef_tie<T>::describe (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::PrimaryKeyDef_tie<T>::move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->move (
+new_container,
+ new_name,
+ new_version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_IR::PrimaryKeyDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::PrimaryKeyDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_IR::FactoryDef_tie<T>::FactoryDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::FactoryDef_tie<T>::FactoryDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::FactoryDef_tie<T>::FactoryDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::FactoryDef_tie<T>::FactoryDef_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_IR::FactoryDef_tie<T>::~FactoryDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_IR::FactoryDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_IR::FactoryDef_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_IR::FactoryDef_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_IR::FactoryDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_IR::FactoryDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_IR::FactoryDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->FactoryDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA::TypeCode_ptr POA_IR::FactoryDef_tie<T>::result (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->result (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_IDLType_ptr POA_IR::FactoryDef_tie<T>::result_def (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->result_def (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::FactoryDef_tie<T>::result_def (
+ CORBA_IDLType_ptr result_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->result_def (
+result_def
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ParDescriptionSeq * POA_IR::FactoryDef_tie<T>::params (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->params (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::FactoryDef_tie<T>::params (
+ const CORBA_ParDescriptionSeq & params
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->params (
+params
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::OperationMode POA_IR::FactoryDef_tie<T>::mode (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->mode (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::FactoryDef_tie<T>::mode (
+ CORBA::OperationMode mode
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->mode (
+mode
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ContextIdSeq * POA_IR::FactoryDef_tie<T>::contexts (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->contexts (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::FactoryDef_tie<T>::contexts (
+ const CORBA_ContextIdSeq & contexts
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->contexts (
+contexts
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ExceptionDefSeq * POA_IR::FactoryDef_tie<T>::exceptions (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->exceptions (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::FactoryDef_tie<T>::exceptions (
+ const CORBA_ExceptionDefSeq & exceptions
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->exceptions (
+exceptions
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::FactoryDef_tie<T>::id (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->id (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::FactoryDef_tie<T>::id (
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->id (
+id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::FactoryDef_tie<T>::name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::FactoryDef_tie<T>::name (
+ const char * name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->name (
+name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::FactoryDef_tie<T>::version (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->version (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::FactoryDef_tie<T>::version (
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->version (
+version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container_ptr POA_IR::FactoryDef_tie<T>::defined_in (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->defined_in (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::FactoryDef_tie<T>::absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->absolute_name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Repository_ptr POA_IR::FactoryDef_tie<T>::containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->containing_repository (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained::Description * POA_IR::FactoryDef_tie<T>::describe (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::FactoryDef_tie<T>::move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->move (
+new_container,
+ new_name,
+ new_version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_IR::FactoryDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::FactoryDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_IR::FinderDef_tie<T>::FinderDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::FinderDef_tie<T>::FinderDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::FinderDef_tie<T>::FinderDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::FinderDef_tie<T>::FinderDef_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_IR::FinderDef_tie<T>::~FinderDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_IR::FinderDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_IR::FinderDef_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_IR::FinderDef_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_IR::FinderDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_IR::FinderDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_IR::FinderDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->FinderDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA::TypeCode_ptr POA_IR::FinderDef_tie<T>::result (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->result (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_IDLType_ptr POA_IR::FinderDef_tie<T>::result_def (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->result_def (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::FinderDef_tie<T>::result_def (
+ CORBA_IDLType_ptr result_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->result_def (
+result_def
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ParDescriptionSeq * POA_IR::FinderDef_tie<T>::params (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->params (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::FinderDef_tie<T>::params (
+ const CORBA_ParDescriptionSeq & params
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->params (
+params
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::OperationMode POA_IR::FinderDef_tie<T>::mode (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->mode (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::FinderDef_tie<T>::mode (
+ CORBA::OperationMode mode
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->mode (
+mode
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ContextIdSeq * POA_IR::FinderDef_tie<T>::contexts (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->contexts (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::FinderDef_tie<T>::contexts (
+ const CORBA_ContextIdSeq & contexts
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->contexts (
+contexts
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ExceptionDefSeq * POA_IR::FinderDef_tie<T>::exceptions (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->exceptions (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::FinderDef_tie<T>::exceptions (
+ const CORBA_ExceptionDefSeq & exceptions
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->exceptions (
+exceptions
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::FinderDef_tie<T>::id (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->id (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::FinderDef_tie<T>::id (
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->id (
+id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::FinderDef_tie<T>::name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::FinderDef_tie<T>::name (
+ const char * name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->name (
+name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::FinderDef_tie<T>::version (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->version (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::FinderDef_tie<T>::version (
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->version (
+version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container_ptr POA_IR::FinderDef_tie<T>::defined_in (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->defined_in (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::FinderDef_tie<T>::absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->absolute_name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Repository_ptr POA_IR::FinderDef_tie<T>::containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->containing_repository (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained::Description * POA_IR::FinderDef_tie<T>::describe (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::FinderDef_tie<T>::move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->move (
+new_container,
+ new_name,
+ new_version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_IR::FinderDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::FinderDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_IR::HomeDef_tie<T>::HomeDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::HomeDef_tie<T>::HomeDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::HomeDef_tie<T>::HomeDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_IR::HomeDef_tie<T>::HomeDef_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_IR::HomeDef_tie<T>::~HomeDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_IR::HomeDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_IR::HomeDef_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_IR::HomeDef_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_IR::HomeDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_IR::HomeDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_IR::HomeDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->HomeDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+IR::HomeDef_ptr POA_IR::HomeDef_tie<T>::base_home (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->base_home (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+IR::ComponentDef_ptr POA_IR::HomeDef_tie<T>::managed_component (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->managed_component (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+IR::PrimaryKeyDef_ptr POA_IR::HomeDef_tie<T>::primary_key (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->primary_key (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+IR::FactoryDefSeq * POA_IR::HomeDef_tie<T>::factories (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->factories (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+IR::FinderDefSeq * POA_IR::HomeDef_tie<T>::finders (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->finders (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::Boolean POA_IR::HomeDef_tie<T>::is_basic (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->is_basic (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+IR::PrimaryKeyDef_ptr POA_IR::HomeDef_tie<T>::create_primary_key (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_ValueDef_ptr primary_key
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_primary_key (
+id,
+ name,
+ version,
+ primary_key
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+IR::FactoryDef_ptr POA_IR::HomeDef_tie<T>::create_factory (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_factory (
+id,
+ name,
+ version,
+ params,
+ exceptions
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+IR::FinderDef_ptr POA_IR::HomeDef_tie<T>::create_finder (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_finder (
+id,
+ name,
+ version,
+ params,
+ exceptions
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_InterfaceDefSeq * POA_IR::HomeDef_tie<T>::base_interfaces (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->base_interfaces (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::HomeDef_tie<T>::base_interfaces (
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->base_interfaces (
+base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::Boolean POA_IR::HomeDef_tie<T>::is_a (
+ const char * interface_id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->is_a (
+interface_id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_InterfaceDef::FullInterfaceDescription * POA_IR::HomeDef_tie<T>::describe_interface (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe_interface (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_AttributeDef_ptr POA_IR::HomeDef_tie<T>::create_attribute (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_attribute (
+id,
+ name,
+ version,
+ type,
+ mode
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_OperationDef_ptr POA_IR::HomeDef_tie<T>::create_operation (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr result,
+ CORBA::OperationMode mode,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions,
+ const CORBA_ContextIdSeq & contexts
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_operation (
+id,
+ name,
+ version,
+ result,
+ mode,
+ params,
+ exceptions,
+ contexts
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained_ptr POA_IR::HomeDef_tie<T>::lookup (
+ const char * search_name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->lookup (
+search_name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ContainedSeq * POA_IR::HomeDef_tie<T>::contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->contents (
+limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ContainedSeq * POA_IR::HomeDef_tie<T>::lookup_name (
+ const char * search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->lookup_name (
+search_name,
+ levels_to_search,
+ limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container::DescriptionSeq * POA_IR::HomeDef_tie<T>::describe_contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited,
+ CORBA::Long max_returned_objs
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe_contents (
+limit_type,
+ exclude_inherited,
+ max_returned_objs
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ModuleDef_ptr POA_IR::HomeDef_tie<T>::create_module (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_module (
+id,
+ name,
+ version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ConstantDef_ptr POA_IR::HomeDef_tie<T>::create_constant (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_constant (
+id,
+ name,
+ version,
+ type,
+ value
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_StructDef_ptr POA_IR::HomeDef_tie<T>::create_struct (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_struct (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_UnionDef_ptr POA_IR::HomeDef_tie<T>::create_union (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_union (
+id,
+ name,
+ version,
+ discriminator_type,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_EnumDef_ptr POA_IR::HomeDef_tie<T>::create_enum (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_enum (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_AliasDef_ptr POA_IR::HomeDef_tie<T>::create_alias (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_alias (
+id,
+ name,
+ version,
+ original_type
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_InterfaceDef_ptr POA_IR::HomeDef_tie<T>::create_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueDef_ptr POA_IR::HomeDef_tie<T>::create_value (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA::Boolean is_custom,
+ CORBA::Boolean is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ CORBA::Boolean is_truncatable,
+ const CORBA_ValueDefSeq & abstract_base_values,
+ const CORBA_InterfaceDefSeq & supported_interfaces,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_value (
+id,
+ name,
+ version,
+ is_custom,
+ is_abstract,
+ base_value,
+ is_truncatable,
+ abstract_base_values,
+ supported_interfaces,
+ initializers
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueBoxDef_ptr POA_IR::HomeDef_tie<T>::create_value_box (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_value_box (
+id,
+ name,
+ version,
+ original_type_def
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ExceptionDef_ptr POA_IR::HomeDef_tie<T>::create_exception (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_exception (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_NativeDef_ptr POA_IR::HomeDef_tie<T>::create_native (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_native (
+id,
+ name,
+ version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_AbstractInterfaceDef_ptr POA_IR::HomeDef_tie<T>::create_abstract_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_AbstractInterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_abstract_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_LocalInterfaceDef_ptr POA_IR::HomeDef_tie<T>::create_local_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_local_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::HomeDef_tie<T>::id (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->id (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::HomeDef_tie<T>::id (
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->id (
+id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::HomeDef_tie<T>::name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::HomeDef_tie<T>::name (
+ const char * name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->name (
+name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::HomeDef_tie<T>::version (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->version (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::HomeDef_tie<T>::version (
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->version (
+version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container_ptr POA_IR::HomeDef_tie<T>::defined_in (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->defined_in (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_IR::HomeDef_tie<T>::absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->absolute_name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Repository_ptr POA_IR::HomeDef_tie<T>::containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->containing_repository (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained::Description * POA_IR::HomeDef_tie<T>::describe (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::HomeDef_tie<T>::move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->move (
+new_container,
+ new_name,
+ new_version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::TypeCode_ptr POA_IR::HomeDef_tie<T>::type (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_IR::HomeDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_IR::HomeDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+#endif /* ACE_HAS_USING_KEYWORD */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IFR_ExtendedS.cpp b/TAO/orbsvcs/orbsvcs/IFRService/IFR_ExtendedS.cpp
new file mode 100644
index 00000000000..66afb133074
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_ExtendedS.cpp
@@ -0,0 +1,9173 @@
+// -*- C++ -*-
+//
+// $Id$
+
+// **** Code generated by the The ACE ORB (TAO) IDL Compiler ****
+// TAO and the TAO IDL Compiler have been developed by:
+// Center for Distributed Object Computing
+// Washington University
+// St. Louis, MO
+// USA
+// http://www.cs.wustl.edu/~schmidt/doc-center.html
+// and
+// Distributed Object Computing Laboratory
+// University of California at Irvine
+// Irvine, CA
+// USA
+// http://doc.ece.uci.edu/
+//
+// Information about TAO is available at:
+// http://www.cs.wustl.edu/~schmidt/TAO.html
+
+#ifndef _TAO_IDL__________ORBSVCS_IFR_SERVICE_ORIG_IFR_EXTENDEDS_CPP_
+#define _TAO_IDL__________ORBSVCS_IFR_SERVICE_ORIG_IFR_EXTENDEDS_CPP_
+
+#include "IFR_ExtendedS.h"
+
+#include "tao/PortableServer/Object_Adapter.h"
+#include "tao/PortableServer/Operation_Table.h"
+#include "tao/TAO_Server_Request.h"
+#include "tao/ORB_Core.h"
+#include "tao/Stub.h"
+#include "tao/IFR_Client_Adapter.h"
+#include "tao/PortableInterceptor.h"
+
+#if TAO_HAS_INTERCEPTORS == 1
+#include "tao/RequestInfo_Util.h"
+#include "tao/PortableServer/ServerRequestInfo.h"
+#include "tao/PortableServer/ServerInterceptorAdapter.h"
+#endif /* TAO_HAS_INTERCEPTORS == 1 */
+
+#include "ace/Dynamic_Service.h"
+#if defined (__BORLANDC__)
+#pragma option -w-rvl -w-rch -w-ccc -w-aus
+#endif /* __BORLANDC__ */
+
+#if !defined (__ACE_INLINE__)
+#include "IFR_ExtendedS.i"
+#endif /* !defined INLINE */
+
+class TAO_CORBA_FixedDef_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 23:00:03 */
+/* C++ code produced by gperf version 2.8 (ACE version) */
+/* Command-line: gperf -m -M -J -c -C -D -E -T -f 0 -F 0 -a -o -t -p -K opname_ -L C++ -Z TAO_CORBA_FixedDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_CORBA_FixedDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 0,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 0,
+ 19, 19, 0, 0, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 0, 5, 19, 19, 19, 19, 0, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19,
+#else
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 0, 19, 0, 19, 19,
+ 0, 0, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 0, 5, 19, 19, 19,
+ 19, 0, 19, 19, 19, 19, 19, 19,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_CORBA_FixedDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 10,
+ MIN_WORD_LENGTH = 5,
+ MAX_WORD_LENGTH = 13,
+ MIN_HASH_VALUE = 5,
+ MAX_HASH_VALUE = 18,
+ HASH_VALUE_RANGE = 14,
+ DUPLICATES = 4,
+ WORDLIST_SIZE = 15
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},{"",0},
+ {"_is_a", &POA_CORBA_FixedDef::_is_a_skel},
+ {"destroy", &POA_CORBA_FixedDef::destroy_skel},
+ {"_get_type", &POA_CORBA_FixedDef::_get_type_skel},
+ {"_get_scale", &POA_CORBA_FixedDef::_get_scale_skel},
+ {"_interface", &POA_CORBA_FixedDef::_interface_skel},
+ {"_set_scale", &POA_CORBA_FixedDef::_set_scale_skel},
+ {"_get_digits", &POA_CORBA_FixedDef::_get_digits_skel},
+ {"_set_digits", &POA_CORBA_FixedDef::_set_digits_skel},
+ {"_get_def_kind", &POA_CORBA_FixedDef::_get_def_kind_skel},
+ {"_non_existent", &POA_CORBA_FixedDef::_non_existent_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -1, -8, -3, -11, -2, 5, -1, 6, -1, 7, -27, -26, -1, 13,
+ -1, -1, -1, -1, 14,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < WORDLIST_SIZE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 23:00:03 */
+static TAO_CORBA_FixedDef_Perfect_Hash_OpTable tao_CORBA_FixedDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+class TAO_ServerRequestInfo_CORBA_FixedDef_digits_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_FixedDef_digits_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_FixedDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA::UShort result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_FixedDef_digits_get (const TAO_ServerRequestInfo_CORBA_FixedDef_digits_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_FixedDef_digits_get &);
+
+private:
+ POA_CORBA_FixedDef *_tao_impl;
+ CORBA::UShort _result;
+};
+
+TAO_ServerRequestInfo_CORBA_FixedDef_digits_get::TAO_ServerRequestInfo_CORBA_FixedDef_digits_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_FixedDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_FixedDef_digits_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_FixedDef_digits_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_FixedDef_digits_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_FixedDef_digits_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_FixedDef_digits_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_FixedDef_digits_get::result (CORBA::UShort result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_FixedDef_digits_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_FixedDef_digits_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_FixedDef *tao_impl
+ ,
+ const CORBA::UShort & digits
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_FixedDef_digits_set (const TAO_ServerRequestInfo_CORBA_FixedDef_digits_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_FixedDef_digits_set &);
+
+private:
+ POA_CORBA_FixedDef *_tao_impl;
+ const CORBA::UShort & digits_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_FixedDef_digits_set::TAO_ServerRequestInfo_CORBA_FixedDef_digits_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_FixedDef *tao_impl,
+ const CORBA::UShort & digits
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ digits_ (digits)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_FixedDef_digits_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= digits_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_FixedDef_digits_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_FixedDef_digits_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_FixedDef_digits_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_FixedDef_digits_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+class TAO_ServerRequestInfo_CORBA_FixedDef_scale_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_FixedDef_scale_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_FixedDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA::Short result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_FixedDef_scale_get (const TAO_ServerRequestInfo_CORBA_FixedDef_scale_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_FixedDef_scale_get &);
+
+private:
+ POA_CORBA_FixedDef *_tao_impl;
+ CORBA::Short _result;
+};
+
+TAO_ServerRequestInfo_CORBA_FixedDef_scale_get::TAO_ServerRequestInfo_CORBA_FixedDef_scale_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_FixedDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_FixedDef_scale_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_FixedDef_scale_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_FixedDef_scale_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_FixedDef_scale_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_FixedDef_scale_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_FixedDef_scale_get::result (CORBA::Short result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_FixedDef_scale_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_FixedDef_scale_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_FixedDef *tao_impl
+ ,
+ const CORBA::Short & scale
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_FixedDef_scale_set (const TAO_ServerRequestInfo_CORBA_FixedDef_scale_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_FixedDef_scale_set &);
+
+private:
+ POA_CORBA_FixedDef *_tao_impl;
+ const CORBA::Short & scale_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_FixedDef_scale_set::TAO_ServerRequestInfo_CORBA_FixedDef_scale_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_FixedDef *tao_impl,
+ const CORBA::Short & scale
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ scale_ (scale)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_FixedDef_scale_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= scale_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_FixedDef_scale_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_FixedDef_scale_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_FixedDef_scale_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_FixedDef_scale_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+_TAO_CORBA_FixedDef_Strategized_Proxy_Broker *_TAO_CORBA_FixedDef_Strategized_Proxy_Broker::the_TAO_CORBA_FixedDef_Strategized_Proxy_Broker (void)
+{
+ static _TAO_CORBA_FixedDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+_TAO_CORBA_FixedDef_Strategized_Proxy_Broker::_TAO_CORBA_FixedDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+_TAO_CORBA_FixedDef_Strategized_Proxy_Broker::~_TAO_CORBA_FixedDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+_TAO_CORBA_FixedDef_Proxy_Impl&
+_TAO_CORBA_FixedDef_Strategized_Proxy_Broker::select_proxy (
+ ::CORBA_FixedDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+_TAO_CORBA_FixedDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ _TAO_CORBA_FixedDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::_TAO_CORBA_FixedDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+_TAO_CORBA_FixedDef_Proxy_Broker *
+_TAO_CORBA_FixedDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::_TAO_CORBA_FixedDef_Strategized_Proxy_Broker::the_TAO_CORBA_FixedDef_Strategized_Proxy_Broker();
+}
+
+int
+_TAO_CORBA_FixedDef_Proxy_Broker_Factory_Initializer (long)
+{
+ _TAO_CORBA_FixedDef_Proxy_Broker_Factory_function_pointer =
+ _TAO_CORBA_FixedDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int _TAO_CORBA_FixedDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ _TAO_CORBA_FixedDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, _TAO_CORBA_FixedDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+_TAO_CORBA_FixedDef_ThruPOA_Proxy_Impl::_TAO_CORBA_FixedDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+CORBA::UShort _TAO_CORBA_FixedDef_ThruPOA_Proxy_Impl::digits (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::UShort _tao_retval = 0;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "digits",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (_tao_retval);
+ return ACE_reinterpret_cast (
+ POA_CORBA_FixedDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/FixedDef:1.0"
+ )
+ )->digits (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_FixedDef_ThruPOA_Proxy_Impl::digits (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::UShort digits
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "digits",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_FixedDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/FixedDef:1.0"
+ )
+ )->digits (
+ digits
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+CORBA::Short _TAO_CORBA_FixedDef_ThruPOA_Proxy_Impl::scale (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::Short _tao_retval = 0;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "scale",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (_tao_retval);
+ return ACE_reinterpret_cast (
+ POA_CORBA_FixedDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/FixedDef:1.0"
+ )
+ )->scale (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_FixedDef_ThruPOA_Proxy_Impl::scale (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::Short scale
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "scale",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_FixedDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/FixedDef:1.0"
+ )
+ )->scale (
+ scale
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_CORBA_FixedDef::POA_CORBA_FixedDef (void)
+{
+ this->optable_ = &tao_CORBA_FixedDef_optable;
+}
+
+// copy ctor
+POA_CORBA_FixedDef::POA_CORBA_FixedDef (const POA_CORBA_FixedDef& rhs)
+ : POA_CORBA_IDLType (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_CORBA_FixedDef::~POA_CORBA_FixedDef (void)
+{
+}
+
+void POA_CORBA_FixedDef::_get_digits_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_FixedDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_FixedDef *, _tao_object_reference);
+
+ CORBA::UShort _tao_retval = 0;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_FixedDef_digits_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->digits (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA::UShort _tao_retval_info = _tao_retval;
+ ri.result (_tao_retval_info);
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_FixedDef::_set_digits_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_FixedDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_FixedDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA::UShort digits;
+ if (!(
+ (_tao_in >> digits)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_FixedDef_digits_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ digits
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->digits (
+ digits
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_FixedDef::_get_scale_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_FixedDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_FixedDef *, _tao_object_reference);
+
+ CORBA::Short _tao_retval = 0;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_FixedDef_scale_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->scale (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA::Short _tao_retval_info = _tao_retval;
+ ri.result (_tao_retval_info);
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_FixedDef::_set_scale_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_FixedDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_FixedDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA::Short scale;
+ if (!(
+ (_tao_in >> scale)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_FixedDef_scale_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ scale
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->scale (
+ scale
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_FixedDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_FixedDef *_tao_impl = (POA_CORBA_FixedDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_FixedDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_FixedDef *_tao_impl = (POA_CORBA_FixedDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_FixedDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_FixedDef *_tao_impl = (POA_CORBA_FixedDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_CORBA_FixedDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/FixedDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IDLType:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_CORBA_FixedDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/FixedDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_FixedDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IDLType:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IDLType_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Object:1.0") == 0)
+ return ACE_static_cast(PortableServer::Servant, this);
+ return 0;
+}
+
+void POA_CORBA_FixedDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_CORBA_FixedDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/CORBA/FixedDef:1.0";
+}
+
+CORBA_FixedDef*
+POA_CORBA_FixedDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::CORBA_FixedDef::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_CORBA_ValueMemberDef_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 23:00:04 */
+/* C++ code produced by gperf version 2.8 (ACE version) */
+/* Command-line: gperf -m -M -J -c -C -D -E -T -f 0 -F 0 -a -o -t -p -K opname_ -L C++ -Z TAO_CORBA_ValueMemberDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_CORBA_ValueMemberDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 0, 0, 10, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 0, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 0, 15, 37, 37, 37, 37, 10, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37,
+#else
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 0, 37, 0, 37, 37,
+ 0, 0, 10, 37, 37, 37, 37, 37, 37, 0,
+ 0, 37, 37, 37, 37, 0, 15, 37, 37, 37,
+ 37, 10, 37, 37, 37, 37, 37, 37,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_CORBA_ValueMemberDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 21,
+ MIN_WORD_LENGTH = 4,
+ MAX_WORD_LENGTH = 26,
+ MIN_HASH_VALUE = 4,
+ MAX_HASH_VALUE = 36,
+ HASH_VALUE_RANGE = 33,
+ DUPLICATES = 7,
+ WORDLIST_SIZE = 25
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},
+ {"move", &POA_CORBA_ValueMemberDef::move_skel},
+ {"_is_a", &POA_CORBA_ValueMemberDef::_is_a_skel},
+ {"_get_id", &POA_CORBA_ValueMemberDef::_get_id_skel},
+ {"_set_id", &POA_CORBA_ValueMemberDef::_set_id_skel},
+ {"describe", &POA_CORBA_ValueMemberDef::describe_skel},
+ {"_get_type", &POA_CORBA_ValueMemberDef::_get_type_skel},
+ {"_set_name", &POA_CORBA_ValueMemberDef::_set_name_skel},
+ {"_get_name", &POA_CORBA_ValueMemberDef::_get_name_skel},
+ {"_interface", &POA_CORBA_ValueMemberDef::_interface_skel},
+ {"_get_access", &POA_CORBA_ValueMemberDef::_get_access_skel},
+ {"_set_access", &POA_CORBA_ValueMemberDef::_set_access_skel},
+ {"_get_version", &POA_CORBA_ValueMemberDef::_get_version_skel},
+ {"_set_version", &POA_CORBA_ValueMemberDef::_set_version_skel},
+ {"_get_def_kind", &POA_CORBA_ValueMemberDef::_get_def_kind_skel},
+ {"_get_defined_in", &POA_CORBA_ValueMemberDef::_get_defined_in_skel},
+ {"destroy", &POA_CORBA_ValueMemberDef::destroy_skel},
+ {"_get_absolute_name", &POA_CORBA_ValueMemberDef::_get_absolute_name_skel},
+ {"_get_type_def", &POA_CORBA_ValueMemberDef::_get_type_def_skel},
+ {"_set_type_def", &POA_CORBA_ValueMemberDef::_set_type_def_skel},
+ {"_non_existent", &POA_CORBA_ValueMemberDef::_non_existent_skel},
+ {"_get_containing_repository", &POA_CORBA_ValueMemberDef::_get_containing_repository_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -13, -2, -15, -2, 4, 5, -1, 53, 8, 46, 12, -47, -46, 17,
+ -1, 18, -1, 19, 20, -9, -3, -21, -2, -38, -6, -2, -1, -1,
+ 23, -1, -1, -1, -1, -1, -1, -1, 24,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < WORDLIST_SIZE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 23:00:04 */
+static TAO_CORBA_ValueMemberDef_Perfect_Hash_OpTable tao_CORBA_ValueMemberDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+class TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ValueMemberDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA::TypeCode_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_get (const TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_get &);
+
+private:
+ POA_CORBA_ValueMemberDef *_tao_impl;
+ CORBA::TypeCode_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_get::TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ValueMemberDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_get::result (CORBA::TypeCode_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_def_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_def_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ValueMemberDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_IDLType_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_def_get (const TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_def_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_def_get &);
+
+private:
+ POA_CORBA_ValueMemberDef *_tao_impl;
+ CORBA_IDLType_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_def_get::TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_def_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ValueMemberDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_def_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_def_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_def_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_def_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_def_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_def_get::result (CORBA_IDLType_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_def_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_def_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ValueMemberDef *tao_impl
+ ,
+ CORBA_IDLType_ptr type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_def_set (const TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_def_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_def_set &);
+
+private:
+ POA_CORBA_ValueMemberDef *_tao_impl;
+ CORBA_IDLType_ptr type_def_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_def_set::TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_def_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ValueMemberDef *tao_impl,
+ CORBA_IDLType_ptr type_def
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ type_def_ (type_def)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_def_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= this->type_def_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_def_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_def_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_def_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_def_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+class TAO_ServerRequestInfo_CORBA_ValueMemberDef_access_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ValueMemberDef_access_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ValueMemberDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA::Visibility result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_ValueMemberDef_access_get (const TAO_ServerRequestInfo_CORBA_ValueMemberDef_access_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ValueMemberDef_access_get &);
+
+private:
+ POA_CORBA_ValueMemberDef *_tao_impl;
+ CORBA::Visibility _result;
+};
+
+TAO_ServerRequestInfo_CORBA_ValueMemberDef_access_get::TAO_ServerRequestInfo_CORBA_ValueMemberDef_access_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ValueMemberDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ValueMemberDef_access_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ValueMemberDef_access_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ValueMemberDef_access_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ValueMemberDef_access_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ValueMemberDef_access_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_ValueMemberDef_access_get::result (CORBA::Visibility result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_ValueMemberDef_access_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ValueMemberDef_access_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ValueMemberDef *tao_impl
+ ,
+ const CORBA::Visibility & access
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_ValueMemberDef_access_set (const TAO_ServerRequestInfo_CORBA_ValueMemberDef_access_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ValueMemberDef_access_set &);
+
+private:
+ POA_CORBA_ValueMemberDef *_tao_impl;
+ const CORBA::Visibility & access_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_ValueMemberDef_access_set::TAO_ServerRequestInfo_CORBA_ValueMemberDef_access_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ValueMemberDef *tao_impl,
+ const CORBA::Visibility & access
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ access_ (access)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ValueMemberDef_access_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= access_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ValueMemberDef_access_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ValueMemberDef_access_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ValueMemberDef_access_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ValueMemberDef_access_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+_TAO_CORBA_ValueMemberDef_Strategized_Proxy_Broker *_TAO_CORBA_ValueMemberDef_Strategized_Proxy_Broker::the_TAO_CORBA_ValueMemberDef_Strategized_Proxy_Broker (void)
+{
+ static _TAO_CORBA_ValueMemberDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+_TAO_CORBA_ValueMemberDef_Strategized_Proxy_Broker::_TAO_CORBA_ValueMemberDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+_TAO_CORBA_ValueMemberDef_Strategized_Proxy_Broker::~_TAO_CORBA_ValueMemberDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+_TAO_CORBA_ValueMemberDef_Proxy_Impl&
+_TAO_CORBA_ValueMemberDef_Strategized_Proxy_Broker::select_proxy (
+ ::CORBA_ValueMemberDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+_TAO_CORBA_ValueMemberDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ _TAO_CORBA_ValueMemberDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::_TAO_CORBA_ValueMemberDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+_TAO_CORBA_ValueMemberDef_Proxy_Broker *
+_TAO_CORBA_ValueMemberDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::_TAO_CORBA_ValueMemberDef_Strategized_Proxy_Broker::the_TAO_CORBA_ValueMemberDef_Strategized_Proxy_Broker();
+}
+
+int
+_TAO_CORBA_ValueMemberDef_Proxy_Broker_Factory_Initializer (long)
+{
+ _TAO_CORBA_ValueMemberDef_Proxy_Broker_Factory_function_pointer =
+ _TAO_CORBA_ValueMemberDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int _TAO_CORBA_ValueMemberDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ _TAO_CORBA_ValueMemberDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, _TAO_CORBA_ValueMemberDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+_TAO_CORBA_ValueMemberDef_ThruPOA_Proxy_Impl::_TAO_CORBA_ValueMemberDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+CORBA::TypeCode_ptr _TAO_CORBA_ValueMemberDef_ThruPOA_Proxy_Impl::type (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::TypeCode_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "type",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_ValueMemberDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ValueMemberDef:1.0"
+ )
+ )->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+CORBA_IDLType_ptr _TAO_CORBA_ValueMemberDef_ThruPOA_Proxy_Impl::type_def (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_IDLType_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "type_def",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_ValueMemberDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ValueMemberDef:1.0"
+ )
+ )->type_def (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_ValueMemberDef_ThruPOA_Proxy_Impl::type_def (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA_IDLType_ptr type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "type_def",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_ValueMemberDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ValueMemberDef:1.0"
+ )
+ )->type_def (
+ type_def
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+CORBA::Visibility _TAO_CORBA_ValueMemberDef_ThruPOA_Proxy_Impl::access (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::Visibility _tao_retval = 0;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "access",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (_tao_retval);
+ return ACE_reinterpret_cast (
+ POA_CORBA_ValueMemberDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ValueMemberDef:1.0"
+ )
+ )->access (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_ValueMemberDef_ThruPOA_Proxy_Impl::access (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::Visibility access
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "access",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_ValueMemberDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ValueMemberDef:1.0"
+ )
+ )->access (
+ access
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_CORBA_ValueMemberDef::POA_CORBA_ValueMemberDef (void)
+{
+ this->optable_ = &tao_CORBA_ValueMemberDef_optable;
+}
+
+// copy ctor
+POA_CORBA_ValueMemberDef::POA_CORBA_ValueMemberDef (const POA_CORBA_ValueMemberDef& rhs)
+ : POA_CORBA_Contained (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_CORBA_ValueMemberDef::~POA_CORBA_ValueMemberDef (void)
+{
+}
+
+void POA_CORBA_ValueMemberDef::_get_type_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ValueMemberDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ValueMemberDef *, _tao_object_reference);
+
+ CORBA::TypeCode_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA::TypeCode_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ValueMemberDef::_get_type_def_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ValueMemberDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ValueMemberDef *, _tao_object_reference);
+
+ CORBA_IDLType_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_def_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->type_def (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_IDLType_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ValueMemberDef::_set_type_def_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_ValueMemberDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ValueMemberDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA_IDLType_var type_def;
+ if (!(
+ (_tao_in >> type_def.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ValueMemberDef_type_def_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ type_def.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->type_def (
+ type_def.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ValueMemberDef::_get_access_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ValueMemberDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ValueMemberDef *, _tao_object_reference);
+
+ CORBA::Visibility _tao_retval = 0;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ValueMemberDef_access_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->access (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA::Visibility _tao_retval_info = _tao_retval;
+ ri.result (_tao_retval_info);
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ValueMemberDef::_set_access_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_ValueMemberDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ValueMemberDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA::Visibility access;
+ if (!(
+ (_tao_in >> access)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ValueMemberDef_access_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ access
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->access (
+ access
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ValueMemberDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_ValueMemberDef *_tao_impl = (POA_CORBA_ValueMemberDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_ValueMemberDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ValueMemberDef *_tao_impl = (POA_CORBA_ValueMemberDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_ValueMemberDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ValueMemberDef *_tao_impl = (POA_CORBA_ValueMemberDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_CORBA_ValueMemberDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/ValueMemberDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Contained:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_CORBA_ValueMemberDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/ValueMemberDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_ValueMemberDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Contained:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Contained_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Object:1.0") == 0)
+ return ACE_static_cast(PortableServer::Servant, this);
+ return 0;
+}
+
+void POA_CORBA_ValueMemberDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_CORBA_ValueMemberDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/CORBA/ValueMemberDef:1.0";
+}
+
+CORBA_ValueMemberDef*
+POA_CORBA_ValueMemberDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::CORBA_ValueMemberDef::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_CORBA_ValueDef_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 23:00:05 */
+/* C++ code produced by gperf version 2.8 (ACE version) */
+/* Command-line: gperf -m -M -J -c -C -D -E -T -f 0 -F 0 -a -o -t -p -K opname_ -L C++ -Z TAO_CORBA_ValueDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_CORBA_ValueDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
+ 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
+ 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
+ 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
+ 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
+ 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
+ 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
+ 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
+ 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
+ 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
+ 86, 86, 86, 86, 86, 86, 86, 86, 86, 0,
+ 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
+ 86, 86, 86, 86, 86, 86, 86, 86, 86, 0,
+ 86, 55, 30, 0, 86, 86, 86, 20, 86, 86,
+ 86, 86, 86, 86, 86, 86, 86, 0, 0, 5,
+ 86, 0, 86, 0, 86, 86, 86, 86, 86, 86,
+ 86, 86, 15, 15, 86, 86, 86, 10, 10, 86,
+ 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
+ 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
+ 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
+ 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
+ 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
+ 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
+ 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
+ 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
+ 86, 86, 86, 86, 86, 86,
+#else
+ 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
+ 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
+ 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
+ 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
+ 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
+ 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
+ 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
+ 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
+ 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
+ 86, 86, 86, 86, 86, 0, 86, 0, 86, 55,
+ 30, 0, 86, 86, 86, 20, 86, 86, 0, 0,
+ 5, 86, 0, 86, 0, 15, 15, 86, 86, 86,
+ 10, 10, 86, 86, 86, 86, 86, 86,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_CORBA_ValueDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 53,
+ MIN_WORD_LENGTH = 4,
+ MAX_WORD_LENGTH = 26,
+ MIN_HASH_VALUE = 4,
+ MAX_HASH_VALUE = 85,
+ HASH_VALUE_RANGE = 82,
+ DUPLICATES = 16,
+ WORDLIST_SIZE = 57
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},
+ {"move", &POA_CORBA_ValueDef::move_skel},
+ {"_is_a", &POA_CORBA_ValueDef::_is_a_skel},
+ {"lookup", &POA_CORBA_ValueDef::lookup_skel},
+ {"_get_name", &POA_CORBA_ValueDef::_get_name_skel},
+ {"_get_type", &POA_CORBA_ValueDef::_get_type_skel},
+ {"_set_name", &POA_CORBA_ValueDef::_set_name_skel},
+ {"_interface", &POA_CORBA_ValueDef::_interface_skel},
+ {"lookup_name", &POA_CORBA_ValueDef::lookup_name_skel},
+ {"_get_is_custom", &POA_CORBA_ValueDef::_get_is_custom_skel},
+ {"_set_is_custom", &POA_CORBA_ValueDef::_set_is_custom_skel},
+ {"_get_base_value", &POA_CORBA_ValueDef::_get_base_value_skel},
+ {"_set_base_value", &POA_CORBA_ValueDef::_set_base_value_skel},
+ {"_get_version", &POA_CORBA_ValueDef::_get_version_skel},
+ {"_set_version", &POA_CORBA_ValueDef::_set_version_skel},
+ {"_get_absolute_name", &POA_CORBA_ValueDef::_get_absolute_name_skel},
+ {"_get_is_truncatable", &POA_CORBA_ValueDef::_get_is_truncatable_skel},
+ {"_set_is_truncatable", &POA_CORBA_ValueDef::_set_is_truncatable_skel},
+ {"_get_defined_in", &POA_CORBA_ValueDef::_get_defined_in_skel},
+ {"is_a", &POA_CORBA_ValueDef::is_a_skel},
+ {"_non_existent", &POA_CORBA_ValueDef::_non_existent_skel},
+ {"_get_is_abstract", &POA_CORBA_ValueDef::_get_is_abstract_skel},
+ {"_set_is_abstract", &POA_CORBA_ValueDef::_set_is_abstract_skel},
+ {"_get_initializers", &POA_CORBA_ValueDef::_get_initializers_skel},
+ {"_set_initializers", &POA_CORBA_ValueDef::_set_initializers_skel},
+ {"_get_containing_repository", &POA_CORBA_ValueDef::_get_containing_repository_skel},
+ {"_get_id", &POA_CORBA_ValueDef::_get_id_skel},
+ {"_set_id", &POA_CORBA_ValueDef::_set_id_skel},
+ {"describe", &POA_CORBA_ValueDef::describe_skel},
+ {"_get_supported_interfaces", &POA_CORBA_ValueDef::_get_supported_interfaces_skel},
+ {"_set_abstract_base_values", &POA_CORBA_ValueDef::_set_abstract_base_values_skel},
+ {"_get_abstract_base_values", &POA_CORBA_ValueDef::_get_abstract_base_values_skel},
+ {"_set_supported_interfaces", &POA_CORBA_ValueDef::_set_supported_interfaces_skel},
+ {"_get_def_kind", &POA_CORBA_ValueDef::_get_def_kind_skel},
+ {"describe_value", &POA_CORBA_ValueDef::describe_value_skel},
+ {"destroy", &POA_CORBA_ValueDef::destroy_skel},
+ {"describe_contents", &POA_CORBA_ValueDef::describe_contents_skel},
+ {"create_enum", &POA_CORBA_ValueDef::create_enum_skel},
+ {"create_value", &POA_CORBA_ValueDef::create_value_skel},
+ {"create_module", &POA_CORBA_ValueDef::create_module_skel},
+ {"create_native", &POA_CORBA_ValueDef::create_native_skel},
+ {"create_attribute", &POA_CORBA_ValueDef::create_attribute_skel},
+ {"create_interface", &POA_CORBA_ValueDef::create_interface_skel},
+ {"create_union", &POA_CORBA_ValueDef::create_union_skel},
+ {"create_value_member", &POA_CORBA_ValueDef::create_value_member_skel},
+ {"create_operation", &POA_CORBA_ValueDef::create_operation_skel},
+ {"create_exception", &POA_CORBA_ValueDef::create_exception_skel},
+ {"create_local_interface", &POA_CORBA_ValueDef::create_local_interface_skel},
+ {"contents", &POA_CORBA_ValueDef::contents_skel},
+ {"create_abstract_interface", &POA_CORBA_ValueDef::create_abstract_interface_skel},
+ {"create_value_box", &POA_CORBA_ValueDef::create_value_box_skel},
+ {"create_alias", &POA_CORBA_ValueDef::create_alias_skel},
+ {"create_struct", &POA_CORBA_ValueDef::create_struct_skel},
+ {"create_constant", &POA_CORBA_ValueDef::create_constant_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -12, -2, -14, -2, 4, 5, 6, -16, -2, 117, 10, 11, -19, -2,
+ -99, -98, -1, -95, 18, -92, 21, -1, -24, -2, 22, -1, -26, -2,
+ 23, -29, -2, -94, -91, -1, -32, -4, 28, -93, 31, -1, -91, -7,
+ -3, 36, 37, -1, -1, 38, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -42, -2, 39, -1, -44, -2, 40, 41, -93, -48,
+ -2, -92, 46, -1, 47, -1, -92, 50, 51, -1, 52, 53, 54, 55,
+ -1, 56,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < WORDLIST_SIZE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 23:00:05 */
+static TAO_CORBA_ValueDef_Perfect_Hash_OpTable tao_CORBA_ValueDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+class TAO_ServerRequestInfo_CORBA_ValueDef_supported_interfaces_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ValueDef_supported_interfaces_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ValueDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_InterfaceDefSeq * result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_ValueDef_supported_interfaces_get (const TAO_ServerRequestInfo_CORBA_ValueDef_supported_interfaces_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ValueDef_supported_interfaces_get &);
+
+private:
+ POA_CORBA_ValueDef *_tao_impl;
+ CORBA_InterfaceDefSeq * _result;
+};
+
+TAO_ServerRequestInfo_CORBA_ValueDef_supported_interfaces_get::TAO_ServerRequestInfo_CORBA_ValueDef_supported_interfaces_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ValueDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ValueDef_supported_interfaces_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ValueDef_supported_interfaces_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ValueDef_supported_interfaces_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ValueDef_supported_interfaces_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ValueDef_supported_interfaces_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_ValueDef_supported_interfaces_get::result (CORBA_InterfaceDefSeq * result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_ValueDef_supported_interfaces_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ValueDef_supported_interfaces_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ValueDef *tao_impl
+ ,
+ const CORBA_InterfaceDefSeq & supported_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_ValueDef_supported_interfaces_set (const TAO_ServerRequestInfo_CORBA_ValueDef_supported_interfaces_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ValueDef_supported_interfaces_set &);
+
+private:
+ POA_CORBA_ValueDef *_tao_impl;
+ const CORBA_InterfaceDefSeq & supported_interfaces_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_ValueDef_supported_interfaces_set::TAO_ServerRequestInfo_CORBA_ValueDef_supported_interfaces_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ValueDef *tao_impl,
+ const CORBA_InterfaceDefSeq & supported_interfaces
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ supported_interfaces_ (supported_interfaces)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ValueDef_supported_interfaces_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= this->supported_interfaces_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ValueDef_supported_interfaces_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ValueDef_supported_interfaces_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ValueDef_supported_interfaces_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ValueDef_supported_interfaces_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+class TAO_ServerRequestInfo_CORBA_ValueDef_initializers_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ValueDef_initializers_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ValueDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_InitializerSeq * result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_ValueDef_initializers_get (const TAO_ServerRequestInfo_CORBA_ValueDef_initializers_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ValueDef_initializers_get &);
+
+private:
+ POA_CORBA_ValueDef *_tao_impl;
+ CORBA_InitializerSeq * _result;
+};
+
+TAO_ServerRequestInfo_CORBA_ValueDef_initializers_get::TAO_ServerRequestInfo_CORBA_ValueDef_initializers_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ValueDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ValueDef_initializers_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ValueDef_initializers_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ValueDef_initializers_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ValueDef_initializers_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ValueDef_initializers_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_ValueDef_initializers_get::result (CORBA_InitializerSeq * result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_ValueDef_initializers_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ValueDef_initializers_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ValueDef *tao_impl
+ ,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_ValueDef_initializers_set (const TAO_ServerRequestInfo_CORBA_ValueDef_initializers_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ValueDef_initializers_set &);
+
+private:
+ POA_CORBA_ValueDef *_tao_impl;
+ const CORBA_InitializerSeq & initializers_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_ValueDef_initializers_set::TAO_ServerRequestInfo_CORBA_ValueDef_initializers_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ValueDef *tao_impl,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ initializers_ (initializers)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ValueDef_initializers_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= this->initializers_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ValueDef_initializers_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ValueDef_initializers_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ValueDef_initializers_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ValueDef_initializers_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+class TAO_ServerRequestInfo_CORBA_ValueDef_base_value_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ValueDef_base_value_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ValueDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_ValueDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_ValueDef_base_value_get (const TAO_ServerRequestInfo_CORBA_ValueDef_base_value_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ValueDef_base_value_get &);
+
+private:
+ POA_CORBA_ValueDef *_tao_impl;
+ CORBA_ValueDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_ValueDef_base_value_get::TAO_ServerRequestInfo_CORBA_ValueDef_base_value_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ValueDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ValueDef_base_value_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ValueDef_base_value_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ValueDef_base_value_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ValueDef_base_value_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ValueDef_base_value_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_ValueDef_base_value_get::result (CORBA_ValueDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_ValueDef_base_value_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ValueDef_base_value_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ValueDef *tao_impl
+ ,
+ CORBA_ValueDef_ptr base_value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_ValueDef_base_value_set (const TAO_ServerRequestInfo_CORBA_ValueDef_base_value_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ValueDef_base_value_set &);
+
+private:
+ POA_CORBA_ValueDef *_tao_impl;
+ CORBA_ValueDef_ptr base_value_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_ValueDef_base_value_set::TAO_ServerRequestInfo_CORBA_ValueDef_base_value_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ValueDef *tao_impl,
+ CORBA_ValueDef_ptr base_value
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ base_value_ (base_value)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ValueDef_base_value_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= this->base_value_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ValueDef_base_value_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ValueDef_base_value_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ValueDef_base_value_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ValueDef_base_value_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+class TAO_ServerRequestInfo_CORBA_ValueDef_abstract_base_values_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ValueDef_abstract_base_values_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ValueDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_ValueDefSeq * result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_ValueDef_abstract_base_values_get (const TAO_ServerRequestInfo_CORBA_ValueDef_abstract_base_values_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ValueDef_abstract_base_values_get &);
+
+private:
+ POA_CORBA_ValueDef *_tao_impl;
+ CORBA_ValueDefSeq * _result;
+};
+
+TAO_ServerRequestInfo_CORBA_ValueDef_abstract_base_values_get::TAO_ServerRequestInfo_CORBA_ValueDef_abstract_base_values_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ValueDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ValueDef_abstract_base_values_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ValueDef_abstract_base_values_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ValueDef_abstract_base_values_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ValueDef_abstract_base_values_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ValueDef_abstract_base_values_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_ValueDef_abstract_base_values_get::result (CORBA_ValueDefSeq * result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_ValueDef_abstract_base_values_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ValueDef_abstract_base_values_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ValueDef *tao_impl
+ ,
+ const CORBA_ValueDefSeq & abstract_base_values
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_ValueDef_abstract_base_values_set (const TAO_ServerRequestInfo_CORBA_ValueDef_abstract_base_values_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ValueDef_abstract_base_values_set &);
+
+private:
+ POA_CORBA_ValueDef *_tao_impl;
+ const CORBA_ValueDefSeq & abstract_base_values_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_ValueDef_abstract_base_values_set::TAO_ServerRequestInfo_CORBA_ValueDef_abstract_base_values_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ValueDef *tao_impl,
+ const CORBA_ValueDefSeq & abstract_base_values
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ abstract_base_values_ (abstract_base_values)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ValueDef_abstract_base_values_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= this->abstract_base_values_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ValueDef_abstract_base_values_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ValueDef_abstract_base_values_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ValueDef_abstract_base_values_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ValueDef_abstract_base_values_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+class TAO_ServerRequestInfo_CORBA_ValueDef_is_abstract_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ValueDef_is_abstract_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ValueDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA::Boolean result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_ValueDef_is_abstract_get (const TAO_ServerRequestInfo_CORBA_ValueDef_is_abstract_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ValueDef_is_abstract_get &);
+
+private:
+ POA_CORBA_ValueDef *_tao_impl;
+ CORBA::Boolean _result;
+};
+
+TAO_ServerRequestInfo_CORBA_ValueDef_is_abstract_get::TAO_ServerRequestInfo_CORBA_ValueDef_is_abstract_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ValueDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ValueDef_is_abstract_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ValueDef_is_abstract_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ValueDef_is_abstract_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= CORBA::Any::from_boolean (this->_result);
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ValueDef_is_abstract_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ValueDef_is_abstract_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_ValueDef_is_abstract_get::result (CORBA::Boolean result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_ValueDef_is_abstract_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ValueDef_is_abstract_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ValueDef *tao_impl
+ ,
+ const CORBA::Boolean & is_abstract
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_ValueDef_is_abstract_set (const TAO_ServerRequestInfo_CORBA_ValueDef_is_abstract_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ValueDef_is_abstract_set &);
+
+private:
+ POA_CORBA_ValueDef *_tao_impl;
+ const CORBA::Boolean & is_abstract_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_ValueDef_is_abstract_set::TAO_ServerRequestInfo_CORBA_ValueDef_is_abstract_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ValueDef *tao_impl,
+ const CORBA::Boolean & is_abstract
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ is_abstract_ (is_abstract)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ValueDef_is_abstract_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= CORBA::Any::from_boolean (this->is_abstract_);
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ValueDef_is_abstract_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ValueDef_is_abstract_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ValueDef_is_abstract_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ValueDef_is_abstract_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+class TAO_ServerRequestInfo_CORBA_ValueDef_is_custom_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ValueDef_is_custom_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ValueDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA::Boolean result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_ValueDef_is_custom_get (const TAO_ServerRequestInfo_CORBA_ValueDef_is_custom_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ValueDef_is_custom_get &);
+
+private:
+ POA_CORBA_ValueDef *_tao_impl;
+ CORBA::Boolean _result;
+};
+
+TAO_ServerRequestInfo_CORBA_ValueDef_is_custom_get::TAO_ServerRequestInfo_CORBA_ValueDef_is_custom_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ValueDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ValueDef_is_custom_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ValueDef_is_custom_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ValueDef_is_custom_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= CORBA::Any::from_boolean (this->_result);
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ValueDef_is_custom_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ValueDef_is_custom_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_ValueDef_is_custom_get::result (CORBA::Boolean result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_ValueDef_is_custom_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ValueDef_is_custom_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ValueDef *tao_impl
+ ,
+ const CORBA::Boolean & is_custom
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_ValueDef_is_custom_set (const TAO_ServerRequestInfo_CORBA_ValueDef_is_custom_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ValueDef_is_custom_set &);
+
+private:
+ POA_CORBA_ValueDef *_tao_impl;
+ const CORBA::Boolean & is_custom_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_ValueDef_is_custom_set::TAO_ServerRequestInfo_CORBA_ValueDef_is_custom_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ValueDef *tao_impl,
+ const CORBA::Boolean & is_custom
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ is_custom_ (is_custom)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ValueDef_is_custom_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= CORBA::Any::from_boolean (this->is_custom_);
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ValueDef_is_custom_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ValueDef_is_custom_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ValueDef_is_custom_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ValueDef_is_custom_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+class TAO_ServerRequestInfo_CORBA_ValueDef_is_truncatable_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ValueDef_is_truncatable_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ValueDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA::Boolean result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_ValueDef_is_truncatable_get (const TAO_ServerRequestInfo_CORBA_ValueDef_is_truncatable_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ValueDef_is_truncatable_get &);
+
+private:
+ POA_CORBA_ValueDef *_tao_impl;
+ CORBA::Boolean _result;
+};
+
+TAO_ServerRequestInfo_CORBA_ValueDef_is_truncatable_get::TAO_ServerRequestInfo_CORBA_ValueDef_is_truncatable_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ValueDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ValueDef_is_truncatable_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ValueDef_is_truncatable_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ValueDef_is_truncatable_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= CORBA::Any::from_boolean (this->_result);
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ValueDef_is_truncatable_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ValueDef_is_truncatable_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_ValueDef_is_truncatable_get::result (CORBA::Boolean result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_ValueDef_is_truncatable_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ValueDef_is_truncatable_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ValueDef *tao_impl
+ ,
+ const CORBA::Boolean & is_truncatable
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_ValueDef_is_truncatable_set (const TAO_ServerRequestInfo_CORBA_ValueDef_is_truncatable_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ValueDef_is_truncatable_set &);
+
+private:
+ POA_CORBA_ValueDef *_tao_impl;
+ const CORBA::Boolean & is_truncatable_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_ValueDef_is_truncatable_set::TAO_ServerRequestInfo_CORBA_ValueDef_is_truncatable_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ValueDef *tao_impl,
+ const CORBA::Boolean & is_truncatable
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ is_truncatable_ (is_truncatable)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ValueDef_is_truncatable_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= CORBA::Any::from_boolean (this->is_truncatable_);
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ValueDef_is_truncatable_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ValueDef_is_truncatable_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ValueDef_is_truncatable_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ValueDef_is_truncatable_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+class TAO_ServerRequestInfo_CORBA_ValueDef_is_a : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ValueDef_is_a (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ValueDef *tao_impl
+ ,
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA::Boolean result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_ValueDef_is_a (const TAO_ServerRequestInfo_CORBA_ValueDef_is_a &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ValueDef_is_a &);
+
+private:
+ POA_CORBA_ValueDef *_tao_impl;
+ const char * id_;
+ CORBA::Boolean _result;
+};
+
+TAO_ServerRequestInfo_CORBA_ValueDef_is_a::TAO_ServerRequestInfo_CORBA_ValueDef_is_a (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ValueDef *tao_impl,
+ const char * id
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ id_ (id)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ValueDef_is_a::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ValueDef_is_a::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ValueDef_is_a::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= CORBA::Any::from_boolean (this->_result);
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ValueDef_is_a::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ValueDef_is_a::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_ValueDef_is_a::result (CORBA::Boolean result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_ValueDef_describe_value : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ValueDef_describe_value (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ValueDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_ValueDef::FullValueDescription * result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_ValueDef_describe_value (const TAO_ServerRequestInfo_CORBA_ValueDef_describe_value &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ValueDef_describe_value &);
+
+private:
+ POA_CORBA_ValueDef *_tao_impl;
+ CORBA_ValueDef::FullValueDescription * _result;
+};
+
+TAO_ServerRequestInfo_CORBA_ValueDef_describe_value::TAO_ServerRequestInfo_CORBA_ValueDef_describe_value (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ValueDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ValueDef_describe_value::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ValueDef_describe_value::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ValueDef_describe_value::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ValueDef_describe_value::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ValueDef_describe_value::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_ValueDef_describe_value::result (CORBA_ValueDef::FullValueDescription * result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_ValueDef_create_value_member : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ValueDef_create_value_member (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ValueDef *tao_impl
+ ,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Visibility & access
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_ValueMemberDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_ValueDef_create_value_member (const TAO_ServerRequestInfo_CORBA_ValueDef_create_value_member &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ValueDef_create_value_member &);
+
+private:
+ POA_CORBA_ValueDef *_tao_impl;
+ const char * id_;
+ const char * name_;
+ const char * version_;
+ CORBA_IDLType_ptr type_;
+ const CORBA::Visibility & access_;
+ CORBA_ValueMemberDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_ValueDef_create_value_member::TAO_ServerRequestInfo_CORBA_ValueDef_create_value_member (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ValueDef *tao_impl,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Visibility & access
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ id_ (id),
+ name_ (name),
+ version_ (version),
+ type_ (type),
+ access_ (access)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ValueDef_create_value_member::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (5);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= name_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= version_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->type_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= access_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ValueDef_create_value_member::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ValueDef_create_value_member::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ValueDef_create_value_member::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ValueDef_create_value_member::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_ValueDef_create_value_member::result (CORBA_ValueMemberDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_ValueDef_create_attribute : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ValueDef_create_attribute (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ValueDef *tao_impl
+ ,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ CORBA::AttributeMode & mode
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_AttributeDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_ValueDef_create_attribute (const TAO_ServerRequestInfo_CORBA_ValueDef_create_attribute &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ValueDef_create_attribute &);
+
+private:
+ POA_CORBA_ValueDef *_tao_impl;
+ const char * id_;
+ const char * name_;
+ const char * version_;
+ CORBA_IDLType_ptr type_;
+ const CORBA::AttributeMode & mode_;
+ CORBA_AttributeDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_ValueDef_create_attribute::TAO_ServerRequestInfo_CORBA_ValueDef_create_attribute (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ValueDef *tao_impl,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ CORBA::AttributeMode & mode
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ id_ (id),
+ name_ (name),
+ version_ (version),
+ type_ (type),
+ mode_ (mode)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ValueDef_create_attribute::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (5);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= name_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= version_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->type_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->mode_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ValueDef_create_attribute::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ValueDef_create_attribute::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ValueDef_create_attribute::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ValueDef_create_attribute::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_ValueDef_create_attribute::result (CORBA_AttributeDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_ValueDef_create_operation : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ValueDef_create_operation (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ValueDef *tao_impl
+ ,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr result,
+ CORBA::OperationMode & mode,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions,
+ const CORBA_ContextIdSeq & contexts
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_OperationDef_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_ValueDef_create_operation (const TAO_ServerRequestInfo_CORBA_ValueDef_create_operation &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ValueDef_create_operation &);
+
+private:
+ POA_CORBA_ValueDef *_tao_impl;
+ const char * id_;
+ const char * name_;
+ const char * version_;
+ CORBA_IDLType_ptr result_;
+ const CORBA::OperationMode & mode_;
+ const CORBA_ParDescriptionSeq & params_;
+ const CORBA_ExceptionDefSeq & exceptions_;
+ const CORBA_ContextIdSeq & contexts_;
+ CORBA_OperationDef_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_ValueDef_create_operation::TAO_ServerRequestInfo_CORBA_ValueDef_create_operation (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ValueDef *tao_impl,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr result,
+ CORBA::OperationMode & mode,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions,
+ const CORBA_ContextIdSeq & contexts
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ id_ (id),
+ name_ (name),
+ version_ (version),
+ result_ (result),
+ mode_ (mode),
+ params_ (params),
+ exceptions_ (exceptions),
+ contexts_ (contexts)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ValueDef_create_operation::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (8);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= id_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= name_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= version_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->result_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->mode_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->params_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->exceptions_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+ (*parameter_list)[len].argument <<= this->contexts_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ValueDef_create_operation::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ValueDef_create_operation::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ValueDef_create_operation::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ValueDef_create_operation::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_ValueDef_create_operation::result (CORBA_OperationDef_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+_TAO_CORBA_ValueDef_Strategized_Proxy_Broker *_TAO_CORBA_ValueDef_Strategized_Proxy_Broker::the_TAO_CORBA_ValueDef_Strategized_Proxy_Broker (void)
+{
+ static _TAO_CORBA_ValueDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+_TAO_CORBA_ValueDef_Strategized_Proxy_Broker::_TAO_CORBA_ValueDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+_TAO_CORBA_ValueDef_Strategized_Proxy_Broker::~_TAO_CORBA_ValueDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+_TAO_CORBA_ValueDef_Proxy_Impl&
+_TAO_CORBA_ValueDef_Strategized_Proxy_Broker::select_proxy (
+ ::CORBA_ValueDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+_TAO_CORBA_ValueDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ _TAO_CORBA_ValueDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::_TAO_CORBA_ValueDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+_TAO_CORBA_ValueDef_Proxy_Broker *
+_TAO_CORBA_ValueDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::_TAO_CORBA_ValueDef_Strategized_Proxy_Broker::the_TAO_CORBA_ValueDef_Strategized_Proxy_Broker();
+}
+
+int
+_TAO_CORBA_ValueDef_Proxy_Broker_Factory_Initializer (long)
+{
+ _TAO_CORBA_ValueDef_Proxy_Broker_Factory_function_pointer =
+ _TAO_CORBA_ValueDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int _TAO_CORBA_ValueDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ _TAO_CORBA_ValueDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, _TAO_CORBA_ValueDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+_TAO_CORBA_ValueDef_ThruPOA_Proxy_Impl::_TAO_CORBA_ValueDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+CORBA_InterfaceDefSeq * _TAO_CORBA_ValueDef_ThruPOA_Proxy_Impl::supported_interfaces (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_InterfaceDefSeq_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "supported_interfaces",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_ValueDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ValueDef:1.0"
+ )
+ )->supported_interfaces (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_ValueDef_ThruPOA_Proxy_Impl::supported_interfaces (
+ CORBA_Object *_collocated_tao_target_,
+ const CORBA_InterfaceDefSeq & supported_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "supported_interfaces",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_ValueDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ValueDef:1.0"
+ )
+ )->supported_interfaces (
+ supported_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+CORBA_InitializerSeq * _TAO_CORBA_ValueDef_ThruPOA_Proxy_Impl::initializers (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_InitializerSeq_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "initializers",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_ValueDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ValueDef:1.0"
+ )
+ )->initializers (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_ValueDef_ThruPOA_Proxy_Impl::initializers (
+ CORBA_Object *_collocated_tao_target_,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "initializers",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_ValueDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ValueDef:1.0"
+ )
+ )->initializers (
+ initializers
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+CORBA_ValueDef_ptr _TAO_CORBA_ValueDef_ThruPOA_Proxy_Impl::base_value (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_ValueDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "base_value",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_ValueDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ValueDef:1.0"
+ )
+ )->base_value (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_ValueDef_ThruPOA_Proxy_Impl::base_value (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA_ValueDef_ptr base_value
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "base_value",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_ValueDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ValueDef:1.0"
+ )
+ )->base_value (
+ base_value
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+CORBA_ValueDefSeq * _TAO_CORBA_ValueDef_ThruPOA_Proxy_Impl::abstract_base_values (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_ValueDefSeq_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "abstract_base_values",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_ValueDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ValueDef:1.0"
+ )
+ )->abstract_base_values (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_ValueDef_ThruPOA_Proxy_Impl::abstract_base_values (
+ CORBA_Object *_collocated_tao_target_,
+ const CORBA_ValueDefSeq & abstract_base_values
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "abstract_base_values",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_ValueDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ValueDef:1.0"
+ )
+ )->abstract_base_values (
+ abstract_base_values
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+CORBA::Boolean _TAO_CORBA_ValueDef_ThruPOA_Proxy_Impl::is_abstract (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::Boolean _tao_retval = 0;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "is_abstract",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (_tao_retval);
+ return ACE_reinterpret_cast (
+ POA_CORBA_ValueDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ValueDef:1.0"
+ )
+ )->is_abstract (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_ValueDef_ThruPOA_Proxy_Impl::is_abstract (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::Boolean is_abstract
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "is_abstract",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_ValueDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ValueDef:1.0"
+ )
+ )->is_abstract (
+ is_abstract
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+CORBA::Boolean _TAO_CORBA_ValueDef_ThruPOA_Proxy_Impl::is_custom (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::Boolean _tao_retval = 0;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "is_custom",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (_tao_retval);
+ return ACE_reinterpret_cast (
+ POA_CORBA_ValueDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ValueDef:1.0"
+ )
+ )->is_custom (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_ValueDef_ThruPOA_Proxy_Impl::is_custom (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::Boolean is_custom
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "is_custom",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_ValueDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ValueDef:1.0"
+ )
+ )->is_custom (
+ is_custom
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+CORBA::Boolean _TAO_CORBA_ValueDef_ThruPOA_Proxy_Impl::is_truncatable (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::Boolean _tao_retval = 0;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "is_truncatable",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (_tao_retval);
+ return ACE_reinterpret_cast (
+ POA_CORBA_ValueDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ValueDef:1.0"
+ )
+ )->is_truncatable (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_ValueDef_ThruPOA_Proxy_Impl::is_truncatable (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::Boolean is_truncatable
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "is_truncatable",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_ValueDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ValueDef:1.0"
+ )
+ )->is_truncatable (
+ is_truncatable
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+CORBA::Boolean _TAO_CORBA_ValueDef_ThruPOA_Proxy_Impl::is_a (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA::Boolean _tao_retval = 0;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "is_a",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (_tao_retval);
+ return ACE_reinterpret_cast (
+ POA_CORBA_ValueDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ValueDef:1.0"
+ )
+ )->is_a (
+ id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+CORBA_ValueDef::FullValueDescription * _TAO_CORBA_ValueDef_ThruPOA_Proxy_Impl::describe_value (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_ValueDef::FullValueDescription_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "describe_value",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_ValueDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ValueDef:1.0"
+ )
+ )->describe_value (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+CORBA_ValueMemberDef_ptr _TAO_CORBA_ValueDef_ThruPOA_Proxy_Impl::create_value_member (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ CORBA::Visibility access
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_ValueMemberDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "create_value_member",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_ValueDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ValueDef:1.0"
+ )
+ )->create_value_member (
+ id,
+ name,
+ version,
+ type,
+ access
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+CORBA_AttributeDef_ptr _TAO_CORBA_ValueDef_ThruPOA_Proxy_Impl::create_attribute (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_AttributeDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "create_attribute",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_ValueDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ValueDef:1.0"
+ )
+ )->create_attribute (
+ id,
+ name,
+ version,
+ type,
+ mode
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+CORBA_OperationDef_ptr _TAO_CORBA_ValueDef_ThruPOA_Proxy_Impl::create_operation (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr result,
+ CORBA::OperationMode mode,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions,
+ const CORBA_ContextIdSeq & contexts
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_OperationDef_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "create_operation",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_ValueDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ValueDef:1.0"
+ )
+ )->create_operation (
+ id,
+ name,
+ version,
+ result,
+ mode,
+ params,
+ exceptions,
+ contexts
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_CORBA_ValueDef::POA_CORBA_ValueDef (void)
+{
+ this->optable_ = &tao_CORBA_ValueDef_optable;
+}
+
+// copy ctor
+POA_CORBA_ValueDef::POA_CORBA_ValueDef (const POA_CORBA_ValueDef& rhs)
+ : POA_CORBA_Container (rhs),
+ POA_CORBA_Contained (rhs),
+ POA_CORBA_IDLType (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_CORBA_ValueDef::~POA_CORBA_ValueDef (void)
+{
+}
+
+void POA_CORBA_ValueDef::_get_supported_interfaces_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ValueDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ValueDef *, _tao_object_reference);
+
+ CORBA_InterfaceDefSeq_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ValueDef_supported_interfaces_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->supported_interfaces (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_InterfaceDefSeq * _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ValueDef::_set_supported_interfaces_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_ValueDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ValueDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA_InterfaceDefSeq supported_interfaces;
+ if (!(
+ (_tao_in >> supported_interfaces)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ValueDef_supported_interfaces_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ supported_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->supported_interfaces (
+ supported_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ValueDef::_get_initializers_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ValueDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ValueDef *, _tao_object_reference);
+
+ CORBA_InitializerSeq_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ValueDef_initializers_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->initializers (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_InitializerSeq * _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ValueDef::_set_initializers_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_ValueDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ValueDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA_InitializerSeq initializers;
+ if (!(
+ (_tao_in >> initializers)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ValueDef_initializers_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ initializers
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->initializers (
+ initializers
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ValueDef::_get_base_value_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ValueDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ValueDef *, _tao_object_reference);
+
+ CORBA_ValueDef_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ValueDef_base_value_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->base_value (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_ValueDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ValueDef::_set_base_value_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_ValueDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ValueDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA_ValueDef_var base_value;
+ if (!(
+ (_tao_in >> base_value.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ValueDef_base_value_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ base_value.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->base_value (
+ base_value.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ValueDef::_get_abstract_base_values_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ValueDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ValueDef *, _tao_object_reference);
+
+ CORBA_ValueDefSeq_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ValueDef_abstract_base_values_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->abstract_base_values (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_ValueDefSeq * _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ValueDef::_set_abstract_base_values_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_ValueDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ValueDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA_ValueDefSeq abstract_base_values;
+ if (!(
+ (_tao_in >> abstract_base_values)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ValueDef_abstract_base_values_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ abstract_base_values
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->abstract_base_values (
+ abstract_base_values
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ValueDef::_get_is_abstract_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ValueDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ValueDef *, _tao_object_reference);
+
+ CORBA::Boolean _tao_retval = 0;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ValueDef_is_abstract_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->is_abstract (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA::Boolean _tao_retval_info = _tao_retval;
+ ri.result (_tao_retval_info);
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << CORBA::Any::from_boolean (_tao_retval))
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ValueDef::_set_is_abstract_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_ValueDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ValueDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA::Boolean is_abstract;
+ if (!(
+ (_tao_in >> CORBA::Any::to_boolean (is_abstract))
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ValueDef_is_abstract_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ is_abstract
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->is_abstract (
+ is_abstract
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ValueDef::_get_is_custom_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ValueDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ValueDef *, _tao_object_reference);
+
+ CORBA::Boolean _tao_retval = 0;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ValueDef_is_custom_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->is_custom (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA::Boolean _tao_retval_info = _tao_retval;
+ ri.result (_tao_retval_info);
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << CORBA::Any::from_boolean (_tao_retval))
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ValueDef::_set_is_custom_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_ValueDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ValueDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA::Boolean is_custom;
+ if (!(
+ (_tao_in >> CORBA::Any::to_boolean (is_custom))
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ValueDef_is_custom_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ is_custom
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->is_custom (
+ is_custom
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ValueDef::_get_is_truncatable_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ValueDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ValueDef *, _tao_object_reference);
+
+ CORBA::Boolean _tao_retval = 0;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ValueDef_is_truncatable_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->is_truncatable (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA::Boolean _tao_retval_info = _tao_retval;
+ ri.result (_tao_retval_info);
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << CORBA::Any::from_boolean (_tao_retval))
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ValueDef::_set_is_truncatable_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_ValueDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ValueDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA::Boolean is_truncatable;
+ if (!(
+ (_tao_in >> CORBA::Any::to_boolean (is_truncatable))
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ValueDef_is_truncatable_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ is_truncatable
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->is_truncatable (
+ is_truncatable
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ValueDef::is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_ValueDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ValueDef *, _tao_object_reference);
+
+ CORBA::Boolean _tao_retval = 0;
+ CORBA::String_var id;
+ if (!(
+ (_tao_in >> id.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ValueDef_is_a ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ id.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->is_a (
+ id.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA::Boolean _tao_retval_info = _tao_retval;
+ ri.result (_tao_retval_info);
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << CORBA::Any::from_boolean (_tao_retval))
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ValueDef::describe_value_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ValueDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ValueDef *, _tao_object_reference);
+
+ CORBA_ValueDef::FullValueDescription_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ValueDef_describe_value ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->describe_value (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_ValueDef::FullValueDescription * _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ValueDef::create_value_member_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_ValueDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ValueDef *, _tao_object_reference);
+
+ CORBA_ValueMemberDef_var _tao_retval;
+ CORBA::String_var id;
+ CORBA::String_var name;
+ CORBA::String_var version;
+ CORBA_IDLType_var type;
+ CORBA::Visibility access;
+ if (!(
+ (_tao_in >> id.out ()) &&
+ (_tao_in >> name.out ()) &&
+ (_tao_in >> version.out ()) &&
+ (_tao_in >> type.out ()) &&
+ (_tao_in >> access)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ValueDef_create_value_member ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ id.in (),
+ name.in (),
+ version.in (),
+ type.in (),
+ access
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->create_value_member (
+ id.in (),
+ name.in (),
+ version.in (),
+ type.in (),
+ access
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_ValueMemberDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ValueDef::create_attribute_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_ValueDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ValueDef *, _tao_object_reference);
+
+ CORBA_AttributeDef_var _tao_retval;
+ CORBA::String_var id;
+ CORBA::String_var name;
+ CORBA::String_var version;
+ CORBA_IDLType_var type;
+ CORBA::AttributeMode mode;
+ if (!(
+ (_tao_in >> id.out ()) &&
+ (_tao_in >> name.out ()) &&
+ (_tao_in >> version.out ()) &&
+ (_tao_in >> type.out ()) &&
+ (_tao_in >> mode)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ValueDef_create_attribute ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ id.in (),
+ name.in (),
+ version.in (),
+ type.in (),
+ mode
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->create_attribute (
+ id.in (),
+ name.in (),
+ version.in (),
+ type.in (),
+ mode
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_AttributeDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ValueDef::create_operation_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_ValueDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ValueDef *, _tao_object_reference);
+
+ CORBA_OperationDef_var _tao_retval;
+ CORBA::String_var id;
+ CORBA::String_var name;
+ CORBA::String_var version;
+ CORBA_IDLType_var result;
+ CORBA::OperationMode mode;
+ CORBA_ParDescriptionSeq params;
+ CORBA_ExceptionDefSeq exceptions;
+ CORBA_ContextIdSeq contexts;
+ if (!(
+ (_tao_in >> id.out ()) &&
+ (_tao_in >> name.out ()) &&
+ (_tao_in >> version.out ()) &&
+ (_tao_in >> result.out ()) &&
+ (_tao_in >> mode) &&
+ (_tao_in >> params) &&
+ (_tao_in >> exceptions) &&
+ (_tao_in >> contexts)
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ValueDef_create_operation ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ id.in (),
+ name.in (),
+ version.in (),
+ result.in (),
+ mode,
+ params,
+ exceptions,
+ contexts
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->create_operation (
+ id.in (),
+ name.in (),
+ version.in (),
+ result.in (),
+ mode,
+ params,
+ exceptions,
+ contexts
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_OperationDef_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ValueDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_ValueDef *_tao_impl = (POA_CORBA_ValueDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_ValueDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ValueDef *_tao_impl = (POA_CORBA_ValueDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_ValueDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ValueDef *_tao_impl = (POA_CORBA_ValueDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_CORBA_ValueDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/ValueDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Container:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Contained:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IDLType:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_CORBA_ValueDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/ValueDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_ValueDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Container:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Container_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Contained:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Contained_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IDLType:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IDLType_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Object:1.0") == 0)
+ return ACE_static_cast(PortableServer::Servant, this);
+ return 0;
+}
+
+void POA_CORBA_ValueDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_CORBA_ValueDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/CORBA/ValueDef:1.0";
+}
+
+CORBA_ValueDef*
+POA_CORBA_ValueDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::CORBA_ValueDef::_unchecked_narrow (obj.in ());
+}
+
+
+class TAO_CORBA_ValueBoxDef_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 23:00:08 */
+/* C++ code produced by gperf version 2.8 (ACE version) */
+/* Command-line: gperf -m -M -J -c -C -D -E -T -f 0 -F 0 -a -o -t -p -K opname_ -L C++ -Z TAO_CORBA_ValueBoxDef_Perfect_Hash_OpTable -N lookup */
+unsigned int
+TAO_CORBA_ValueBoxDef_Perfect_Hash_OpTable::hash (const char *str, unsigned int len)
+{
+ static const unsigned char asso_values[] =
+ {
+#if defined (ACE_MVS)
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 37, 37, 0, 0, 0, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 0, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 10, 37, 37, 37, 37, 10, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37,
+#else
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 37, 37, 37, 37, 37, 0, 37, 0, 37, 37,
+ 0, 0, 0, 37, 37, 37, 37, 37, 37, 0,
+ 0, 37, 37, 37, 37, 37, 10, 37, 37, 37,
+ 37, 10, 37, 37, 37, 37, 37, 37,
+#endif /* ACE_MVS */
+ };
+ return len + asso_values[str[len - 1]] + asso_values[str[0]];
+}
+
+const class TAO_operation_db_entry *
+TAO_CORBA_ValueBoxDef_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len)
+{
+ enum
+ {
+ TOTAL_KEYWORDS = 19,
+ MIN_WORD_LENGTH = 4,
+ MAX_WORD_LENGTH = 26,
+ MIN_HASH_VALUE = 4,
+ MAX_HASH_VALUE = 36,
+ HASH_VALUE_RANGE = 33,
+ DUPLICATES = 6,
+ WORDLIST_SIZE = 23
+ };
+
+ static const class TAO_operation_db_entry wordlist[] =
+ {
+ {"",0},{"",0},{"",0},{"",0},
+ {"move", &POA_CORBA_ValueBoxDef::move_skel},
+ {"_is_a", &POA_CORBA_ValueBoxDef::_is_a_skel},
+ {"_get_id", &POA_CORBA_ValueBoxDef::_get_id_skel},
+ {"_set_id", &POA_CORBA_ValueBoxDef::_set_id_skel},
+ {"describe", &POA_CORBA_ValueBoxDef::describe_skel},
+ {"_get_name", &POA_CORBA_ValueBoxDef::_get_name_skel},
+ {"_get_type", &POA_CORBA_ValueBoxDef::_get_type_skel},
+ {"_set_name", &POA_CORBA_ValueBoxDef::_set_name_skel},
+ {"_interface", &POA_CORBA_ValueBoxDef::_interface_skel},
+ {"_get_version", &POA_CORBA_ValueBoxDef::_get_version_skel},
+ {"_set_version", &POA_CORBA_ValueBoxDef::_set_version_skel},
+ {"_get_def_kind", &POA_CORBA_ValueBoxDef::_get_def_kind_skel},
+ {"_get_defined_in", &POA_CORBA_ValueBoxDef::_get_defined_in_skel},
+ {"destroy", &POA_CORBA_ValueBoxDef::destroy_skel},
+ {"_get_absolute_name", &POA_CORBA_ValueBoxDef::_get_absolute_name_skel},
+ {"_get_original_type_def", &POA_CORBA_ValueBoxDef::_get_original_type_def_skel},
+ {"_set_original_type_def", &POA_CORBA_ValueBoxDef::_set_original_type_def_skel},
+ {"_non_existent", &POA_CORBA_ValueBoxDef::_non_existent_skel},
+ {"_get_containing_repository", &POA_CORBA_ValueBoxDef::_get_containing_repository_skel},
+ };
+
+ static const signed char lookup[] =
+ {
+ -9, -3, -13, -2, 4, 5, -1, 53, 8, -45, 12, -1, -46, 15,
+ -1, 16, -1, 17, 18, -1, -19, -2, -38, 21, -6, -2, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 22,
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ unsigned int key = hash (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE)
+ {
+ int slot = lookup[key];
+
+ if (slot >= 0 && slot < WORDLIST_SIZE)
+ {
+ const char *s = wordlist[slot].opname_;
+
+ if (*str == *s && !strncmp (str + 1, s + 1, len - 1))
+ return &wordlist[slot];
+ }
+ else if (slot < 0 && slot >= -MAX_HASH_VALUE)
+ return 0;
+ else
+ {
+ unsigned int offset = key + slot + (slot > 0 ? -MAX_HASH_VALUE : MAX_HASH_VALUE);
+ const class TAO_operation_db_entry *base = &wordlist[-lookup[offset]];
+ const class TAO_operation_db_entry *ptr = base + -lookup[offset + 1];
+
+ while (--ptr >= base)
+ if (*str == *ptr->opname_ && !strncmp (str + 1, ptr->opname_ + 1, len - 1))
+ return ptr;
+ }
+ }
+ }
+ return 0;
+}
+/* ending time is 23:00:08 */
+static TAO_CORBA_ValueBoxDef_Perfect_Hash_OpTable tao_CORBA_ValueBoxDef_optable;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+class TAO_ServerRequestInfo_CORBA_ValueBoxDef_original_type_def_get : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ValueBoxDef_original_type_def_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ValueBoxDef *tao_impl
+
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result (CORBA_IDLType_ptr result);
+
+private:
+ TAO_ServerRequestInfo_CORBA_ValueBoxDef_original_type_def_get (const TAO_ServerRequestInfo_CORBA_ValueBoxDef_original_type_def_get &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ValueBoxDef_original_type_def_get &);
+
+private:
+ POA_CORBA_ValueBoxDef *_tao_impl;
+ CORBA_IDLType_ptr _result;
+};
+
+TAO_ServerRequestInfo_CORBA_ValueBoxDef_original_type_def_get::TAO_ServerRequestInfo_CORBA_ValueBoxDef_original_type_def_get (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ValueBoxDef *tao_impl
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ValueBoxDef_original_type_def_get::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return parameter_list;
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ValueBoxDef_original_type_def_get::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ValueBoxDef_original_type_def_get::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 0;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::Any_var safe_result_any = result_any;
+
+ (*result_any) <<= this->_result;
+
+ return safe_result_any._retn ();
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ValueBoxDef_original_type_def_get::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ValueBoxDef_original_type_def_get::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ServerRequestInfo_CORBA_ValueBoxDef_original_type_def_get::result (CORBA_IDLType_ptr result)
+{
+ // Update the result.
+ this->_result = result;
+}
+
+class TAO_ServerRequestInfo_CORBA_ValueBoxDef_original_type_def_set : public TAO_ServerRequestInfo
+{
+public:
+ TAO_ServerRequestInfo_CORBA_ValueBoxDef_original_type_def_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *tao_servant_upcall,POA_CORBA_ValueBoxDef *tao_impl
+ ,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual Dynamic::ParameterList * arguments (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual Dynamic::ExceptionList * exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Any * result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual char * target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+private:
+ TAO_ServerRequestInfo_CORBA_ValueBoxDef_original_type_def_set (const TAO_ServerRequestInfo_CORBA_ValueBoxDef_original_type_def_set &);
+ void operator= (const TAO_ServerRequestInfo_CORBA_ValueBoxDef_original_type_def_set &);
+
+private:
+ POA_CORBA_ValueBoxDef *_tao_impl;
+ CORBA_IDLType_ptr original_type_def_;
+
+};
+
+TAO_ServerRequestInfo_CORBA_ValueBoxDef_original_type_def_set::TAO_ServerRequestInfo_CORBA_ValueBoxDef_original_type_def_set (
+ TAO_ServerRequest &_tao_server_request,
+ TAO_Object_Adapter::Servant_Upcall *_tao_servant_upcall,
+ POA_CORBA_ValueBoxDef *tao_impl,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ : TAO_ServerRequestInfo (_tao_server_request, _tao_servant_upcall),
+ _tao_impl (tao_impl),
+ original_type_def_ (original_type_def)
+{}
+
+Dynamic::ParameterList *
+TAO_ServerRequestInfo_CORBA_ValueBoxDef_original_type_def_set::arguments (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the argument list on demand.
+ Dynamic::ParameterList *parameter_list =
+ TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ Dynamic::ParameterList_var safe_parameter_list = parameter_list;
+
+ parameter_list->length (1);
+ CORBA::ULong len = 0;
+
+ (*parameter_list)[len].argument <<= this->original_type_def_;
+ (*parameter_list)[len].mode = CORBA::PARAM_IN;
+ len++;
+
+ return safe_parameter_list._retn ();
+}
+
+Dynamic::ExceptionList *
+TAO_ServerRequestInfo_CORBA_ValueBoxDef_original_type_def_set::exceptions (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the exception list on demand.
+ Dynamic::ExceptionList *exception_list =
+ TAO_RequestInfo_Util::make_exception_list (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return exception_list;
+}
+
+CORBA::Any *
+TAO_ServerRequestInfo_CORBA_ValueBoxDef_original_type_def_set::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Generate the result on demand.
+ CORBA::Boolean tk_void_any = 1;
+ CORBA::Any *result_any =
+ TAO_RequestInfo_Util::make_any (tk_void_any ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return result_any;
+}
+
+char *
+TAO_ServerRequestInfo_CORBA_ValueBoxDef_original_type_def_set::target_most_derived_interface (
+ ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return
+ CORBA::string_dup (this->_tao_impl->_interface_repository_id ());
+}
+
+CORBA::Boolean
+TAO_ServerRequestInfo_CORBA_ValueBoxDef_original_type_def_set::target_is_a (
+ const char * id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return this->_tao_impl->_is_a (id ACE_ENV_ARG_PARAMETER);
+}
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Implementation
+//
+
+// Factory function Implementation.
+_TAO_CORBA_ValueBoxDef_Strategized_Proxy_Broker *_TAO_CORBA_ValueBoxDef_Strategized_Proxy_Broker::the_TAO_CORBA_ValueBoxDef_Strategized_Proxy_Broker (void)
+{
+ static _TAO_CORBA_ValueBoxDef_Strategized_Proxy_Broker strategized_proxy_broker;
+ return &strategized_proxy_broker;
+}
+
+_TAO_CORBA_ValueBoxDef_Strategized_Proxy_Broker::_TAO_CORBA_ValueBoxDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ this->proxy_cache_[i] = 0;
+
+}
+
+_TAO_CORBA_ValueBoxDef_Strategized_Proxy_Broker::~_TAO_CORBA_ValueBoxDef_Strategized_Proxy_Broker (void)
+{
+ for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i)
+ delete this->proxy_cache_[i];
+
+}
+
+_TAO_CORBA_ValueBoxDef_Proxy_Impl&
+_TAO_CORBA_ValueBoxDef_Strategized_Proxy_Broker::select_proxy (
+ ::CORBA_ValueBoxDef *object
+ ACE_ENV_ARG_DECL
+ )
+{
+ int strategy =
+ TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ if (this->proxy_cache_[strategy] != 0)
+ return *this->proxy_cache_[strategy];
+
+ this->create_proxy (strategy ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (*this->proxy_cache_[strategy]);
+
+ return *this->proxy_cache_[strategy];
+
+}
+
+void
+_TAO_CORBA_ValueBoxDef_Strategized_Proxy_Broker::create_proxy (
+ int strategy
+ ACE_ENV_ARG_DECL
+ )
+{
+ ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_);
+
+ if (this->proxy_cache_[strategy] == 0)
+ {
+ switch (strategy)
+ {
+ case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ _TAO_CORBA_ValueBoxDef_ThruPOA_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY:
+ default:
+ ACE_NEW_THROW_EX (
+ this->proxy_cache_[strategy],
+ ::_TAO_CORBA_ValueBoxDef_Remote_Proxy_Impl,
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK;
+ break;
+
+ }
+
+ }
+}
+
+
+//
+// End Strategized Proxy Broker Implementation
+///////////////////////////////////////////////////////////////////////
+
+
+_TAO_CORBA_ValueBoxDef_Proxy_Broker *
+_TAO_CORBA_ValueBoxDef_Proxy_Broker_Factory_function (CORBA::Object_ptr obj)
+{
+ ACE_UNUSED_ARG (obj);
+ return ::_TAO_CORBA_ValueBoxDef_Strategized_Proxy_Broker::the_TAO_CORBA_ValueBoxDef_Strategized_Proxy_Broker();
+}
+
+int
+_TAO_CORBA_ValueBoxDef_Proxy_Broker_Factory_Initializer (long)
+{
+ _TAO_CORBA_ValueBoxDef_Proxy_Broker_Factory_function_pointer =
+ _TAO_CORBA_ValueBoxDef_Proxy_Broker_Factory_function;
+
+ return 0;
+}
+
+static int _TAO_CORBA_ValueBoxDef_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
+ _TAO_CORBA_ValueBoxDef_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (long, _TAO_CORBA_ValueBoxDef_Proxy_Broker_Factory_Initializer));
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Proxy Implementation
+//
+
+_TAO_CORBA_ValueBoxDef_ThruPOA_Proxy_Impl::_TAO_CORBA_ValueBoxDef_ThruPOA_Proxy_Impl (void)
+{}
+
+// ThruPOA Implementation of the IDL interface methods
+
+CORBA_IDLType_ptr _TAO_CORBA_ValueBoxDef_ThruPOA_Proxy_Impl::original_type_def (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ CORBA_IDLType_var _tao_retval;
+ ACE_UNUSED_ARG (_tao_retval);
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "original_type_def",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+ return ACE_reinterpret_cast (
+ POA_CORBA_ValueBoxDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ValueBoxDef:1.0"
+ )
+ )->original_type_def (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+void _TAO_CORBA_ValueBoxDef_ThruPOA_Proxy_Impl::original_type_def (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ TAO_Object_Adapter::Servant_Upcall servant_upcall (
+ _collocated_tao_target_->_stubobj ()->servant_orb_var ()->orb_core ()
+ );
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ _collocated_tao_target_->_object_key (),
+ "original_type_def",
+ forward_to.out ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK;
+ ACE_reinterpret_cast (
+ POA_CORBA_ValueBoxDef_ptr,
+ servant_upcall.servant ()->_downcast (
+ "IDL:omg.org/CORBA/ValueBoxDef:1.0"
+ )
+ )->original_type_def (
+ original_type_def
+ ACE_ENV_ARG_PARAMETER
+ );
+ return;
+}
+
+//
+// End ThruPOA Proxy Implementation
+///////////////////////////////////////////////////////////////////////
+
+// skeleton constructor
+POA_CORBA_ValueBoxDef::POA_CORBA_ValueBoxDef (void)
+{
+ this->optable_ = &tao_CORBA_ValueBoxDef_optable;
+}
+
+// copy ctor
+POA_CORBA_ValueBoxDef::POA_CORBA_ValueBoxDef (const POA_CORBA_ValueBoxDef& rhs)
+ : POA_CORBA_TypedefDef (rhs),
+ POA_CORBA_Contained (rhs),
+ POA_CORBA_IDLType (rhs),
+ POA_CORBA_IRObject (rhs),
+ TAO_ServantBase (rhs)
+{}
+
+// skeleton destructor
+POA_CORBA_ValueBoxDef::~POA_CORBA_ValueBoxDef (void)
+{
+}
+
+void POA_CORBA_ValueBoxDef::_get_original_type_def_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ValueBoxDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ValueBoxDef *, _tao_object_reference);
+
+ CORBA_IDLType_var _tao_retval;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ValueBoxDef_original_type_def_get ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+ _tao_retval =
+ _tao_impl->original_type_def (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ CORBA_IDLType_ptr _tao_retval_info = _tao_retval._retn ();
+ ri.result (_tao_retval_info);
+ _tao_retval = _tao_retval_info;
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ if (!(
+ (_tao_out << _tao_retval.in ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ValueBoxDef::_set_original_type_def_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void *_tao_object_reference,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_ValueBoxDef *_tao_impl =
+ ACE_static_cast (POA_CORBA_ValueBoxDef *, _tao_object_reference);
+
+ _tao_server_request.argument_flag (0);
+ CORBA_IDLType_var original_type_def;
+ if (!(
+ (_tao_in >> original_type_def.out ())
+ ))
+ ACE_THROW (CORBA::MARSHAL());
+
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ TAO_Object_Adapter::Servant_Upcall *_tao_upcall =
+ ACE_static_cast (TAO_Object_Adapter::Servant_Upcall *, _tao_servant_upcall);
+
+ TAO_ServerRequestInterceptor_Adapter _tao_vfr (
+ _tao_server_request.orb_core ()->server_request_interceptors (),
+ _tao_server_request.interceptor_count ()
+ );
+
+ TAO_ServerRequestInfo_CORBA_ValueBoxDef_original_type_def_set ri (
+ _tao_server_request,
+ _tao_upcall,
+ _tao_impl,
+ original_type_def.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+
+ ACE_TRY
+ {
+ _tao_vfr.receive_request (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_impl->original_type_def (
+ original_type_def.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ TAO_INTERCEPTOR_CHECK;
+
+#if (TAO_HAS_INTERCEPTORS == 1)
+ ri.reply_status (PortableInterceptor::SUCCESSFUL);
+ _tao_vfr.send_reply (&ri ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ri.exception (&ACE_ANY_EXCEPTION);
+ _tao_vfr.send_exception (
+ &ri
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_TRY_CHECK;
+
+ PortableInterceptor::ReplyStatus _tao_status =
+ ri.reply_status (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (_tao_status == PortableInterceptor::SYSTEM_EXCEPTION
+ || _tao_status == PortableInterceptor::USER_EXCEPTION)
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK;
+#endif /* TAO_HAS_INTERCEPTORS */
+
+ _tao_server_request.init_reply ();
+
+ // In case _tao_servant_upcall is not used in this function
+ ACE_UNUSED_ARG (_tao_servant_upcall);
+}
+
+void POA_CORBA_ValueBoxDef::_is_a_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ TAO_InputCDR &_tao_in = _tao_server_request.incoming ();
+ POA_CORBA_ValueBoxDef *_tao_impl = (POA_CORBA_ValueBoxDef *) _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_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_ValueBoxDef::_non_existent_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ValueBoxDef *_tao_impl = (POA_CORBA_ValueBoxDef *) _tao_object_reference;
+ CORBA::Boolean _tao_retval = _tao_impl->_non_existent (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ _tao_server_request.init_reply ();
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+ if (!(_tao_out << CORBA::Any::from_boolean (_tao_retval)))
+ ACE_THROW (CORBA::MARSHAL ());
+}
+
+void POA_CORBA_ValueBoxDef::_interface_skel (
+ TAO_ServerRequest &_tao_server_request,
+ void * _tao_object_reference,
+ void * /* Servant_Upcall */
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_ValueBoxDef *_tao_impl = (POA_CORBA_ValueBoxDef *) _tao_object_reference;
+ CORBA_InterfaceDef_ptr _tao_retval = 0;
+ CORBA::Boolean _tao_result = 0;
+
+ TAO_IFR_Client_Adapter *_tao_adapter =
+ ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance (
+ TAO_ORB_Core::ifr_client_adapter_name ()
+ );
+
+ if (_tao_adapter == 0)
+ {
+ ACE_THROW (CORBA::INTF_REPOS ());
+ }
+
+ ACE_TRY
+ {
+ _tao_retval = _tao_impl->_get_interface (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ _tao_server_request.init_reply ();
+
+ TAO_OutputCDR &_tao_out = _tao_server_request.outgoing ();
+
+ _tao_result =
+ _tao_adapter->interfacedef_cdr_insert (
+ _tao_out,
+ _tao_retval
+ );
+ }
+ ACE_CATCHALL
+ {
+ _tao_adapter->dispose (_tao_retval);
+ }
+ ACE_ENDTRY;
+
+ if (_tao_result == 0)
+ {
+ ACE_THROW (CORBA::MARSHAL ());
+ }
+}
+
+CORBA::Boolean POA_CORBA_ValueBoxDef::_is_a (
+ const char* value
+ ACE_ENV_ARG_DECL
+ )
+{
+ const char *base_id = CORBA::_tc_Object->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/ValueBoxDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/TypedefDef:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Contained:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IDLType:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/IRObject:1.0")) ||
+ (!ACE_OS::strcmp ((char *)value, base_id)))
+ return 1;
+ else
+ return 0;
+}
+
+void* POA_CORBA_ValueBoxDef::_downcast (
+ const char* logical_type_id
+ )
+{
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/ValueBoxDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_ValueBoxDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/TypedefDef:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_TypedefDef_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Contained:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_Contained_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IDLType:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IDLType_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/IRObject:1.0") == 0)
+ return ACE_static_cast (POA_CORBA_IRObject_ptr, this);
+ if (ACE_OS::strcmp (logical_type_id, "IDL:omg.org/CORBA/Object:1.0") == 0)
+ return ACE_static_cast(PortableServer::Servant, this);
+ return 0;
+}
+
+void POA_CORBA_ValueBoxDef::_dispatch (TAO_ServerRequest &req, void *servant_upcall ACE_ENV_ARG_DECL)
+{
+ this->synchronous_upcall_dispatch (req,
+ servant_upcall,
+ this
+ ACE_ENV_ARG_PARAMETER);
+}
+
+
+const char* POA_CORBA_ValueBoxDef::_interface_repository_id (void) const
+{
+ return "IDL:omg.org/CORBA/ValueBoxDef:1.0";
+}
+
+CORBA_ValueBoxDef*
+POA_CORBA_ValueBoxDef::_this (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_Stub *stub = this->_create_stub (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ TAO_Stub_Auto_Ptr safe_stub (stub);
+
+ CORBA::Object_ptr tmp = CORBA::Object::_nil ();
+
+ if (stub->servant_orb_var ()->orb_core ()->optimize_collocation_objects ())
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 1, this), 0);
+ else
+ ACE_NEW_RETURN (tmp, CORBA::Object (stub, 0, this), 0);
+
+ CORBA::Object_var obj = tmp;
+
+ (void) safe_stub.release ();
+
+ return ::CORBA_ValueBoxDef::_unchecked_narrow (obj.in ());
+}
+
+
+
+#endif /* ifndef */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IFR_ExtendedS.h b/TAO/orbsvcs/orbsvcs/IFRService/IFR_ExtendedS.h
new file mode 100644
index 00000000000..722fd223576
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_ExtendedS.h
@@ -0,0 +1,1748 @@
+// -*- C++ -*-
+//
+// $Id$
+
+// **** Code generated by the The ACE ORB (TAO) IDL Compiler ****
+// TAO and the TAO IDL Compiler have been developed by:
+// Center for Distributed Object Computing
+// Washington University
+// St. Louis, MO
+// USA
+// http://www.cs.wustl.edu/~schmidt/doc-center.html
+// and
+// Distributed Object Computing Laboratory
+// University of California at Irvine
+// Irvine, CA
+// USA
+// http://doc.ece.uci.edu/
+//
+// Information about TAO is available at:
+// http://www.cs.wustl.edu/~schmidt/TAO.html
+
+#ifndef _TAO_IDL__________ORBSVCS_IFR_SERVICE_ORIG_IFR_EXTENDEDS_H_
+#define _TAO_IDL__________ORBSVCS_IFR_SERVICE_ORIG_IFR_EXTENDEDS_H_
+
+#include "ace/pre.h"
+#include "IFR_BasicS.h"
+#include "tao/IFR_Client/IFR_ExtendedC.h"
+
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+
+#include "tao/PortableServer/PortableServer.h"
+#include "tao/PortableServer/Servant_Base.h"
+#include "tao/PortableServer/Collocated_Object.h"
+#include "tao/PortableServer/ThruPOA_Object_Proxy_Impl.h"
+#include "tao/PortableServer/Direct_Object_Proxy_Impl.h"
+#if defined(_MSC_VER)
+#if (_MSC_VER >= 1200)
+#pragma warning(push)
+#endif /* _MSC_VER >= 1200 */
+#pragma warning(disable:4250)
+#endif /* _MSC_VER */
+
+#if defined (__BORLANDC__)
+#pragma option push -w-rvl -w-rch -w-ccc -w-inl
+#endif /* __BORLANDC__ */
+
+class POA_CORBA_FixedDef;
+typedef POA_CORBA_FixedDef *POA_CORBA_FixedDef_ptr;
+// Forward Classes Declaration
+class _TAO_CORBA_FixedDef_ThruPOA_Proxy_Impl;
+class _TAO_CORBA_FixedDef_Strategized_Proxy_Broker;
+
+class POA_CORBA_FixedDef : public virtual POA_CORBA_IDLType
+{
+protected:
+ POA_CORBA_FixedDef (void);
+
+public:
+ POA_CORBA_FixedDef (const POA_CORBA_FixedDef& rhs);
+ virtual ~POA_CORBA_FixedDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::CORBA_FixedDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ virtual CORBA::UShort digits (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_digits_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void digits (
+ CORBA::UShort digits
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_digits_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA::Short scale (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_scale_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void scale (
+ CORBA::Short scale
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_scale_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+};
+
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Declaration
+//
+
+class _TAO_CORBA_FixedDef_Strategized_Proxy_Broker : public virtual ::_TAO_CORBA_FixedDef_Proxy_Broker
+{
+public:
+ _TAO_CORBA_FixedDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_CORBA_FixedDef_Strategized_Proxy_Broker (void);
+
+ virtual ::_TAO_CORBA_FixedDef_Proxy_Impl &select_proxy (
+ ::CORBA_FixedDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::_TAO_CORBA_FixedDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+public:
+ static _TAO_CORBA_FixedDef_Strategized_Proxy_Broker *the_TAO_CORBA_FixedDef_Strategized_Proxy_Broker (void);
+};
+
+
+//
+// End Strategized Proxy Broker Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Impl. Declaration
+//
+
+class _TAO_CORBA_FixedDef_ThruPOA_Proxy_Impl :
+ public virtual ::_TAO_CORBA_FixedDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_IDLType_ThruPOA_Proxy_Impl
+
+{
+public:
+ _TAO_CORBA_FixedDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_CORBA_FixedDef_ThruPOA_Proxy_Impl (void) { }
+
+ virtual CORBA::UShort digits (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void digits (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::UShort digits
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA::Short scale (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void scale (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::Short scale
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+
+};
+
+//
+// ThruPOA Proxy Impl. Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+class POA_CORBA_ValueMemberDef;
+typedef POA_CORBA_ValueMemberDef *POA_CORBA_ValueMemberDef_ptr;
+// Forward Classes Declaration
+class _TAO_CORBA_ValueMemberDef_ThruPOA_Proxy_Impl;
+class _TAO_CORBA_ValueMemberDef_Strategized_Proxy_Broker;
+
+class POA_CORBA_ValueMemberDef : public virtual POA_CORBA_Contained
+{
+protected:
+ POA_CORBA_ValueMemberDef (void);
+
+public:
+ POA_CORBA_ValueMemberDef (const POA_CORBA_ValueMemberDef& rhs);
+ virtual ~POA_CORBA_ValueMemberDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::CORBA_ValueMemberDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ virtual CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_type_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_IDLType_ptr type_def (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_type_def_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void type_def (
+ CORBA_IDLType_ptr type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_type_def_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA::Visibility access (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_access_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void access (
+ CORBA::Visibility access
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_access_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+};
+
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Declaration
+//
+
+class _TAO_CORBA_ValueMemberDef_Strategized_Proxy_Broker : public virtual ::_TAO_CORBA_ValueMemberDef_Proxy_Broker
+{
+public:
+ _TAO_CORBA_ValueMemberDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_CORBA_ValueMemberDef_Strategized_Proxy_Broker (void);
+
+ virtual ::_TAO_CORBA_ValueMemberDef_Proxy_Impl &select_proxy (
+ ::CORBA_ValueMemberDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::_TAO_CORBA_ValueMemberDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+public:
+ static _TAO_CORBA_ValueMemberDef_Strategized_Proxy_Broker *the_TAO_CORBA_ValueMemberDef_Strategized_Proxy_Broker (void);
+};
+
+
+//
+// End Strategized Proxy Broker Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Impl. Declaration
+//
+
+class _TAO_CORBA_ValueMemberDef_ThruPOA_Proxy_Impl :
+ public virtual ::_TAO_CORBA_ValueMemberDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_Contained_ThruPOA_Proxy_Impl
+
+{
+public:
+ _TAO_CORBA_ValueMemberDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_CORBA_ValueMemberDef_ThruPOA_Proxy_Impl (void) { }
+
+ virtual CORBA::TypeCode_ptr type (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_IDLType_ptr type_def (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void type_def (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA_IDLType_ptr type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA::Visibility access (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void access (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::Visibility access
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+
+};
+
+//
+// ThruPOA Proxy Impl. Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+class POA_CORBA_ValueDef;
+typedef POA_CORBA_ValueDef *POA_CORBA_ValueDef_ptr;
+// Forward Classes Declaration
+class _TAO_CORBA_ValueDef_ThruPOA_Proxy_Impl;
+class _TAO_CORBA_ValueDef_Strategized_Proxy_Broker;
+
+class POA_CORBA_ValueDef : public virtual POA_CORBA_Container, public virtual POA_CORBA_Contained, public virtual POA_CORBA_IDLType
+{
+protected:
+ POA_CORBA_ValueDef (void);
+
+public:
+ POA_CORBA_ValueDef (const POA_CORBA_ValueDef& rhs);
+ virtual ~POA_CORBA_ValueDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::CORBA_ValueDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ virtual CORBA_InterfaceDefSeq * supported_interfaces (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_supported_interfaces_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void supported_interfaces (
+ const CORBA_InterfaceDefSeq & supported_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_supported_interfaces_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_InitializerSeq * initializers (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_initializers_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void initializers (
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_initializers_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_ValueDef_ptr base_value (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_base_value_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void base_value (
+ CORBA_ValueDef_ptr base_value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_base_value_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_ValueDefSeq * abstract_base_values (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_abstract_base_values_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void abstract_base_values (
+ const CORBA_ValueDefSeq & abstract_base_values
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_abstract_base_values_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA::Boolean is_abstract (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_is_abstract_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void is_abstract (
+ CORBA::Boolean is_abstract
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_is_abstract_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA::Boolean is_custom (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_is_custom_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void is_custom (
+ CORBA::Boolean is_custom
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_is_custom_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA::Boolean is_truncatable (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_is_truncatable_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void is_truncatable (
+ CORBA::Boolean is_truncatable
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_is_truncatable_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA::Boolean is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void is_a_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_ValueDef::FullValueDescription * describe_value (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void describe_value_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_ValueMemberDef_ptr create_value_member (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ CORBA::Visibility access
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void create_value_member_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_AttributeDef_ptr create_attribute (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void create_attribute_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual CORBA_OperationDef_ptr create_operation (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr result,
+ CORBA::OperationMode mode,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions,
+ const CORBA_ContextIdSeq & contexts
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void create_operation_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void lookup_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void lookup_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_module_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_constant_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_struct_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_union_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_enum_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_alias_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_value_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_value_box_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_exception_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_native_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_abstract_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void create_local_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+};
+
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Declaration
+//
+
+class _TAO_CORBA_ValueDef_Strategized_Proxy_Broker : public virtual ::_TAO_CORBA_ValueDef_Proxy_Broker
+{
+public:
+ _TAO_CORBA_ValueDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_CORBA_ValueDef_Strategized_Proxy_Broker (void);
+
+ virtual ::_TAO_CORBA_ValueDef_Proxy_Impl &select_proxy (
+ ::CORBA_ValueDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::_TAO_CORBA_ValueDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+public:
+ static _TAO_CORBA_ValueDef_Strategized_Proxy_Broker *the_TAO_CORBA_ValueDef_Strategized_Proxy_Broker (void);
+};
+
+
+//
+// End Strategized Proxy Broker Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Impl. Declaration
+//
+
+class _TAO_CORBA_ValueDef_ThruPOA_Proxy_Impl :
+ public virtual ::_TAO_CORBA_ValueDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_Container_ThruPOA_Proxy_Impl,
+ public virtual ::_TAO_CORBA_Contained_ThruPOA_Proxy_Impl,
+ public virtual ::_TAO_CORBA_IDLType_ThruPOA_Proxy_Impl
+
+{
+public:
+ _TAO_CORBA_ValueDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_CORBA_ValueDef_ThruPOA_Proxy_Impl (void) { }
+
+ virtual CORBA_InterfaceDefSeq * supported_interfaces (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void supported_interfaces (
+ CORBA_Object *_collocated_tao_target_,
+ const CORBA_InterfaceDefSeq & supported_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_InitializerSeq * initializers (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void initializers (
+ CORBA_Object *_collocated_tao_target_,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_ValueDef_ptr base_value (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void base_value (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA_ValueDef_ptr base_value
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_ValueDefSeq * abstract_base_values (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void abstract_base_values (
+ CORBA_Object *_collocated_tao_target_,
+ const CORBA_ValueDefSeq & abstract_base_values
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA::Boolean is_abstract (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void is_abstract (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::Boolean is_abstract
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA::Boolean is_custom (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void is_custom (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::Boolean is_custom
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA::Boolean is_truncatable (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void is_truncatable (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA::Boolean is_truncatable
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA::Boolean is_a (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_ValueDef::FullValueDescription * describe_value (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_ValueMemberDef_ptr create_value_member (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ CORBA::Visibility access
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_AttributeDef_ptr create_attribute (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual CORBA_OperationDef_ptr create_operation (
+ CORBA_Object *_collocated_tao_target_,
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr result,
+ CORBA::OperationMode mode,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions,
+ const CORBA_ContextIdSeq & contexts
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+
+};
+
+//
+// ThruPOA Proxy Impl. Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+class POA_CORBA_ValueBoxDef;
+typedef POA_CORBA_ValueBoxDef *POA_CORBA_ValueBoxDef_ptr;
+// Forward Classes Declaration
+class _TAO_CORBA_ValueBoxDef_ThruPOA_Proxy_Impl;
+class _TAO_CORBA_ValueBoxDef_Strategized_Proxy_Broker;
+
+class POA_CORBA_ValueBoxDef : public virtual POA_CORBA_TypedefDef
+{
+protected:
+ POA_CORBA_ValueBoxDef (void);
+
+public:
+ POA_CORBA_ValueBoxDef (const POA_CORBA_ValueBoxDef& rhs);
+ virtual ~POA_CORBA_ValueBoxDef (void);
+
+
+ virtual CORBA::Boolean _is_a (
+ const char* logical_type_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual void* _downcast (
+ const char* logical_type_id
+ );
+
+ static void _is_a_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _non_existent_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void _dispatch (
+ TAO_ServerRequest &req,
+ void *_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ ::CORBA_ValueBoxDef *_this (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+
+ virtual const char* _interface_repository_id (void) const;
+
+ virtual CORBA_IDLType_ptr original_type_def (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _get_original_type_def_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ virtual void original_type_def (
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ )) = 0;
+
+ static void _set_original_type_def_skel (
+ TAO_ServerRequest &_tao_req,
+ void *_tao_obj,
+ void *_tao_servant_upcall
+ ACE_ENV_ARG_DECL
+ );
+
+ static void _get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void _get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+ static void destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS);
+
+
+
+};
+
+
+///////////////////////////////////////////////////////////////////////
+// Strategized Proxy Broker Declaration
+//
+
+class _TAO_CORBA_ValueBoxDef_Strategized_Proxy_Broker : public virtual ::_TAO_CORBA_ValueBoxDef_Proxy_Broker
+{
+public:
+ _TAO_CORBA_ValueBoxDef_Strategized_Proxy_Broker (void);
+
+ virtual ~_TAO_CORBA_ValueBoxDef_Strategized_Proxy_Broker (void);
+
+ virtual ::_TAO_CORBA_ValueBoxDef_Proxy_Impl &select_proxy (
+ ::CORBA_ValueBoxDef *object
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Helper methods that takes care to create the proxy
+ // as soon as their use is necessary.
+ void create_proxy (
+ int collocation_strategy
+ ACE_ENV_ARG_DECL
+ );
+
+private:
+
+ // Caches the proxy implementations. The proxy implementation
+ // are totally stateless, and those can be shared by all the
+ // instances of a given IDL interface type.
+ ::_TAO_CORBA_ValueBoxDef_Proxy_Impl
+ *proxy_cache_[TAO_Collocation_Strategies::CS_LAST];
+
+ TAO_SYNCH_MUTEX mutex_;
+ // This funxtion is used to get an handle to the unique instance
+ // of the Strategized Proxy Broker that is available for a given
+ // interface.
+
+public:
+ static _TAO_CORBA_ValueBoxDef_Strategized_Proxy_Broker *the_TAO_CORBA_ValueBoxDef_Strategized_Proxy_Broker (void);
+};
+
+
+//
+// End Strategized Proxy Broker Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+///////////////////////////////////////////////////////////////////////
+// ThruPOA Impl. Declaration
+//
+
+class _TAO_CORBA_ValueBoxDef_ThruPOA_Proxy_Impl :
+ public virtual ::_TAO_CORBA_ValueBoxDef_Proxy_Impl,
+ public virtual TAO_ThruPOA_Object_Proxy_Impl,
+ public virtual ::_TAO_CORBA_TypedefDef_ThruPOA_Proxy_Impl
+
+{
+public:
+ _TAO_CORBA_ValueBoxDef_ThruPOA_Proxy_Impl (void);
+
+ virtual ~_TAO_CORBA_ValueBoxDef_ThruPOA_Proxy_Impl (void) { }
+
+ virtual CORBA_IDLType_ptr original_type_def (
+ CORBA_Object *_collocated_tao_target_
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ virtual void original_type_def (
+ CORBA_Object *_collocated_tao_target_,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+
+};
+
+//
+// ThruPOA Proxy Impl. Declaration
+///////////////////////////////////////////////////////////////////////
+
+
+#include "IFR_ExtendedS_T.h"
+
+#if defined (__ACE_INLINE__)
+#include "IFR_ExtendedS.i"
+#endif /* defined INLINE */
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#if defined (__BORLANDC__)
+#pragma option pop
+#endif /* __BORLANDC__ */
+
+#include "ace/post.h"
+#endif /* ifndef */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IFR_ExtendedS.i b/TAO/orbsvcs/orbsvcs/IFRService/IFR_ExtendedS.i
new file mode 100644
index 00000000000..7248973257f
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_ExtendedS.i
@@ -0,0 +1,936 @@
+// -*- C++ -*-
+//
+// $Id$
+
+// **** Code generated by the The ACE ORB (TAO) IDL Compiler ****
+// TAO and the TAO IDL Compiler have been developed by:
+// Center for Distributed Object Computing
+// Washington University
+// St. Louis, MO
+// USA
+// http://www.cs.wustl.edu/~schmidt/doc-center.html
+// and
+// Distributed Object Computing Laboratory
+// University of California at Irvine
+// Irvine, CA
+// USA
+// http://doc.ece.uci.edu/
+//
+// Information about TAO is available at:
+// http://www.cs.wustl.edu/~schmidt/TAO.html
+
+ACE_INLINE void POA_CORBA_FixedDef::_get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IDLType_ptr impl = (POA_CORBA_FixedDef_ptr) obj;
+ POA_CORBA_IDLType::_get_type_skel (
+ req,
+ (POA_CORBA_IDLType_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_FixedDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_FixedDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_FixedDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_FixedDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueMemberDef::_get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ValueMemberDef_ptr) obj;
+ POA_CORBA_Contained::_get_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueMemberDef::_set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ValueMemberDef_ptr) obj;
+ POA_CORBA_Contained::_set_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueMemberDef::_get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ValueMemberDef_ptr) obj;
+ POA_CORBA_Contained::_get_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueMemberDef::_set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ValueMemberDef_ptr) obj;
+ POA_CORBA_Contained::_set_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueMemberDef::_get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ValueMemberDef_ptr) obj;
+ POA_CORBA_Contained::_get_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueMemberDef::_set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ValueMemberDef_ptr) obj;
+ POA_CORBA_Contained::_set_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueMemberDef::_get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ValueMemberDef_ptr) obj;
+ POA_CORBA_Contained::_get_defined_in_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueMemberDef::_get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ValueMemberDef_ptr) obj;
+ POA_CORBA_Contained::_get_absolute_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueMemberDef::_get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ValueMemberDef_ptr) obj;
+ POA_CORBA_Contained::_get_containing_repository_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueMemberDef::describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ValueMemberDef_ptr) obj;
+ POA_CORBA_Contained::describe_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueMemberDef::move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ValueMemberDef_ptr) obj;
+ POA_CORBA_Contained::move_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueMemberDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_ValueMemberDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueMemberDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_ValueMemberDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueDef::lookup_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ValueDef_ptr) obj;
+ POA_CORBA_Container::lookup_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueDef::contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ValueDef_ptr) obj;
+ POA_CORBA_Container::contents_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueDef::lookup_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ValueDef_ptr) obj;
+ POA_CORBA_Container::lookup_name_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueDef::describe_contents_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ValueDef_ptr) obj;
+ POA_CORBA_Container::describe_contents_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueDef::create_module_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ValueDef_ptr) obj;
+ POA_CORBA_Container::create_module_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueDef::create_constant_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ValueDef_ptr) obj;
+ POA_CORBA_Container::create_constant_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueDef::create_struct_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ValueDef_ptr) obj;
+ POA_CORBA_Container::create_struct_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueDef::create_union_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ValueDef_ptr) obj;
+ POA_CORBA_Container::create_union_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueDef::create_enum_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ValueDef_ptr) obj;
+ POA_CORBA_Container::create_enum_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueDef::create_alias_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ValueDef_ptr) obj;
+ POA_CORBA_Container::create_alias_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueDef::create_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ValueDef_ptr) obj;
+ POA_CORBA_Container::create_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueDef::create_value_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ValueDef_ptr) obj;
+ POA_CORBA_Container::create_value_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueDef::create_value_box_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ValueDef_ptr) obj;
+ POA_CORBA_Container::create_value_box_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueDef::create_exception_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ValueDef_ptr) obj;
+ POA_CORBA_Container::create_exception_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueDef::create_native_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ValueDef_ptr) obj;
+ POA_CORBA_Container::create_native_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueDef::create_abstract_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ValueDef_ptr) obj;
+ POA_CORBA_Container::create_abstract_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueDef::create_local_interface_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Container_ptr impl = (POA_CORBA_ValueDef_ptr) obj;
+ POA_CORBA_Container::create_local_interface_skel (
+ req,
+ (POA_CORBA_Container_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueDef::_get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ValueDef_ptr) obj;
+ POA_CORBA_Contained::_get_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueDef::_set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ValueDef_ptr) obj;
+ POA_CORBA_Contained::_set_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueDef::_get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ValueDef_ptr) obj;
+ POA_CORBA_Contained::_get_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueDef::_set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ValueDef_ptr) obj;
+ POA_CORBA_Contained::_set_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueDef::_get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ValueDef_ptr) obj;
+ POA_CORBA_Contained::_get_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueDef::_set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ValueDef_ptr) obj;
+ POA_CORBA_Contained::_set_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueDef::_get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ValueDef_ptr) obj;
+ POA_CORBA_Contained::_get_defined_in_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueDef::_get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ValueDef_ptr) obj;
+ POA_CORBA_Contained::_get_absolute_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueDef::_get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ValueDef_ptr) obj;
+ POA_CORBA_Contained::_get_containing_repository_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueDef::describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ValueDef_ptr) obj;
+ POA_CORBA_Contained::describe_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueDef::move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ValueDef_ptr) obj;
+ POA_CORBA_Contained::move_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueDef::_get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IDLType_ptr impl = (POA_CORBA_ValueDef_ptr) obj;
+ POA_CORBA_IDLType::_get_type_skel (
+ req,
+ (POA_CORBA_IDLType_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_ValueDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_ValueDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueBoxDef::_get_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ValueBoxDef_ptr) obj;
+ POA_CORBA_Contained::_get_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueBoxDef::_set_id_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ValueBoxDef_ptr) obj;
+ POA_CORBA_Contained::_set_id_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueBoxDef::_get_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ValueBoxDef_ptr) obj;
+ POA_CORBA_Contained::_get_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueBoxDef::_set_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ValueBoxDef_ptr) obj;
+ POA_CORBA_Contained::_set_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueBoxDef::_get_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ValueBoxDef_ptr) obj;
+ POA_CORBA_Contained::_get_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueBoxDef::_set_version_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ValueBoxDef_ptr) obj;
+ POA_CORBA_Contained::_set_version_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueBoxDef::_get_defined_in_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ValueBoxDef_ptr) obj;
+ POA_CORBA_Contained::_get_defined_in_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueBoxDef::_get_absolute_name_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ValueBoxDef_ptr) obj;
+ POA_CORBA_Contained::_get_absolute_name_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueBoxDef::_get_containing_repository_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ValueBoxDef_ptr) obj;
+ POA_CORBA_Contained::_get_containing_repository_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueBoxDef::describe_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ValueBoxDef_ptr) obj;
+ POA_CORBA_Contained::describe_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueBoxDef::move_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_Contained_ptr impl = (POA_CORBA_ValueBoxDef_ptr) obj;
+ POA_CORBA_Contained::move_skel (
+ req,
+ (POA_CORBA_Contained_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueBoxDef::_get_type_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IDLType_ptr impl = (POA_CORBA_ValueBoxDef_ptr) obj;
+ POA_CORBA_IDLType::_get_type_skel (
+ req,
+ (POA_CORBA_IDLType_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueBoxDef::_get_def_kind_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_ValueBoxDef_ptr) obj;
+ POA_CORBA_IRObject::_get_def_kind_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+ACE_INLINE void POA_CORBA_ValueBoxDef::destroy_skel (
+ TAO_ServerRequest &req,
+ void *obj,
+ void *context
+ ACE_ENV_ARG_DECL
+ )
+{
+ POA_CORBA_IRObject_ptr impl = (POA_CORBA_ValueBoxDef_ptr) obj;
+ POA_CORBA_IRObject::destroy_skel (
+ req,
+ (POA_CORBA_IRObject_ptr) impl,
+ context
+ ACE_ENV_ARG_PARAMETER
+ );
+}
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IFR_ExtendedS_T.cpp b/TAO/orbsvcs/orbsvcs/IFRService/IFR_ExtendedS_T.cpp
new file mode 100644
index 00000000000..9c3aad599bd
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_ExtendedS_T.cpp
@@ -0,0 +1,32 @@
+// -*- C++ -*-
+//
+// $Id$
+
+// **** Code generated by the The ACE ORB (TAO) IDL Compiler ****
+// TAO and the TAO IDL Compiler have been developed by:
+// Center for Distributed Object Computing
+// Washington University
+// St. Louis, MO
+// USA
+// http://www.cs.wustl.edu/~schmidt/doc-center.html
+// and
+// Distributed Object Computing Laboratory
+// University of California at Irvine
+// Irvine, CA
+// USA
+// http://doc.ece.uci.edu/
+//
+// Information about TAO is available at:
+// http://www.cs.wustl.edu/~schmidt/TAO.html
+
+#ifndef _TAO_IDL_IFR_EXTENDEDS_T_CPP_
+#define _TAO_IDL_IFR_EXTENDEDS_T_CPP_
+
+#include "IFR_ExtendedS_T.h"
+
+#if !defined (__ACE_INLINE__)
+#include "IFR_ExtendedS_T.i"
+#endif /* !defined INLINE */
+
+
+#endif /* ifndef */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IFR_ExtendedS_T.h b/TAO/orbsvcs/orbsvcs/IFRService/IFR_ExtendedS_T.h
new file mode 100644
index 00000000000..0fd833515c9
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_ExtendedS_T.h
@@ -0,0 +1,983 @@
+// -*- C++ -*-
+//
+// $Id$
+
+// **** Code generated by the The ACE ORB (TAO) IDL Compiler ****
+// TAO and the TAO IDL Compiler have been developed by:
+// Center for Distributed Object Computing
+// Washington University
+// St. Louis, MO
+// USA
+// http://www.cs.wustl.edu/~schmidt/doc-center.html
+// and
+// Distributed Object Computing Laboratory
+// University of California at Irvine
+// Irvine, CA
+// USA
+// http://doc.ece.uci.edu/
+//
+// Information about TAO is available at:
+// http://www.cs.wustl.edu/~schmidt/TAO.html
+
+#ifndef _TAO_IDL_IFR_EXTENDEDS_T_H_
+#define _TAO_IDL_IFR_EXTENDEDS_T_H_
+
+#include "ace/pre.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_HAS_USING_KEYWORD)
+
+TAO_NAMESPACE POA_CORBA
+{
+}
+TAO_NAMESPACE_CLOSE // module CORBA
+
+// TIE class: Refer to CORBA v2.2, Section 20.34.4
+template <class T>
+class POA_CORBA_FixedDef_tie : public POA_CORBA_FixedDef
+{
+public:
+ POA_CORBA_FixedDef_tie (T &t);
+ // the T& ctor
+ POA_CORBA_FixedDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ POA_CORBA_FixedDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ POA_CORBA_FixedDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~POA_CORBA_FixedDef_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA::UShort digits (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void digits (
+ CORBA::UShort digits
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::Short scale (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void scale (
+ CORBA::Short scale
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ POA_CORBA_FixedDef_tie (const POA_CORBA_FixedDef_tie &);
+ void operator= (const POA_CORBA_FixedDef_tie &);
+};
+
+// TIE class: Refer to CORBA v2.2, Section 20.34.4
+template <class T>
+class POA_CORBA_ValueMemberDef_tie : public POA_CORBA_ValueMemberDef
+{
+public:
+ POA_CORBA_ValueMemberDef_tie (T &t);
+ // the T& ctor
+ POA_CORBA_ValueMemberDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ POA_CORBA_ValueMemberDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ POA_CORBA_ValueMemberDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~POA_CORBA_ValueMemberDef_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_IDLType_ptr type_def (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void type_def (
+ CORBA_IDLType_ptr type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::Visibility access (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void access (
+ CORBA::Visibility access
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * id (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void id (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void name (
+ const char * name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * version (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void version (
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container_ptr defined_in (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Repository_ptr containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained::Description * describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ POA_CORBA_ValueMemberDef_tie (const POA_CORBA_ValueMemberDef_tie &);
+ void operator= (const POA_CORBA_ValueMemberDef_tie &);
+};
+
+// TIE class: Refer to CORBA v2.2, Section 20.34.4
+template <class T>
+class POA_CORBA_ValueDef_tie : public POA_CORBA_ValueDef
+{
+public:
+ POA_CORBA_ValueDef_tie (T &t);
+ // the T& ctor
+ POA_CORBA_ValueDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ POA_CORBA_ValueDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ POA_CORBA_ValueDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~POA_CORBA_ValueDef_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA_InterfaceDefSeq * supported_interfaces (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void supported_interfaces (
+ const CORBA_InterfaceDefSeq & supported_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_InitializerSeq * initializers (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void initializers (
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueDef_ptr base_value (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void base_value (
+ CORBA_ValueDef_ptr base_value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueDefSeq * abstract_base_values (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void abstract_base_values (
+ const CORBA_ValueDefSeq & abstract_base_values
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::Boolean is_abstract (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void is_abstract (
+ CORBA::Boolean is_abstract
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::Boolean is_custom (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void is_custom (
+ CORBA::Boolean is_custom
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::Boolean is_truncatable (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void is_truncatable (
+ CORBA::Boolean is_truncatable
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::Boolean is_a (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueDef::FullValueDescription * describe_value (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueMemberDef_ptr create_value_member (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ CORBA::Visibility access
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_AttributeDef_ptr create_attribute (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_OperationDef_ptr create_operation (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr result,
+ CORBA::OperationMode mode,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions,
+ const CORBA_ContextIdSeq & contexts
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained_ptr lookup (
+ const char * search_name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ContainedSeq * contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ContainedSeq * lookup_name (
+ const char * search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container::DescriptionSeq * describe_contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited,
+ CORBA::Long max_returned_objs
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ModuleDef_ptr create_module (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ConstantDef_ptr create_constant (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_StructDef_ptr create_struct (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_UnionDef_ptr create_union (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_EnumDef_ptr create_enum (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_AliasDef_ptr create_alias (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_InterfaceDef_ptr create_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueDef_ptr create_value (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA::Boolean is_custom,
+ CORBA::Boolean is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ CORBA::Boolean is_truncatable,
+ const CORBA_ValueDefSeq & abstract_base_values,
+ const CORBA_InterfaceDefSeq & supported_interfaces,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ValueBoxDef_ptr create_value_box (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_ExceptionDef_ptr create_exception (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_NativeDef_ptr create_native (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_AbstractInterfaceDef_ptr create_abstract_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_AbstractInterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_LocalInterfaceDef_ptr create_local_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * id (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void id (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void name (
+ const char * name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * version (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void version (
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container_ptr defined_in (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Repository_ptr containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained::Description * describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ POA_CORBA_ValueDef_tie (const POA_CORBA_ValueDef_tie &);
+ void operator= (const POA_CORBA_ValueDef_tie &);
+};
+
+// TIE class: Refer to CORBA v2.2, Section 20.34.4
+template <class T>
+class POA_CORBA_ValueBoxDef_tie : public POA_CORBA_ValueBoxDef
+{
+public:
+ POA_CORBA_ValueBoxDef_tie (T &t);
+ // the T& ctor
+ POA_CORBA_ValueBoxDef_tie (T &t, PortableServer::POA_ptr poa);
+ // ctor taking a POA
+ POA_CORBA_ValueBoxDef_tie (T *tp, CORBA::Boolean release=1);
+ // ctor taking pointer and an ownership flag
+ POA_CORBA_ValueBoxDef_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release=1);
+ // ctor with T*, ownership flag and a POA
+ ~POA_CORBA_ValueBoxDef_tie (void);
+ // dtor
+
+ // TIE specific functions
+ T *_tied_object (void);
+ // return the underlying object
+ void _tied_object (T &obj);
+ // set the underlying object
+ void _tied_object (T *obj, CORBA::Boolean release=1);
+ // set the underlying object and the ownership flag
+ CORBA::Boolean _is_owner (void);
+ // do we own it
+ void _is_owner (CORBA::Boolean b);
+ // set the ownership
+
+ // overridden ServantBase operations
+ PortableServer::POA_ptr _default_POA (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+
+ CORBA_IDLType_ptr original_type_def (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void original_type_def (
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * id (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void id (
+ const char * id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void name (
+ const char * name
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * version (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void version (
+ const char * version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Container_ptr defined_in (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ char * absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Repository_ptr containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA_Contained::Description * describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ));
+
+ private:
+ T *ptr_;
+ PortableServer::POA_var poa_;
+ CORBA::Boolean rel_;
+
+ // copy and assignment are not allowed
+ POA_CORBA_ValueBoxDef_tie (const POA_CORBA_ValueBoxDef_tie &);
+ void operator= (const POA_CORBA_ValueBoxDef_tie &);
+};
+
+#endif /* ACE_HAS_USING_KEYWORD */
+
+#if defined (__ACE_INLINE__)
+#include "IFR_ExtendedS_T.i"
+#endif /* defined INLINE */
+
+
+#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
+#include "IFR_ExtendedS_T.cpp"
+#endif /* defined REQUIRED SOURCE */
+
+
+#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
+#pragma implementation ("IFR_ExtendedS_T.cpp")
+#endif /* defined REQUIRED PRAGMA */
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#include "ace/post.h"
+#endif /* ifndef */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IFR_ExtendedS_T.i b/TAO/orbsvcs/orbsvcs/IFRService/IFR_ExtendedS_T.i
new file mode 100644
index 00000000000..362bd1e0da5
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_ExtendedS_T.i
@@ -0,0 +1,1749 @@
+// -*- C++ -*-
+//
+// $Id$
+
+// **** Code generated by the The ACE ORB (TAO) IDL Compiler ****
+// TAO and the TAO IDL Compiler have been developed by:
+// Center for Distributed Object Computing
+// Washington University
+// St. Louis, MO
+// USA
+// http://www.cs.wustl.edu/~schmidt/doc-center.html
+// and
+// Distributed Object Computing Laboratory
+// University of California at Irvine
+// Irvine, CA
+// USA
+// http://doc.ece.uci.edu/
+//
+// Information about TAO is available at:
+// http://www.cs.wustl.edu/~schmidt/TAO.html
+
+#if defined (ACE_HAS_USING_KEYWORD)
+
+template <class T> ACE_INLINE
+POA_CORBA_FixedDef_tie<T>::POA_CORBA_FixedDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_FixedDef_tie<T>::POA_CORBA_FixedDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_FixedDef_tie<T>::POA_CORBA_FixedDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_FixedDef_tie<T>::POA_CORBA_FixedDef_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_CORBA_FixedDef_tie<T>::~POA_CORBA_FixedDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_CORBA_FixedDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_FixedDef_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_CORBA_FixedDef_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_CORBA_FixedDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_FixedDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_CORBA_FixedDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->POA_CORBA_FixedDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA::UShort POA_CORBA_FixedDef_tie<T>::digits (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->digits (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_FixedDef_tie<T>::digits (
+ CORBA::UShort digits
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->digits (
+digits
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::Short POA_CORBA_FixedDef_tie<T>::scale (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->scale (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_FixedDef_tie<T>::scale (
+ CORBA::Short scale
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->scale (
+scale
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::TypeCode_ptr POA_CORBA_FixedDef_tie<T>::type (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_CORBA_FixedDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_FixedDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_CORBA_ValueMemberDef_tie<T>::POA_CORBA_ValueMemberDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_ValueMemberDef_tie<T>::POA_CORBA_ValueMemberDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_ValueMemberDef_tie<T>::POA_CORBA_ValueMemberDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_ValueMemberDef_tie<T>::POA_CORBA_ValueMemberDef_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_CORBA_ValueMemberDef_tie<T>::~POA_CORBA_ValueMemberDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_CORBA_ValueMemberDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_ValueMemberDef_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_CORBA_ValueMemberDef_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_CORBA_ValueMemberDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_ValueMemberDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_CORBA_ValueMemberDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->POA_CORBA_ValueMemberDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA::TypeCode_ptr POA_CORBA_ValueMemberDef_tie<T>::type (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_IDLType_ptr POA_CORBA_ValueMemberDef_tie<T>::type_def (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->type_def (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ValueMemberDef_tie<T>::type_def (
+ CORBA_IDLType_ptr type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->type_def (
+type_def
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::Visibility POA_CORBA_ValueMemberDef_tie<T>::access (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->access (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ValueMemberDef_tie<T>::access (
+ CORBA::Visibility access
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->access (
+access
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_ValueMemberDef_tie<T>::id (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->id (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ValueMemberDef_tie<T>::id (
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->id (
+id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_ValueMemberDef_tie<T>::name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ValueMemberDef_tie<T>::name (
+ const char * name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->name (
+name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_ValueMemberDef_tie<T>::version (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->version (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ValueMemberDef_tie<T>::version (
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->version (
+version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container_ptr POA_CORBA_ValueMemberDef_tie<T>::defined_in (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->defined_in (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_ValueMemberDef_tie<T>::absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->absolute_name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Repository_ptr POA_CORBA_ValueMemberDef_tie<T>::containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->containing_repository (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained::Description * POA_CORBA_ValueMemberDef_tie<T>::describe (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ValueMemberDef_tie<T>::move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->move (
+new_container,
+ new_name,
+ new_version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_CORBA_ValueMemberDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ValueMemberDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_CORBA_ValueDef_tie<T>::POA_CORBA_ValueDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_ValueDef_tie<T>::POA_CORBA_ValueDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_ValueDef_tie<T>::POA_CORBA_ValueDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_ValueDef_tie<T>::POA_CORBA_ValueDef_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_CORBA_ValueDef_tie<T>::~POA_CORBA_ValueDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_CORBA_ValueDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_ValueDef_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_CORBA_ValueDef_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_CORBA_ValueDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_ValueDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_CORBA_ValueDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->POA_CORBA_ValueDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA_InterfaceDefSeq * POA_CORBA_ValueDef_tie<T>::supported_interfaces (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->supported_interfaces (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ValueDef_tie<T>::supported_interfaces (
+ const CORBA_InterfaceDefSeq & supported_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->supported_interfaces (
+supported_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_InitializerSeq * POA_CORBA_ValueDef_tie<T>::initializers (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->initializers (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ValueDef_tie<T>::initializers (
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->initializers (
+initializers
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueDef_ptr POA_CORBA_ValueDef_tie<T>::base_value (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->base_value (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ValueDef_tie<T>::base_value (
+ CORBA_ValueDef_ptr base_value
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->base_value (
+base_value
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueDefSeq * POA_CORBA_ValueDef_tie<T>::abstract_base_values (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->abstract_base_values (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ValueDef_tie<T>::abstract_base_values (
+ const CORBA_ValueDefSeq & abstract_base_values
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->abstract_base_values (
+abstract_base_values
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::Boolean POA_CORBA_ValueDef_tie<T>::is_abstract (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->is_abstract (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ValueDef_tie<T>::is_abstract (
+ CORBA::Boolean is_abstract
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->is_abstract (
+is_abstract
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::Boolean POA_CORBA_ValueDef_tie<T>::is_custom (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->is_custom (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ValueDef_tie<T>::is_custom (
+ CORBA::Boolean is_custom
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->is_custom (
+is_custom
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::Boolean POA_CORBA_ValueDef_tie<T>::is_truncatable (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->is_truncatable (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ValueDef_tie<T>::is_truncatable (
+ CORBA::Boolean is_truncatable
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->is_truncatable (
+is_truncatable
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::Boolean POA_CORBA_ValueDef_tie<T>::is_a (
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->is_a (
+id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueDef::FullValueDescription * POA_CORBA_ValueDef_tie<T>::describe_value (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe_value (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueMemberDef_ptr POA_CORBA_ValueDef_tie<T>::create_value_member (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ CORBA::Visibility access
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_value_member (
+id,
+ name,
+ version,
+ type,
+ access
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_AttributeDef_ptr POA_CORBA_ValueDef_tie<T>::create_attribute (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_attribute (
+id,
+ name,
+ version,
+ type,
+ mode
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_OperationDef_ptr POA_CORBA_ValueDef_tie<T>::create_operation (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr result,
+ CORBA::OperationMode mode,
+ const CORBA_ParDescriptionSeq & params,
+ const CORBA_ExceptionDefSeq & exceptions,
+ const CORBA_ContextIdSeq & contexts
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_operation (
+id,
+ name,
+ version,
+ result,
+ mode,
+ params,
+ exceptions,
+ contexts
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained_ptr POA_CORBA_ValueDef_tie<T>::lookup (
+ const char * search_name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->lookup (
+search_name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ContainedSeq * POA_CORBA_ValueDef_tie<T>::contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->contents (
+limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ContainedSeq * POA_CORBA_ValueDef_tie<T>::lookup_name (
+ const char * search_name,
+ CORBA::Long levels_to_search,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->lookup_name (
+search_name,
+ levels_to_search,
+ limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container::DescriptionSeq * POA_CORBA_ValueDef_tie<T>::describe_contents (
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited,
+ CORBA::Long max_returned_objs
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe_contents (
+limit_type,
+ exclude_inherited,
+ max_returned_objs
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ModuleDef_ptr POA_CORBA_ValueDef_tie<T>::create_module (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_module (
+id,
+ name,
+ version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ConstantDef_ptr POA_CORBA_ValueDef_tie<T>::create_constant (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr type,
+ const CORBA::Any & value
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_constant (
+id,
+ name,
+ version,
+ type,
+ value
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_StructDef_ptr POA_CORBA_ValueDef_tie<T>::create_struct (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_struct (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_UnionDef_ptr POA_CORBA_ValueDef_tie<T>::create_union (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr discriminator_type,
+ const CORBA_UnionMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_union (
+id,
+ name,
+ version,
+ discriminator_type,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_EnumDef_ptr POA_CORBA_ValueDef_tie<T>::create_enum (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_EnumMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_enum (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_AliasDef_ptr POA_CORBA_ValueDef_tie<T>::create_alias (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_alias (
+id,
+ name,
+ version,
+ original_type
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_InterfaceDef_ptr POA_CORBA_ValueDef_tie<T>::create_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueDef_ptr POA_CORBA_ValueDef_tie<T>::create_value (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA::Boolean is_custom,
+ CORBA::Boolean is_abstract,
+ CORBA_ValueDef_ptr base_value,
+ CORBA::Boolean is_truncatable,
+ const CORBA_ValueDefSeq & abstract_base_values,
+ const CORBA_InterfaceDefSeq & supported_interfaces,
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_value (
+id,
+ name,
+ version,
+ is_custom,
+ is_abstract,
+ base_value,
+ is_truncatable,
+ abstract_base_values,
+ supported_interfaces,
+ initializers
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ValueBoxDef_ptr POA_CORBA_ValueDef_tie<T>::create_value_box (
+ const char * id,
+ const char * name,
+ const char * version,
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_value_box (
+id,
+ name,
+ version,
+ original_type_def
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_ExceptionDef_ptr POA_CORBA_ValueDef_tie<T>::create_exception (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_StructMemberSeq & members
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_exception (
+id,
+ name,
+ version,
+ members
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_NativeDef_ptr POA_CORBA_ValueDef_tie<T>::create_native (
+ const char * id,
+ const char * name,
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_native (
+id,
+ name,
+ version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_AbstractInterfaceDef_ptr POA_CORBA_ValueDef_tie<T>::create_abstract_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_AbstractInterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_abstract_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_LocalInterfaceDef_ptr POA_CORBA_ValueDef_tie<T>::create_local_interface (
+ const char * id,
+ const char * name,
+ const char * version,
+ const CORBA_InterfaceDefSeq & base_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->create_local_interface (
+id,
+ name,
+ version,
+ base_interfaces
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_ValueDef_tie<T>::id (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->id (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ValueDef_tie<T>::id (
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->id (
+id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_ValueDef_tie<T>::name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ValueDef_tie<T>::name (
+ const char * name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->name (
+name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_ValueDef_tie<T>::version (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->version (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ValueDef_tie<T>::version (
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->version (
+version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container_ptr POA_CORBA_ValueDef_tie<T>::defined_in (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->defined_in (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_ValueDef_tie<T>::absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->absolute_name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Repository_ptr POA_CORBA_ValueDef_tie<T>::containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->containing_repository (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained::Description * POA_CORBA_ValueDef_tie<T>::describe (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ValueDef_tie<T>::move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->move (
+new_container,
+ new_name,
+ new_version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::TypeCode_ptr POA_CORBA_ValueDef_tie<T>::type (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_CORBA_ValueDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ValueDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+POA_CORBA_ValueBoxDef_tie<T>::POA_CORBA_ValueBoxDef_tie (T &t)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_ValueBoxDef_tie<T>::POA_CORBA_ValueBoxDef_tie (T &t, PortableServer::POA_ptr poa)
+ : ptr_ (&t),
+ poa_ (PortableServer::POA::_duplicate (poa)),
+ rel_ (0)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_ValueBoxDef_tie<T>::POA_CORBA_ValueBoxDef_tie (T *tp, CORBA::Boolean release)
+ : ptr_ (tp),
+ poa_ (PortableServer::POA::_nil ()),
+ rel_ (release)
+{}
+
+template <class T> ACE_INLINE
+POA_CORBA_ValueBoxDef_tie<T>::POA_CORBA_ValueBoxDef_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_CORBA_ValueBoxDef_tie<T>::~POA_CORBA_ValueBoxDef_tie (void)
+{
+ if (this->rel_) delete this->ptr_;
+}
+
+template <class T> ACE_INLINE T *
+POA_CORBA_ValueBoxDef_tie<T>::_tied_object (void)
+{
+ return this->ptr_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_ValueBoxDef_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_CORBA_ValueBoxDef_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_CORBA_ValueBoxDef_tie<T>::_is_owner (void)
+{
+ return this->rel_;
+}
+
+template <class T> ACE_INLINE void
+POA_CORBA_ValueBoxDef_tie<T>::_is_owner (CORBA::Boolean b)
+{
+ this->rel_ = b;
+}
+
+template <class T> ACE_INLINE PortableServer::POA_ptr
+POA_CORBA_ValueBoxDef_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (!CORBA::is_nil (this->poa_.in ()))
+ return PortableServer::POA::_duplicate (this->poa_.in ());
+
+ return this->POA_CORBA_ValueBoxDef::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+template <class T> ACE_INLINE
+CORBA_IDLType_ptr POA_CORBA_ValueBoxDef_tie<T>::original_type_def (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->original_type_def (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ValueBoxDef_tie<T>::original_type_def (
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->original_type_def (
+original_type_def
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_ValueBoxDef_tie<T>::id (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->id (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ValueBoxDef_tie<T>::id (
+ const char * id
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->id (
+id
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_ValueBoxDef_tie<T>::name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ValueBoxDef_tie<T>::name (
+ const char * name
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->name (
+name
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_ValueBoxDef_tie<T>::version (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->version (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ValueBoxDef_tie<T>::version (
+ const char * version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->version (
+version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Container_ptr POA_CORBA_ValueBoxDef_tie<T>::defined_in (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->defined_in (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+char * POA_CORBA_ValueBoxDef_tie<T>::absolute_name (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->absolute_name (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Repository_ptr POA_CORBA_ValueBoxDef_tie<T>::containing_repository (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->containing_repository (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA_Contained::Description * POA_CORBA_ValueBoxDef_tie<T>::describe (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->describe (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ValueBoxDef_tie<T>::move (
+ CORBA_Container_ptr new_container,
+ const char * new_name,
+ const char * new_version
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->move (
+new_container,
+ new_name,
+ new_version
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::TypeCode_ptr POA_CORBA_ValueBoxDef_tie<T>::type (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->type (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+CORBA::DefinitionKind POA_CORBA_ValueBoxDef_tie<T>::def_kind (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ return this->ptr_->def_kind (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+template <class T> ACE_INLINE
+void POA_CORBA_ValueBoxDef_tie<T>::destroy (
+ ACE_ENV_SINGLE_ARG_DECL
+ )
+ ACE_THROW_SPEC ((
+ CORBA::SystemException
+ ))
+{
+ this->ptr_->destroy (
+ ACE_ENV_SINGLE_ARG_PARAMETER
+ );
+}
+
+#endif /* ACE_HAS_USING_KEYWORD */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IFR_Service_Loader.cpp b/TAO/orbsvcs/orbsvcs/IFRService/IFR_Service_Loader.cpp
new file mode 100644
index 00000000000..b348b1c519d
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_Service_Loader.cpp
@@ -0,0 +1,90 @@
+// $Id$
+
+// ================================================================
+// DESCRIPTION
+// This class allows for dynamically loading
+// the IFR Service.
+//
+// AUTHORS
+// Jaiganesh Balasubramanian <jai@doc.ece.uci.edu>
+// Priyanka Gontla <pgontla@ece.uci.edu>
+// ================================================================
+
+#include "IFR_Service_Loader.h"
+#include "ace/Dynamic_Service.h"
+#include "ace/Argv_Type_Converter.h"
+
+ACE_RCSID (IFR_Service, IFR_Service_Loader, "$Id$")
+
+TAO_IFR_Service_Loader::TAO_IFR_Service_Loader (void)
+{
+ // Constructor
+}
+
+TAO_IFR_Service_Loader::~TAO_IFR_Service_Loader (void)
+{
+ // Destructor
+}
+
+int
+TAO_IFR_Service_Loader::init (int argc, ACE_TCHAR *argv[])
+{
+ ACE_DECLARE_NEW_CORBA_ENV;
+ ACE_TRY
+ {
+ // Copy command line parameter.
+ ACE_Argv_Type_Converter command_line(argc, argv);
+
+ // Initialize the ORB
+ CORBA::ORB_var orb =
+ CORBA::ORB_init (command_line.get_argc(), command_line.get_ASCII_argv(), 0 ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ // This function call initializes the IFR_Service Service
+ CORBA::Object_var object =
+ this->create_object (orb.in (), command_line.get_argc(), command_line.get_TCHAR_argv() ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ // @@ Should we log this???
+ return -1;
+ }
+ ACE_ENDTRY;
+ return 0;
+}
+
+int
+TAO_IFR_Service_Loader::fini (void)
+{
+ // Remove the IFR_Service Service.
+ return this->ifr_server_.fini ();
+}
+
+CORBA::Object_ptr
+TAO_IFR_Service_Loader::create_object (CORBA::ORB_ptr orb,
+ int argc,
+ ACE_TCHAR *argv[]
+ ACE_ENV_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ int result;
+
+ // Initializes the IFR_Service Service. Returns -1
+ // on an error.
+ result = this->ifr_server_.init_with_orb (argc,
+ argv,
+ orb);
+ if (result == -1)
+ return CORBA::Object::_nil ();
+
+ return 0;
+}
+
+ACE_FACTORY_DEFINE (TAO_IFR_Service, TAO_IFR_Service_Loader)
+
+#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION)
+template class ACE_Dynamic_Service<TAO_IFR_Service_Loader>;
+#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA)
+#pragma instantiate ACE_Dynamic_Service<TAO_IFR_Service_Loader>
+#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IFR_Service_Loader.cpp~ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_Service_Loader.cpp~
new file mode 100644
index 00000000000..23bd925d85d
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_Service_Loader.cpp~
@@ -0,0 +1,90 @@
+// $Id$
+
+// ================================================================
+// DESCRIPTION
+// This class allows for dynamically loading
+// the IFR Service.
+//
+// AUTHORS
+// Jaiganesh Balasubramanian <jai@doc.ece.uci.edu>
+// Priyanka Gontla <pgontla@ece.uci.edu>
+// ================================================================
+
+#include "IFR_Service_Loader.h"
+#include "ace/Dynamic_Service.h"
+#include "ace/Argv_Type_Converter.h"
+
+ACE_RCSID (IFR_Service, IFR_Service_Loader, "$Id$")
+
+TAO_IFR_Service_Loader::TAO_IFR_Service_Loader (void)
+{
+ // Constructor
+}
+
+TAO_IFR_Service_Loader::~TAO_IFR_Service_Loader (void)
+{
+ // Destructor
+}
+
+int
+TAO_IFR_Service_Loader::init (int argc, ACE_TCHAR *argv[])
+{
+ ACE_DECLARE_NEW_CORBA_ENV;
+ ACE_TRY
+ {
+ // Copy command line parameter.
+ ACE_Argv_Type_Converter command_line(argc, argv);
+
+ // Initialize the ORB
+ CORBA::ORB_var orb =
+ CORBA::ORB_init (command_line.get_argc(), command_line.get_ASCII_argv(), 0 ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ // This function call initializes the IFR_Service Service
+ CORBA::Object_var object =
+ this->create_object (orb.in (), command_line.get_argc(), command_line.get_TCHAR_argv() ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ // @@ Should we log this???
+ return -1;
+ }
+ ACE_ENDTRY;
+ return 0;
+}
+
+int
+TAO_IFR_Service_Loader::fini (void)
+{
+ // Remove the IFR_Service Service.
+ return this->ifr_server.fini ();
+}
+
+CORBA::Object_ptr
+TAO_IFR_Service_Loader::create_object (CORBA::ORB_ptr orb,
+ int argc,
+ ACE_TCHAR *argv[]
+ ACE_ENV_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ int result;
+
+ // Initializes the IFR_Service Service. Returns -1
+ // on an error.
+ result = this->ifr_server.init_with_orb (argc,
+ argv,
+ orb);
+ if (result == -1)
+ return CORBA::Object::_nil ();
+
+ return 0;
+}
+
+ACE_FACTORY_DEFINE (TAO_IFR_Service, TAO_IFR_Service_Loader)
+
+#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION)
+template class ACE_Dynamic_Service<TAO_IFR_Service_Loader>;
+#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA)
+#pragma instantiate ACE_Dynamic_Service<TAO_IFR_Service_Loader>
+#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IFR_Service_Loader.h b/TAO/orbsvcs/orbsvcs/IFRService/IFR_Service_Loader.h
new file mode 100644
index 00000000000..b695b99908e
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_Service_Loader.h
@@ -0,0 +1,67 @@
+// $Id$
+
+// ===========================================================================================
+// FILENAME
+// IFR_Service_Loader.h
+//
+// DESCRIPTION
+// This class loads the IFR Service dynamically
+// either from svc.conf file or <string_to_object> call.
+//
+// AUTHORS
+// Jaiganesh Balasubramanian <jai@doc.ece.uci.edu>
+// Priyanka Gontla <pgontla@ece.uci.edu>
+//
+// ==========================================================================================
+
+#ifndef TAO_IFR_SERVICE_LOADER_H
+#define TAO_IFR_SERVICE_LOADER_H
+
+#include "tao/Object_Loader.h"
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+
+#include "IFR_Service_Utils.h"
+
+class TAO_IFRService_Export TAO_IFR_Service_Loader : public TAO_Object_Loader
+{
+public:
+
+ // Constructor
+ TAO_IFR_Service_Loader (void);
+
+ // Destructor
+ ~TAO_IFR_Service_Loader (void);
+
+ // Called by the Service Configurator framework to initialize the
+ // Event Service. Defined in <ace/Service_Config.h>
+ virtual int init (int argc, ACE_TCHAR *argv[]);
+
+ // Called by the Service Configurator framework to remove the
+ // Event Service. Defined in <ace/Service_Config.h>
+ virtual int fini (void);
+
+ // This function call initializes the IFR Service given a reference to the
+ // ORB and the command line parameters.
+ virtual CORBA::Object_ptr create_object (CORBA::ORB_ptr orb,
+ int argc,
+ ACE_TCHAR *argv[]
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+
+ protected:
+ TAO_IFR_Server ifr_server_;
+ // Instance of the TAO_IFR_Server
+
+private:
+
+ACE_UNIMPLEMENTED_FUNC (TAO_IFR_Service_Loader (const TAO_IFR_Service_Loader &))
+ACE_UNIMPLEMENTED_FUNC (TAO_IFR_Service_Loader &operator = (const TAO_IFR_Service_Loader &))
+};
+
+ACE_FACTORY_DECLARE (TAO_IFRService, TAO_IFR_Service_Loader)
+
+#endif /* TAO_IFR_SERVICE_LOADER_H */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IFR_Service_Utils.cpp b/TAO/orbsvcs/orbsvcs/IFRService/IFR_Service_Utils.cpp
new file mode 100644
index 00000000000..424cfea0e18
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_Service_Utils.cpp
@@ -0,0 +1,471 @@
+// $Id$
+
+#include "IFR_Service_Utils.h"
+#include "orbsvcs/orbsvcs/IFRService/ComponentRepository_i.h"
+#include "orbsvcs/orbsvcs/IFRService/Servant_Locator.h"
+#include "orbsvcs/orbsvcs/IFRService/Options.h"
+#include "orbsvcs/orbsvcs/IFRService/IFR_ComponentsS.h"
+#include "orbsvcs/IOR_Multicast.h"
+#include "tao/IORTable/IORTable.h"
+#include "tao/ORB_Core.h"
+#include "ace/Auto_Ptr.h"
+
+ACE_RCSID (IFR_Service,
+ IFR_Service,
+ "$Id$")
+
+TAO_IFR_Server::TAO_IFR_Server (void)
+ : servant_locator_impl_ (0),
+ ior_multicast_ (0),
+ config_ (0),
+ repo_impl_ (0),
+ repository_ (CORBA_Repository::_nil ())
+{
+}
+
+TAO_IFR_Server::~TAO_IFR_Server (void)
+{
+ // Get reactor instance from TAO.
+ ACE_Reactor *reactor = this->orb_->orb_core ()->reactor ();
+
+ // Remove event handler for the ior multicast.
+ if (reactor->remove_handler (this->ior_multicast_,
+ ACE_Event_Handler::READ_MASK)
+ == -1)
+ {
+ ACE_DEBUG ((
+ LM_DEBUG,
+ ACE_TEXT ("Interface Repository: cannot remove handler\n")
+ ));
+ }
+
+ CORBA::release (this->repository_);
+ delete this->config_;
+ delete this->ior_multicast_;
+}
+
+int
+TAO_IFR_Server::init_with_orb (int argc,
+ ACE_TCHAR *argv [],
+ CORBA::ORB_ptr orb)
+{
+ ACE_DECLARE_NEW_CORBA_ENV;
+ ACE_TRY
+ {
+ // Duplicate the ORB.
+ this->orb_ = CORBA::ORB::_duplicate (orb);
+
+ // Get the POA from the ORB.
+ CORBA::Object_var poa_object =
+ orb->resolve_initial_references ("RootPOA" ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (CORBA::is_nil (poa_object.in ()))
+ {
+ ACE_ERROR_RETURN ((LM_ERROR,
+ ACE_LIB_TEXT(" (%P|%t) Unable to initialize the POA.\n")),
+ -1);
+ }
+ this->root_poa_ =
+ PortableServer::POA::_narrow (poa_object.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ int retval = OPTIONS::instance()->parse_args (argc,
+ argv);
+
+ if (retval != 0)
+ return retval;
+
+ retval = this->create_poas (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (retval != 0)
+ return retval;
+
+ retval = this->open_config (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (retval != 0)
+ return retval;
+
+ retval = this->create_repository (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (retval != 0)
+ return retval;
+
+ retval = this->create_locator (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (retval != 0)
+ return retval;
+
+ retval = this->init_multicast_server (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (retval != 0)
+ return retval;
+
+ ACE_DEBUG ((LM_DEBUG,
+ "The IFR IOR is: <%s>\n",
+ this->ifr_ior_.in ()));
+ }
+ ACE_CATCHANY
+ {
+ ACE_PRINT_EXCEPTION (ACE_ANY_EXCEPTION,
+ "IFR_Service::init");
+
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK_RETURN (-1);
+ return 0;
+}
+
+int
+TAO_IFR_Server::fini (ACE_ENV_SINGLE_ARG_DECL)
+{
+ ACE_TRY
+ {
+ this->root_poa_->destroy (1,
+ 1
+ ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ACE_PRINT_EXCEPTION (ACE_ANY_EXCEPTION,
+ "TAO_IFR_Server::fini");
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK_RETURN (-1);
+ return 0;
+}
+
+int
+TAO_IFR_Server::create_poas (ACE_ENV_SINGLE_ARG_DECL)
+{
+ PortableServer::POAManager_var poa_manager =
+ this->root_poa_->the_POAManager (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (-1);
+
+ poa_manager->activate (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (-1);
+
+ CORBA::PolicyList policies (4);
+ policies.length (1);
+
+ // So the Repository's POA can survive a crash.
+ policies[0] =
+ this->root_poa_->create_lifespan_policy (PortableServer::PERSISTENT
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (-1);
+
+ ACE_TString repo_name = "repoPOA";
+
+ this->repo_poa_ =
+ this->root_poa_->create_POA (repo_name.c_str (),
+ poa_manager.in (),
+ policies
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (-1);
+
+ policies.length (4);
+
+ // So we can create object ids based on the DefinitionKind.
+ policies[1] =
+ this->root_poa_->create_id_assignment_policy (
+ PortableServer::USER_ID
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (-1);
+
+ // We'll use a servant manager.
+ policies[2] =
+ this->root_poa_->create_request_processing_policy (
+ PortableServer::USE_SERVANT_MANAGER
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (-1);
+
+ // Specifically, we'll use a servant locator.
+ policies[3] =
+ this->root_poa_->create_servant_retention_policy (
+ PortableServer::NON_RETAIN
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (-1);
+
+ ACE_TString name = "ir_objectPOA";
+
+ this->ir_object_poa_ =
+ this->root_poa_->create_POA (name.c_str (),
+ poa_manager.in (),
+ policies
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (-1);
+
+ // Destroy the policy objects as they have been passed to
+ // create_POA and no longer needed.
+ CORBA::ULong length = policies.length ();
+
+ for (CORBA::ULong i = 0; i < length; ++i)
+ {
+ CORBA::Policy_ptr policy = policies[i];
+ policy->destroy (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (-1);
+ }
+
+ return 0;
+}
+
+int
+TAO_IFR_Server::create_locator (ACE_ENV_SINGLE_ARG_DECL)
+{
+ ACE_NEW_THROW_EX (this->servant_locator_impl_,
+ IFR_ServantLocator (this->repo_impl_),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (-1);
+
+ this->ir_object_poa_->set_servant_manager (this->servant_locator_impl_
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (-1);
+
+ return 0;
+}
+
+int
+TAO_IFR_Server::open_config (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (OPTIONS::instance ()->using_registry ())
+ {
+#if defined (ACE_WIN32)
+ HKEY root =
+ ACE_Configuration_Win32Registry::resolve_key (
+ HKEY_LOCAL_MACHINE,
+ "Software\\TAO\\IFR"
+ );
+
+ ACE_NEW_THROW_EX (this->config_,
+ ACE_Configuration_Win32Registry (root),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (-1);
+#endif /* ACE_WIN32 */
+
+ return 0;
+ }
+ else
+ {
+ ACE_Configuration_Heap *heap = 0;
+ ACE_NEW_THROW_EX (heap,
+ ACE_Configuration_Heap,
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (-1);
+
+ if (OPTIONS::instance ()->persistent ())
+ {
+ const char *filename = OPTIONS::instance ()->persistent_file ();
+
+ if (heap->open (filename))
+ {
+ ACE_ERROR_RETURN ((
+ LM_ERROR,
+ ACE_TEXT ("Error:: Opening persistent heap file '%s'\n"),
+ filename
+ ),
+ -1
+ );
+ }
+ }
+ else
+ {
+ heap->open ();
+ }
+
+ this->config_ = heap;
+
+ return 0;
+ }
+}
+
+int
+TAO_IFR_Server::create_repository (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_ComponentRepository_i *impl = 0;
+ ACE_NEW_THROW_EX (
+ impl,
+ TAO_ComponentRepository_i (
+ this->orb_.in (),
+ this->ir_object_poa_.in (),
+ this->config_
+ ),
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK_RETURN (-1);
+
+ auto_ptr<TAO_ComponentRepository_i> safety (impl);
+
+ POA_IR::ComponentRepository_tie<TAO_ComponentRepository_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (
+ impl_tie,
+ POA_IR::ComponentRepository_tie<TAO_ComponentRepository_i> (
+ impl,
+ this->repo_poa_.in (),
+ 1
+ ),
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK_RETURN (-1);
+
+ PortableServer::ServantBase_var tie_safety (impl_tie);
+ safety.release ();
+
+ this->repo_impl_ = impl;
+
+ PortableServer::ObjectId_var repo_oid =
+ this->repo_poa_->activate_object (impl_tie
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (-1);
+
+ this->repository_ = impl_tie->_this (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (-1);
+
+
+ impl->repo_objref (this->repository_);
+
+ // Save and output the IOR string.
+ this->ifr_ior_ =
+ this->orb_->object_to_string (this->repository_
+ ACE_ENV_ARG_PARAMETER);
+
+ ACE_CHECK_RETURN (-1);
+
+ CORBA::Object_var table_object =
+ this->orb_->resolve_initial_references ("IORTable" ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (-1);
+
+ IORTable::Table_var adapter =
+ IORTable::Table::_narrow (table_object.in () ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (-1);
+ if (CORBA::is_nil (adapter.in ()))
+ {
+ ACE_ERROR_RETURN ((LM_ERROR, "Nil IORTable\n"), -1);
+ }
+ else
+ {
+ adapter->bind ("InterfaceRepository",
+ this->ifr_ior_.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (-1);
+ }
+
+ FILE *output_file_ =
+ ACE_OS::fopen (OPTIONS::instance()->ior_output_file (),
+ "w");
+
+ ACE_OS::fprintf (output_file_,
+ "%s",
+ this->ifr_ior_.in ());
+
+ ACE_OS::fclose (output_file_);
+
+ return 0;
+}
+
+// Install ior multicast handler.
+int
+TAO_IFR_Server::init_multicast_server (ACE_ENV_SINGLE_ARG_DECL)
+{
+ // Get reactor instance from TAO.
+ ACE_Reactor *reactor = this->orb_->orb_core ()->reactor ();
+
+#if defined (ACE_HAS_IP_MULTICAST)
+
+ // See if the -ORBMulticastDiscoveryEndpoint option was specified.
+ ACE_CString mde (
+ TAO_ORB_Core_instance ()->orb_params ()->mcast_discovery_endpoint ()
+ );
+
+ // First, see if the user has given us a multicast port number
+ // on the command-line;
+ u_short port =
+ TAO_ORB_Core_instance ()->orb_params ()->service_port (
+ INTERFACEREPOSERVICE
+ );
+
+ if (port == 0)
+ {
+ // Check environment var. for multicast port.
+ const char *port_number =
+ ACE_OS::getenv ("InterfaceRepoServicePort");
+
+ if (port_number != 0)
+ port = ACE_OS::atoi (port_number);
+ }
+
+ // Port wasn't specified on the command-line or in environment -
+ // use the default.
+ if (port == 0)
+ port = TAO_DEFAULT_INTERFACEREPO_SERVER_REQUEST_PORT;
+
+ // Instantiate a handler which will handle client requests for
+ // the IFR ior, received on the multicast port.
+ ACE_NEW_THROW_EX (this->ior_multicast_,
+ TAO_IOR_Multicast (),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (-1);
+
+ if (mde.length () != 0)
+ {
+ if (this->ior_multicast_->init (this->ifr_ior_.in (),
+ mde.c_str (),
+ TAO_SERVICEID_INTERFACEREPOSERVICE)
+ == -1)
+ {
+ ACE_ERROR_RETURN ((
+ LM_ERROR,
+ ACE_TEXT ("Interface Repository: cannot initialize ")
+ ACE_TEXT ("multicast event handler\n")
+ ),
+ -1
+ );
+ }
+ }
+ else
+ {
+ if (this->ior_multicast_->init (this->ifr_ior_.in (),
+ port,
+ ACE_DEFAULT_MULTICAST_ADDR,
+ TAO_SERVICEID_INTERFACEREPOSERVICE)
+ == -1)
+ {
+ ACE_ERROR_RETURN ((
+ LM_ERROR,
+ ACE_TEXT ("Interface Repository: cannot initialize ")
+ ACE_TEXT ("multicast event handler\n")
+ ),
+ -1
+ );
+ }
+ }
+
+ // Register event handler for the ior multicast.
+ if (reactor->register_handler (this->ior_multicast_,
+ ACE_Event_Handler::READ_MASK)
+ == -1)
+ {
+ ACE_ERROR_RETURN ((
+ LM_ERROR,
+ ACE_TEXT ("Interface Repository: cannot register ")
+ ACE_TEXT ("multicast event handler\n")
+ ),
+ -1
+ );
+ }
+
+#endif /* ACE_HAS_IP_MULTICAST */
+
+ return 0;
+}
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IFR_Service_Utils.cpp~ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_Service_Utils.cpp~
new file mode 100644
index 00000000000..7212ffe928c
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_Service_Utils.cpp~
@@ -0,0 +1,454 @@
+// $Id$
+
+#include "IFR_Service_Utils.h"
+#include "orbsvcs/orbsvcs/IFR_Service/ComponentRepository_i.h"
+#include "orbsvcs/orbsvcs/IFR_Service/Servant_Locator.h"
+#include "orbsvcs/orbsvcs/IFR_Service/Options.h"
+#include "orbsvcs/orbsvcs/IFR_Service/IFR_ComponentsS.h"
+#include "orbsvcs/IOR_Multicast.h"
+#include "tao/IORTable/IORTable.h"
+#include "tao/ORB_Core.h"
+#include "ace/Auto_Ptr.h"
+
+ACE_RCSID (IFR_Service,
+ IFR_Service,
+ "$Id$")
+
+TAO_IFR_Server::TAO_IFR_Server (void)
+ : servant_locator_impl_ (0),
+ ior_multicast_ (0),
+ config_ (0),
+ repo_impl_ (0),
+ repository_ (CORBA_Repository::_nil ())
+{
+}
+
+TAO_IFR_Server::~TAO_IFR_Server (void)
+{
+}
+
+int
+TAO_IFR_Server::init_with_orb (int argc,
+ ACE_TCHAR *argv [],
+ CORBA::ORB_ptr orb)
+{
+ ACE_DECLARE_NEW_CORBA_ENV;
+ ACE_TRY
+ {
+ // Duplicate the ORB.
+ this->orb_ = CORBA::ORB::_duplicate (orb);
+
+ // Get the POA from the ORB.
+ CORBA::Object_var poa_object =
+ orb->resolve_initial_references ("RootPOA" ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (CORBA::is_nil (poa_object.in ()))
+ {
+ ACE_ERROR_RETURN ((LM_ERROR,
+ ACE_LIB_TEXT(" (%P|%t) Unable to initialize the POA.\n")),
+ -1);
+ }
+ this->root_poa_ =
+ PortableServer::POA::_narrow (poa_object.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ int retval = OPTIONS::instance()->parse_args (argc,
+ argv);
+
+ if (retval != 0)
+ return retval;
+
+ retval = this->create_poas (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (retval != 0)
+ return retval;
+
+ retval = this->open_config (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (retval != 0)
+ return retval;
+
+ retval = this->create_repository (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (retval != 0)
+ return retval;
+
+ retval = this->create_locator (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (retval != 0)
+ return retval;
+
+ retval = this->init_multicast_server (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (retval != 0)
+ return retval;
+
+ ACE_DEBUG ((LM_DEBUG,
+ "The IFR IOR is: <%s>\n",
+ this->ifr_ior_.in ()));
+ }
+ ACE_CATCHANY
+ {
+ ACE_PRINT_EXCEPTION (ACE_ANY_EXCEPTION,
+ "IFR_Service::init");
+
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK_RETURN (-1);
+ return 0;
+}
+
+int
+TAO_IFR_Server::fini (ACE_ENV_SINGLE_ARG_DECL)
+{
+ ACE_TRY
+ {
+ this->root_poa_->destroy (1,
+ 1
+ ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ACE_PRINT_EXCEPTION (ACE_ANY_EXCEPTION,
+ "TAO_IFR_Server::fini");
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+ ACE_CHECK_RETURN (-1);
+ return 0;
+}
+
+int
+TAO_IFR_Server::create_poas (ACE_ENV_SINGLE_ARG_DECL)
+{
+ PortableServer::POAManager_var poa_manager =
+ this->root_poa_->the_POAManager (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (-1);
+
+ poa_manager->activate (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (-1);
+
+ CORBA::PolicyList policies (4);
+ policies.length (1);
+
+ // So the Repository's POA can survive a crash.
+ policies[0] =
+ this->root_poa_->create_lifespan_policy (PortableServer::PERSISTENT
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (-1);
+
+ ACE_TString repo_name = "repoPOA";
+
+ this->repo_poa_ =
+ this->root_poa_->create_POA (repo_name.c_str (),
+ poa_manager.in (),
+ policies
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (-1);
+
+ policies.length (4);
+
+ // So we can create object ids based on the DefinitionKind.
+ policies[1] =
+ this->root_poa_->create_id_assignment_policy (
+ PortableServer::USER_ID
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (-1);
+
+ // We'll use a servant manager.
+ policies[2] =
+ this->root_poa_->create_request_processing_policy (
+ PortableServer::USE_SERVANT_MANAGER
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (-1);
+
+ // Specifically, we'll use a servant locator.
+ policies[3] =
+ this->root_poa_->create_servant_retention_policy (
+ PortableServer::NON_RETAIN
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (-1);
+
+ ACE_TString name = "ir_objectPOA";
+
+ this->ir_object_poa_ =
+ this->root_poa_->create_POA (name.c_str (),
+ poa_manager.in (),
+ policies
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (-1);
+
+ // Destroy the policy objects as they have been passed to
+ // create_POA and no longer needed.
+ CORBA::ULong length = policies.length ();
+
+ for (CORBA::ULong i = 0; i < length; ++i)
+ {
+ CORBA::Policy_ptr policy = policies[i];
+ policy->destroy (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (-1);
+ }
+
+ return 0;
+}
+
+int
+TAO_IFR_Server::create_locator (ACE_ENV_SINGLE_ARG_DECL)
+{
+ ACE_NEW_THROW_EX (this->servant_locator_impl_,
+ IFR_ServantLocator (this->repo_impl_),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (-1);
+
+ this->ir_object_poa_->set_servant_manager (this->servant_locator_impl_
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (-1);
+
+ return 0;
+}
+
+int
+TAO_IFR_Server::open_config (ACE_ENV_SINGLE_ARG_DECL)
+{
+ if (OPTIONS::instance ()->using_registry ())
+ {
+#if defined (ACE_WIN32)
+ HKEY root =
+ ACE_Configuration_Win32Registry::resolve_key (
+ HKEY_LOCAL_MACHINE,
+ "Software\\TAO\\IFR"
+ );
+
+ ACE_NEW_THROW_EX (this->config_,
+ ACE_Configuration_Win32Registry (root),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (-1);
+#endif /* ACE_WIN32 */
+
+ return 0;
+ }
+ else
+ {
+ ACE_Configuration_Heap *heap = 0;
+ ACE_NEW_THROW_EX (heap,
+ ACE_Configuration_Heap,
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (-1);
+
+ if (OPTIONS::instance ()->persistent ())
+ {
+ const char *filename = OPTIONS::instance ()->persistent_file ();
+
+ if (heap->open (filename))
+ {
+ ACE_ERROR_RETURN ((
+ LM_ERROR,
+ ACE_TEXT ("Error:: Opening persistent heap file '%s'\n"),
+ filename
+ ),
+ -1
+ );
+ }
+ }
+ else
+ {
+ heap->open ();
+ }
+
+ this->config_ = heap;
+
+ return 0;
+ }
+}
+
+int
+TAO_IFR_Server::create_repository (ACE_ENV_SINGLE_ARG_DECL)
+{
+ TAO_ComponentRepository_i *impl = 0;
+ ACE_NEW_THROW_EX (
+ impl,
+ TAO_ComponentRepository_i (
+ this->orb_.in (),
+ this->ir_object_poa_.in (),
+ this->config_
+ ),
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK_RETURN (-1);
+
+ auto_ptr<TAO_ComponentRepository_i> safety (impl);
+
+ POA_IR::ComponentRepository_tie<TAO_ComponentRepository_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (
+ impl_tie,
+ POA_IR::ComponentRepository_tie<TAO_ComponentRepository_i> (
+ impl,
+ this->repo_poa_.in (),
+ 1
+ ),
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK_RETURN (-1);
+
+ PortableServer::ServantBase_var tie_safety (impl_tie);
+ safety.release ();
+
+ this->repo_impl_ = impl;
+
+ PortableServer::ObjectId_var repo_oid =
+ this->repo_poa_->activate_object (impl_tie
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (-1);
+
+ this->repository_ = impl_tie->_this (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (-1);
+
+
+ impl->repo_objref (this->repository_);
+
+ // Save and output the IOR string.
+ this->ifr_ior_ =
+ this->orb_->object_to_string (this->repository_
+ ACE_ENV_ARG_PARAMETER);
+
+ ACE_CHECK_RETURN (-1);
+
+ CORBA::Object_var table_object =
+ this->orb_->resolve_initial_references ("IORTable" ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (-1);
+
+ IORTable::Table_var adapter =
+ IORTable::Table::_narrow (table_object.in () ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (-1);
+ if (CORBA::is_nil (adapter.in ()))
+ {
+ ACE_ERROR_RETURN ((LM_ERROR, "Nil IORTable\n"), -1);
+ }
+ else
+ {
+ adapter->bind ("InterfaceRepository",
+ this->ifr_ior_.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (-1);
+ }
+
+ FILE *output_file_ =
+ ACE_OS::fopen (OPTIONS::instance()->ior_output_file (),
+ "w");
+
+ ACE_OS::fprintf (output_file_,
+ "%s",
+ this->ifr_ior_.in ());
+
+ ACE_OS::fclose (output_file_);
+
+ return 0;
+}
+
+// Install ior multicast handler.
+int
+TAO_IFR_Server::init_multicast_server (ACE_ENV_SINGLE_ARG_DECL)
+{
+ // Get reactor instance from TAO.
+ ACE_Reactor *reactor = this->orb_->orb_core ()->reactor ();
+
+#if defined (ACE_HAS_IP_MULTICAST)
+
+ // See if the -ORBMulticastDiscoveryEndpoint option was specified.
+ ACE_CString mde (
+ TAO_ORB_Core_instance ()->orb_params ()->mcast_discovery_endpoint ()
+ );
+
+ // First, see if the user has given us a multicast port number
+ // on the command-line;
+ u_short port =
+ TAO_ORB_Core_instance ()->orb_params ()->service_port (
+ INTERFACEREPOSERVICE
+ );
+
+ if (port == 0)
+ {
+ // Check environment var. for multicast port.
+ const char *port_number =
+ ACE_OS::getenv ("InterfaceRepoServicePort");
+
+ if (port_number != 0)
+ port = ACE_OS::atoi (port_number);
+ }
+
+ // Port wasn't specified on the command-line or in environment -
+ // use the default.
+ if (port == 0)
+ port = TAO_DEFAULT_INTERFACEREPO_SERVER_REQUEST_PORT;
+
+ // Instantiate a handler which will handle client requests for
+ // the IFR ior, received on the multicast port.
+ ACE_NEW_THROW_EX (this->ior_multicast_,
+ TAO_IOR_Multicast (),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (-1);
+
+ if (mde.length () != 0)
+ {
+ if (this->ior_multicast_->init (this->ifr_ior_.in (),
+ mde.c_str (),
+ TAO_SERVICEID_INTERFACEREPOSERVICE)
+ == -1)
+ {
+ ACE_ERROR_RETURN ((
+ LM_ERROR,
+ ACE_TEXT ("Interface Repository: cannot initialize ")
+ ACE_TEXT ("multicast event handler\n")
+ ),
+ -1
+ );
+ }
+ }
+ else
+ {
+ if (this->ior_multicast_->init (this->ifr_ior_.in (),
+ port,
+ ACE_DEFAULT_MULTICAST_ADDR,
+ TAO_SERVICEID_INTERFACEREPOSERVICE)
+ == -1)
+ {
+ ACE_ERROR_RETURN ((
+ LM_ERROR,
+ ACE_TEXT ("Interface Repository: cannot initialize ")
+ ACE_TEXT ("multicast event handler\n")
+ ),
+ -1
+ );
+ }
+ }
+
+ // Register event handler for the ior multicast.
+ if (reactor->register_handler (this->ior_multicast_,
+ ACE_Event_Handler::READ_MASK)
+ == -1)
+ {
+ ACE_ERROR_RETURN ((
+ LM_ERROR,
+ ACE_TEXT ("Interface Repository: cannot register ")
+ ACE_TEXT ("multicast event handler\n")
+ ),
+ -1
+ );
+ }
+
+#endif /* ACE_HAS_IP_MULTICAST */
+
+ return 0;
+}
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IFR_Service_Utils.h b/TAO/orbsvcs/orbsvcs/IFRService/IFR_Service_Utils.h
new file mode 100644
index 00000000000..f053ae8fe84
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_Service_Utils.h
@@ -0,0 +1,105 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// IFR_Service_Utils.h
+//
+// = DESCRIPTION
+// Implement wrappers useful to IFR Service clients and servers.
+//
+// = AUTHORS
+// Jeff Parsons <parsons@cs.wustl.edu>
+// Jaiganesh Balasubramanian <jai@doc.ece.uci.edu>
+// Priyanka Gontla <pgontla@doc.ece.uci.edu>
+//
+// ============================================================================
+
+#ifndef TAO_IFR_SERVICE_UTILS_H
+#define TAO_IFR_SERVICE_UTILS_H
+#include "ace/pre.h"
+
+#include "tao/corba.h"
+#include "tao/PortableServer/PortableServerC.h"
+#include "tao/ORB.h"
+#include "ifr_service_export.h"
+
+// Forward decl;
+class IFR_ServantLocator;
+class TAO_IOR_Multicast;
+class ACE_Configuration;
+class TAO_Repository_i;
+
+class TAO_IFRService_Export TAO_IFR_Server
+{
+public:
+ TAO_IFR_Server (void);
+ // Default constructor.
+
+ int init_with_orb (int argc,
+ ACE_TCHAR *argv [],
+ CORBA::ORB_ptr orb);
+ // Initialize the IFR Service with the command line arguments and
+ // the ORB.
+
+ int fini (void);
+ // Destroy the child POA created in <init_with_orb>
+
+ ~TAO_IFR_Server (void);
+ // Destructor.
+
+protected:
+
+ int create_poas (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+ // Two persistent POAs, one using a servant locator.
+
+ int create_locator (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+ // Create a servant locator and register it with its POA.
+
+ int open_config (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+ // Open an ACE_Configuration of the appropriate type.
+
+ int create_repository (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+ // Create and initialize the repository.
+
+ int init_multicast_server (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS);
+ // Enable the Interface Repository to answer multicast requests
+ // for its IOR.
+
+ CORBA::ORB_var orb_;
+ // Reference to our ORB.
+
+ PortableServer::POA_var root_poa_;
+ // Root POA reference.
+
+ PortableServer::POA_var repo_poa_;
+ // The Repository's POA reference.
+
+ PortableServer::POA_var ir_object_poa_;
+ // POA reference for all other IFR objects.
+
+ IFR_ServantLocator *servant_locator_impl_;
+ // Our servant locator implementation instance.
+
+ TAO_IOR_Multicast *ior_multicast_;
+ // Event handler that responds to multicast requests.
+
+ ACE_Configuration *config_;
+ // Database for the IFR.
+
+ TAO_Repository_i *repo_impl_;
+ // The IFR implementation instance.
+
+ CORBA_Repository_ptr repository_;
+ // The Interface Repository object reference.
+
+ CORBA::String_var ifr_ior_;
+ // Interface Repository's IOR.
+};
+
+#include "ace/post.h"
+#endif /* TAO_IFR_SERVICE_UTILS_H */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IFR_Service_Utils.h~ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_Service_Utils.h~
new file mode 100644
index 00000000000..0452d397517
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_Service_Utils.h~
@@ -0,0 +1,169 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFR_Service
+//
+// = FILENAME
+// IFR_Service_Utils.h
+//
+// = DESCRIPTION
+// Implement wrappers useful to IFR Service clients and servers.
+//
+// = AUTHORS
+// Jeff Parsons <parsons@cs.wustl.edu>
+// Jaiganesh Balasubramanian <jai@doc.ece.uci.edu>
+// Priyanka Gontla <pgontla@doc.ece.uci.edu>
+//
+// ============================================================================
+
+#ifndef TAO_IFR_SERVICE_UTILS_H
+#define TAO_IFR_SERVICE_UTILS_H
+#include "ace/pre.h"
+
+#include "tao/corba.h"
+#include "tao/PortableServer/PortableServerC.h"
+#include "tao/ORB.h"
+
+// Forward decl;
+class IFR_ServantLocator;
+class TAO_IOR_Multicast;
+class ACE_Configuration;
+class TAO_Repository_i;
+
+class TAO_IFR_Service_Export TAO_IFR_Server
+{
+public:
+ TAO_IFR_Server (void);
+ // Default constructor.
+
+ int init_with_orb (int argc,
+ ACE_TCHAR *argv [],
+ CORBA::ORB_ptr orb);
+ // Initialize the IFR Service with the command line arguments and
+ // the ORB.
+
+ int fini (void);
+ // Destroy the child POA created in <init_with_orb>
+
+ ~TAO_Naming_Server (void);
+ // Destructor.
+
+protected:
+ int init_new_naming (CORBA::ORB_ptr orb,
+ PortableServer::POA_ptr root_poa,
+ const ACE_TCHAR *persistence_location,
+ void *base_addr,
+ size_t context_size,
+ int enable_multicast,
+ int use_storable_context);
+ // Helper method: create Naming Service locally.
+ // Make the root context of size
+ // <context_size>, register it under the <root_poa>, and make the Naming
+ // Service persistent if <persistence_location> is not 0.
+ // (<persistence_location> specifies name of the file to use for
+ // persistent storage).
+ // If <enable_multicast> is not zero then the service will respond
+ // to multicast location queries.
+
+ int parse_args (int argc, ACE_TCHAR *argv[]);
+ // parses the arguments.
+
+ CosNaming::NamingContext_var naming_context_;
+ // Root NamingContext_ptr.
+
+ TAO_IOR_Multicast *ior_multicast_;
+ // The ior_multicast event handler.
+
+ CORBA::String_var naming_service_ior_;
+ // The IOR string of the root naming context.
+
+ TAO_Persistent_Context_Index *context_index_;
+ // Pointer to the object used to create/initialize
+ // the Naming Service when local persistent Naming Service is
+ // desired.
+
+ CORBA::ORB_var orb_;
+ // The ORB
+
+ PortableServer::POA_var root_poa_;
+ // The Root POA.
+
+ PortableServer::POA_var ns_poa_;
+ // The Naming Service POA.
+
+ FILE *ior_output_file_;
+ // File to output the Naming Service IOR.
+
+ const ACE_TCHAR *pid_file_name_;
+ // File to output the process id.
+
+ size_t context_size_;
+ // Size of the hash_table allocated upon the creation of the Naming
+ // Service context (if one is created). Note: all the contexts
+ // created under the given context will use the same size for their
+ // initial hash table allocations.
+
+ const ACE_TCHAR *persistence_file_name_;
+ // Path to the file to be used to store/read in Naming Service
+ // persistent state.
+
+ void *base_address_;
+ // Address to be used for memory mapping Naming Service state file,
+ // identified by the <persistence_file_name_>.
+
+ size_t time_;
+ // After how long the server should stop listening to requests (in
+ // seconds).
+
+ int multicast_;
+ // If not zero multicast is enabled.
+
+ int use_storable_context_;
+ // If not zero use flat file persistence
+};
+
+class TAO_Naming_Export TAO_Naming_Client
+{
+ // = TITLE
+ // This class is intended to simplify programs that want to play
+ // the role of Naming Service clients.
+ //
+ // = DESCRIPTION
+ // Wrapper class that locates the root Naming Context. It also
+ // defines the operator-> so that <NamingContext> functions like
+ // <resolve>, etc. can be directly called on a
+ // <TAO_Naming_Client> object, and will be forwarded to the root
+ // Naming Context.
+public:
+ // = Initialization and termination methods.
+
+ TAO_Naming_Client (void);
+ // Default constructor.
+
+ int init (CORBA::ORB_ptr orb,
+ ACE_Time_Value *timeout = 0);
+ // Look for a Naming Service for a period of <timeout> using
+ // <resolve_initial_references>. Return 0 if Naming Service is
+ // successfully located, and -1 on failure.
+
+ ~TAO_Naming_Client (void);
+ // Destructor.
+
+ CosNaming::NamingContext_ptr operator-> (void) const;
+ // Returns a pointer to the root Naming Context.
+
+ CosNaming::NamingContext_ptr get_context (void) const;
+ // Returns a pointer to the root Naming Context. This ptr is
+ // duplicated via <_duplicate> so that it can be stored into a
+ // <*_var>.
+
+protected:
+ CosNaming::NamingContext_var naming_context_;
+ // Reference to the root Naming Context.
+};
+
+#include "ace/post.h"
+#endif /* TAO_NAMING_UTILS_H */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IFR_macro.h b/TAO/orbsvcs/orbsvcs/IFRService/IFR_macro.h
new file mode 100644
index 00000000000..65ebef3fc7a
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IFR_macro.h
@@ -0,0 +1,46 @@
+/* -*- C++ -*- */
+// $Id$
+
+#ifndef TAO_IFR_MACROS_H
+#define TAO_IFR_MACROS_H
+#include "ace/pre.h"
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+
+#define TAO_IFR_WRITE_GUARD \
+ ACE_WRITE_GUARD_THROW_EX (ACE_Lock, \
+ monitor, \
+ this->repo_->lock (), \
+ CORBA::INTERNAL ( \
+ CORBA_SystemException::_tao_minor_code ( \
+ TAO_GUARD_FAILURE, \
+ 0), \
+ CORBA::COMPLETED_NO)); \
+ ACE_CHECK
+
+#define TAO_IFR_WRITE_GUARD_RETURN(RETURN) \
+ ACE_WRITE_GUARD_THROW_EX (ACE_Lock, \
+ monitor, \
+ this->repo_->lock (), \
+ CORBA::INTERNAL ( \
+ CORBA_SystemException::_tao_minor_code ( \
+ TAO_GUARD_FAILURE, \
+ 0), \
+ CORBA::COMPLETED_NO)); \
+ ACE_CHECK_RETURN (RETURN)
+
+#define TAO_IFR_READ_GUARD_RETURN(RETURN) \
+ ACE_READ_GUARD_THROW_EX (ACE_Lock, \
+ monitor, \
+ this->repo_->lock (), \
+ CORBA::INTERNAL ( \
+ CORBA_SystemException::_tao_minor_code ( \
+ TAO_GUARD_FAILURE, \
+ 0), \
+ CORBA::COMPLETED_NO)); \
+ ACE_CHECK_RETURN (RETURN)
+
+#include "ace/post.h"
+#endif /* TAO_IFR_MACROS_H */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IRObject_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/IRObject_i.cpp
new file mode 100644
index 00000000000..3abb5555646
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IRObject_i.cpp
@@ -0,0 +1,28 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "IRObject_i.h"
+
+ACE_RCSID(IFR_Service, IRObject_i, "$Id$")
+
+TAO_IRObject_i::TAO_IRObject_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key)
+ : repo_ (repo),
+ section_key_ (section_key)
+{
+}
+
+TAO_IRObject_i::~TAO_IRObject_i (void)
+{
+}
+
+char *
+TAO_IRObject_i::int_to_string (CORBA::ULong number) const
+{
+ char retval[9];
+
+ ACE_OS::sprintf (retval, "%8.8X", number);
+
+ return CORBA::string_dup (retval);
+}
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IRObject_i.h b/TAO/orbsvcs/orbsvcs/IFRService/IRObject_i.h
new file mode 100644
index 00000000000..b18e5961696
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/IRObject_i.h
@@ -0,0 +1,89 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// IRObject_i.h
+//
+// = DESCRIPTION
+// IRObject servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_IROBJECT_I_H
+#define TAO_IROBJECT_I_H
+
+#include "IFR_ExtendedS.h"
+#include "ace/Configuration.h"
+#include "ifr_service_export.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 */
+
+class TAO_Repository_i;
+
+class TAO_IFRService_Export TAO_IRObject_i : public POA_CORBA_IRObject
+{
+ // = TITLE
+ // TAO_IRObject_i
+ //
+ // = DESCRIPTION
+ // Abstract base class for all IR object types.
+ //
+public:
+ TAO_IRObject_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor.
+
+ virtual ~TAO_IRObject_i (void);
+ // Destructor.
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException)) = 0;
+ // Pure virtual.
+
+ virtual void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException)) = 0;
+ // Pure virtual.
+
+ virtual void destroy_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException)) = 0;
+ // Pure virtual- the unlocked version called by destroy() wrapper.
+
+protected:
+ char *int_to_string (CORBA::ULong number) const;
+ // Convert an unsigned int to a string of its hex form.
+
+ TAO_Repository_i *repo_;
+ // Pointer to the repository we were constructed from.
+
+ ACE_Configuration_Section_Key section_key_;
+ // Our ACE_Configuration section key.
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_IROBJECT_I_H */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/InterfaceDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/InterfaceDef_i.cpp
new file mode 100644
index 00000000000..af7eceb62cc
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/InterfaceDef_i.cpp
@@ -0,0 +1,1396 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "InterfaceDef_i.h"
+#include "Repository_i.h"
+#include "AttributeDef_i.h"
+#include "OperationDef_i.h"
+#include "Servant_Factory.h"
+
+ACE_RCSID(IFR_Service, InterfaceDef_i, "$Id$")
+
+TAO_InterfaceDef_i::TAO_InterfaceDef_i (
+ TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key
+ )
+ : TAO_IRObject_i (repo, section_key),
+ TAO_Container_i (repo, section_key),
+ TAO_Contained_i (repo, section_key),
+ TAO_IDLType_i (repo, section_key)
+{
+}
+
+TAO_InterfaceDef_i::~TAO_InterfaceDef_i (void)
+{
+}
+
+CORBA::DefinitionKind
+TAO_InterfaceDef_i::def_kind (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::dk_Interface;
+}
+
+void
+TAO_InterfaceDef_i::destroy (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+void
+TAO_InterfaceDef_i::destroy_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Destroy our members.
+ TAO_Container_i::destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ // This will get rid of the repo ids, which Contained_i::destroy()'s
+ // call to remove_section (recursive = 1) will not get, and also
+ // destroy the attribute's anonymous type, if any.
+ this->destroy_special ("attrs" ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+ this->destroy_special ("ops" ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ // Destroy ourself.
+ TAO_Contained_i::destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+}
+
+CORBA_Contained::Description *
+TAO_InterfaceDef_i::describe (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->describe_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_Contained::Description *
+TAO_InterfaceDef_i::describe_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA_Contained::Description *desc_ptr = 0;
+ ACE_NEW_THROW_EX (desc_ptr,
+ CORBA_Contained::Description,
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ CORBA_Contained::Description_var retval = desc_ptr;
+
+ retval->kind = this->def_kind (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA_InterfaceDescription ifd;
+
+ ifd.name = this->name_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ ifd.id = this->id_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ ACE_TString container_id;
+
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "container_id",
+ container_id);
+
+ ifd.defined_in = container_id.c_str ();
+
+ ifd.version = this->version_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::ULong i = 0;
+ CORBA_InterfaceDefSeq_var bases = this->base_interfaces_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::ULong length = bases->length ();
+
+ CORBA_RepositoryIdSeq repo_ids (length);
+
+ repo_ids.length (length);
+
+ PortableServer::ObjectId_var oid;
+ CORBA::String_var base_path;
+ ACE_Configuration_Section_Key base_key;
+
+ for (i = 0; i < length; ++i)
+ {
+ oid =
+ this->repo_->ir_poa ()->reference_to_id (bases[i]
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ base_path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ base_path.in (),
+ base_key,
+ 0);
+
+ TAO_InterfaceDef_i impl (this->repo_,
+ base_key);
+
+ repo_ids[i] = impl.id_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+ }
+
+ ifd.base_interfaces = repo_ids;
+
+ retval->value <<= ifd;
+
+ return retval._retn ();
+}
+
+CORBA::TypeCode_ptr
+TAO_InterfaceDef_i::type (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::TypeCode_ptr
+TAO_InterfaceDef_i::type_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString id;
+
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "id",
+ id);
+
+ ACE_TString name;
+
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "name",
+ name);
+
+ return this->repo_->tc_factory ()->create_interface_tc (id.c_str (),
+ name.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_InterfaceDefSeq *
+TAO_InterfaceDef_i::base_interfaces (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->base_interfaces_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_InterfaceDefSeq *
+TAO_InterfaceDef_i::base_interfaces_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_Unbounded_Queue<CORBA::DefinitionKind> kind_queue;
+ ACE_Unbounded_Queue<ACE_TString> path_queue;
+
+ this->base_interfaces_recursive (kind_queue,
+ path_queue);
+
+ size_t size = kind_queue.size ();
+
+ CORBA_InterfaceDefSeq *seq = 0;
+ ACE_NEW_THROW_EX (seq,
+ CORBA_InterfaceDefSeq (size),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ seq->length (size);
+ CORBA_InterfaceDefSeq_var retval = seq;
+
+ for (CORBA::ULong i = 0; i < size; ++i)
+ {
+ CORBA::DefinitionKind def_kind;
+ kind_queue.dequeue_head (def_kind);
+
+ ACE_TString path;
+ path_queue.dequeue_head (path);
+
+ CORBA::Object_var obj =
+ this->repo_->servant_factory ()->create_objref (
+ def_kind,
+ path.c_str ()
+ ACE_ENV_ARG_PARAMETER
+ );
+ ACE_CHECK_RETURN (0);
+
+ retval[i] = CORBA_InterfaceDef::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+ }
+
+ return retval._retn ();
+}
+
+void
+TAO_InterfaceDef_i::base_interfaces (const CORBA_InterfaceDefSeq &base_interfaces
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->base_interfaces_i (base_interfaces
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_InterfaceDef_i::base_interfaces_i (const CORBA_InterfaceDefSeq &base_interfaces
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // If we are an abstract interface, all our base interfaces must be
+ // abstract as well.
+ CORBA::DefinitionKind def_kind = this->def_kind (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ if (def_kind == CORBA::dk_AbstractInterface)
+ {
+ CORBA::ULong length = base_interfaces.length ();
+
+ for (CORBA::ULong i = 0; i < length; ++i)
+ {
+ def_kind = base_interfaces[i]->def_kind (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ if (def_kind != CORBA::dk_AbstractInterface)
+ {
+ ACE_THROW (CORBA::BAD_PARAM (11,
+ CORBA::COMPLETED_NO));
+ }
+ }
+ }
+
+ // Remove the old base interfaces.
+ this->repo_->config ()->remove_section (this->section_key_,
+ "inherited",
+ 0);
+
+ CORBA::ULong length = base_interfaces.length ();
+
+ ACE_Configuration_Section_Key inherited_key;
+
+ this->repo_->config ()->open_section (this->section_key_,
+ "inherited",
+ 1,
+ inherited_key);
+
+ CORBA::String_var name, inherited_path, section_name;
+ PortableServer::ObjectId_var oid;
+ ACE_Configuration_Section_Key base_key;
+
+ for (CORBA::ULong i = 0; i < length; i++)
+ {
+ oid =
+ this->repo_->ir_poa ()->reference_to_id (base_interfaces[i]
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ inherited_path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ inherited_path.in (),
+ base_key,
+ 0);
+
+ TAO_InterfaceDef_i impl (this->repo_,
+ base_key);
+
+ name = impl.name_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ // None of these names can clash with any we may already have.
+ if (TAO_Container_i::name_exists (name.in ()))
+ return;
+
+ section_name = this->int_to_string (i);
+
+ this->repo_->config ()->set_string_value (inherited_key,
+ section_name.in (),
+ inherited_path.in ());
+ }
+}
+
+CORBA::Boolean
+TAO_InterfaceDef_i::is_a (const char *interface_id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->is_a_i (interface_id
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA::Boolean
+TAO_InterfaceDef_i::is_a_i (const char *interface_id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ if (ACE_OS::strcmp (interface_id, "IDL:omg.org/CORBA/Object:1.0") == 0)
+ {
+ return 1;
+ }
+
+ CORBA::String_var id = this->id_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ // Is it our type?
+ if (ACE_OS::strcmp (id.in (), interface_id) == 0)
+ return 1;
+
+ // Is it one of our ancestors' types?
+ CORBA_InterfaceDefSeq_var bases = this->base_interfaces_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::ULong length = bases->length ();
+
+ PortableServer::ObjectId_var oid;
+ CORBA::String_var base_path;
+ ACE_Configuration_Section_Key base_key;
+
+ for (CORBA::ULong i = 0; i < length; i++)
+ {
+ oid =
+ this->repo_->ir_poa ()->reference_to_id (bases[i]
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ base_path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ base_path.in (),
+ base_key,
+ 0);
+
+ TAO_InterfaceDef_i impl (this->repo_,
+ base_key);
+
+ CORBA::Boolean success = impl.is_a_i (interface_id
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ if (success == 1)
+ return 1;
+ }
+
+ return 0;
+}
+
+CORBA_InterfaceDef::FullInterfaceDescription *
+TAO_InterfaceDef_i::describe_interface (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->describe_interface_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_InterfaceDef::FullInterfaceDescription *
+TAO_InterfaceDef_i::describe_interface_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA_InterfaceDef::FullInterfaceDescription *fifd = 0;
+ ACE_NEW_RETURN (fifd,
+ CORBA_InterfaceDef::FullInterfaceDescription,
+ 0);
+
+ CORBA_InterfaceDef::FullInterfaceDescription_var retval = fifd;
+
+ fifd->name = this->name_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ fifd->id = this->id_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ ACE_TString container_id;
+
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "container_id",
+ container_id);
+
+ fifd->defined_in = container_id.c_str ();
+
+ fifd->version = this->version_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::ULong i = 0;
+ ACE_TString section_name;
+ ACE_Unbounded_Queue<ACE_Configuration_Section_Key> key_queue;
+
+ // Operations
+ this->inherited_operations (key_queue);
+
+ ACE_Configuration_Section_Key ops_key;
+ int status =
+ this->repo_->config ()->open_section (this->section_key_,
+ "ops",
+ 0,
+ ops_key);
+
+ u_int count = 0;
+
+ if (status == 0)
+ {
+ this->repo_->config ()->get_integer_value (ops_key,
+ "count",
+ count);
+
+ for (u_int j = 0; j < count; ++j)
+ {
+ ACE_Configuration_Section_Key op_key;
+ CORBA::String_var section_name = this->int_to_string (j);
+ status =
+ this->repo_->config ()->open_section (ops_key,
+ section_name.in (),
+ 0,
+ op_key);
+
+ if (status == 0)
+ key_queue.enqueue_tail (op_key);
+ }
+ }
+
+ size_t size = key_queue.size ();
+ fifd->operations.length (size);
+
+ for (i = 0; i < size; ++i)
+ {
+ ACE_Configuration_Section_Key key;
+ key_queue.dequeue_head (key);
+
+ TAO_OperationDef_i op (this->repo_,
+ key);
+
+ fifd->operations[i] = op.make_description (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+ }
+
+ // Attributes
+ this->inherited_attributes (key_queue);
+
+ ACE_Configuration_Section_Key attrs_key;
+ status =
+ this->repo_->config ()->open_section (this->section_key_,
+ "attrs",
+ 0,
+ attrs_key);
+
+ count = 0;
+
+ if (status == 0)
+ {
+ this->repo_->config ()->get_integer_value (attrs_key,
+ "count",
+ count);
+
+ for (u_int j = 0; j < count; ++j)
+ {
+ ACE_Configuration_Section_Key attr_key;
+ CORBA::String_var section_name = this->int_to_string (j);
+ status =
+ this->repo_->config ()->open_section (attrs_key,
+ section_name.in (),
+ 0,
+ attr_key);
+
+ if (status == 0)
+ key_queue.enqueue_tail (attr_key);
+ }
+ }
+
+ size = key_queue.size ();
+ fifd->attributes.length (size);
+
+ for (i = 0; i < size; ++i)
+ {
+ ACE_Configuration_Section_Key key;
+ key_queue.dequeue_head (key);
+
+ TAO_AttributeDef_i attr (this->repo_,
+ key);
+
+ fifd->attributes[i] = attr.make_description (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+ }
+
+ CORBA_InterfaceDefSeq_var bases = this->base_interfaces_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA::ULong length = bases->length ();
+
+ CORBA_RepositoryIdSeq repo_ids (length);
+
+ repo_ids.length (length);
+
+ PortableServer::ObjectId_var oid;
+ CORBA::String_var base_path;
+ ACE_Configuration_Section_Key base_key;
+
+ for (i = 0; i < length; ++i)
+ {
+ oid =
+ this->repo_->ir_poa ()->reference_to_id (bases[i]
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ base_path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ base_path.in (),
+ base_key,
+ 0);
+
+ TAO_InterfaceDef_i impl (this->repo_,
+ base_key);
+
+ repo_ids[i] = impl.id_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+ }
+
+ fifd->base_interfaces = repo_ids;
+
+ fifd->type = this->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return retval._retn ();
+}
+
+CORBA_AttributeDef_ptr
+TAO_InterfaceDef_i::create_attribute (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr type,
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD_RETURN (CORBA_AttributeDef::_nil ());
+
+ return this->create_attribute_i (id,
+ name,
+ version,
+ type,
+ mode
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_AttributeDef_ptr
+TAO_InterfaceDef_i::create_attribute_i (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr type,
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA::Boolean bad_params = this->pre_exist (id,
+ name
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_AttributeDef::_nil ());
+
+ if (bad_params)
+ return CORBA_AttributeDef::_nil ();
+
+ bad_params = this->check_inherited_attrs (name
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_AttributeDef::_nil ());
+
+ if (bad_params)
+ return CORBA_AttributeDef::_nil ();
+
+ ACE_Configuration_Section_Key attrs_key;
+
+ // Create/open section for attributes.
+ this->repo_->config ()->open_section (this->section_key_,
+ "attrs",
+ 1,
+ attrs_key);
+
+ ACE_Configuration_Section_Key new_key;
+
+ // Common to all IR objects created in CORBA_Container.
+ ACE_TString path = this->create_common (attrs_key,
+ new_key,
+ id,
+ name,
+ version,
+ "attrs\\",
+ CORBA::dk_Attribute);
+
+ // Store the path to the attribute's type definition.
+ PortableServer::ObjectId_var oid =
+ this->repo_->ir_poa ()->reference_to_id (type
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_AttributeDef::_nil ());
+
+ CORBA::String_var type_path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ this->repo_->config ()->set_string_value (new_key,
+ "type_path",
+ type_path.in ());
+
+ // Store the attribute's mode.
+ this->repo_->config ()->set_integer_value (new_key,
+ "mode",
+ mode);
+
+ // Create the set and/or get operations for this attribute.
+ this->create_attr_ops (id,
+ name,
+ version,
+ type,
+ mode
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA::AttributeDef::_nil ());
+
+#if 0 // CCM specific.
+
+ CORBA::ULong i = 0;
+
+ CORBA::ULong length = get_exceptions.length ();
+
+ if (length > 0)
+ {
+ // Open a section for the 'get' exceptions.
+ ACE_Configuration_Section_Key get_excepts_key;
+
+ this->repo_->config ()->open_section (new_key,
+ "get_excepts",
+ 1,
+ get_excepts_key);
+
+ // Store the paths to the 'get' exceptions.
+ for (i = 0; i < length; ++i)
+ {
+ PortableServer::ObjectId_var oid =
+ this->repo_->ir_poa ()->reference_to_id (get_exceptions[i]
+ ACE_ENV_ARG_PARAMETER);
+
+ ACE_CHECK_RETURN (CORBA_AttributeDef::_nil ());
+
+ CORBA::String_var get_except_path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ CORBA::String_var section_name = this->int_to_string (i);
+
+ this->repo_->config ()->set_string_value (get_excepts_key,
+ section_name.in (),
+ get_except_path.in ());
+ }
+ }
+
+ length = put_exceptions.length ();
+
+ if (length > 0)
+ {
+ // Open a section for the 'put' exceptions.
+ ACE_Configuration_Section_Key put_excepts_key;
+
+ this->repo_->config ()->open_section (new_key,
+ "put_excepts",
+ 1,
+ put_excepts_key);
+
+ // Store the paths to the 'put' exceptions.
+ for (i = 0; i < length; ++i)
+ {
+ PortableServer::ObjectId_var oid =
+ this->repo_->ir_poa ()->reference_to_id (put_exceptions[i]
+ ACE_ENV_ARG_PARAMETER);
+
+ ACE_CHECK_RETURN (CORBA_AttributeDef::_nil ());
+
+ CORBA::String_var put_except_path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ CORBA::String_var section_name = this->int_to_string (i);
+
+ this->repo_->config ()->set_string_value (put_excepts_key,
+ section_name.in (),
+ put_except_path.in ());
+ }
+ }
+
+#endif /* CCM specific. */
+
+ // Create the object reference.
+ CORBA::Object_var obj =
+ this->repo_->servant_factory ()->create_objref (CORBA::dk_Attribute,
+ path.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_AttributeDef::_nil ());
+
+ CORBA_AttributeDef_var retval =
+ CORBA_AttributeDef::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_AttributeDef::_nil ());
+
+ return retval._retn ();
+}
+
+CORBA_OperationDef_ptr
+TAO_InterfaceDef_i::create_operation (const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr result,
+ CORBA::OperationMode mode,
+ const CORBA_ParDescriptionSeq &params,
+ const CORBA_ExceptionDefSeq &exceptions,
+ const CORBA_ContextIdSeq &contexts
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD_RETURN (CORBA_OperationDef::_nil ());
+
+ return this->create_operation_i (id,
+ name,
+ version,
+ result,
+ mode,
+ params,
+ exceptions,
+ contexts
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_OperationDef_ptr
+TAO_InterfaceDef_i::create_operation_i (const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr result,
+ CORBA::OperationMode mode,
+ const CORBA_ParDescriptionSeq &params,
+ const CORBA_ExceptionDefSeq &exceptions,
+ const CORBA_ContextIdSeq &contexts
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA::Boolean bad_params = this->pre_exist (id,
+ name
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_OperationDef::_nil ());
+
+ if (bad_params)
+ {
+ return CORBA_OperationDef::_nil ();
+ }
+
+ ACE_Configuration_Section_Key ops_key;
+
+ // Create/open section for attributes.
+ this->repo_->config ()->open_section (this->section_key_,
+ "ops",
+ 1,
+ ops_key);
+
+ ACE_Configuration_Section_Key new_key;
+
+ // Common to all IR objects created in CORBA_Container.
+ ACE_TString path = this->create_common (ops_key,
+ new_key,
+ id,
+ name,
+ version,
+ "ops\\",
+ CORBA::dk_Operation);
+
+ CORBA::TypeCode_var rettype = result->type (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_OperationDef::_nil ());
+ CORBA::TCKind kind = rettype->kind (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_OperationDef::_nil ());
+
+ // Oneway operations cannot have a non-void return type.
+ if (mode == CORBA::OP_ONEWAY && kind != CORBA::tk_void)
+ {
+ ACE_THROW_RETURN (CORBA::BAD_PARAM (31,
+ CORBA::COMPLETED_NO),
+ CORBA_OperationDef::_nil ());
+ }
+
+ // Get the path to our return type and store it.
+ PortableServer::ObjectId_var oid =
+ this->repo_->ir_poa ()->reference_to_id (result
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_OperationDef::_nil ());
+
+ CORBA::String_var result_path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ this->repo_->config ()->set_string_value (new_key,
+ "result",
+ result_path.in ());
+
+ // Store the operation mode.
+ this->repo_->config ()->set_integer_value (new_key,
+ "mode",
+ mode);
+
+ CORBA::ULong i = 0;
+
+ // Store the operation's parameter info.
+ CORBA::ULong length = params.length ();
+
+ if (length > 0)
+ {
+ ACE_Configuration_Section_Key params_key;
+
+ this->repo_->config ()->open_section (new_key,
+ "params",
+ 1,
+ params_key);
+
+ this->repo_->config ()->set_integer_value (params_key,
+ "count",
+ length);
+
+ for (i = 0; i < length; ++i)
+ {
+ // Oneway operations cannot have INOUT or OUT parameters.
+ if (mode == CORBA::OP_ONEWAY && params[i].mode != CORBA::PARAM_IN)
+ {
+ ACE_THROW_RETURN (CORBA::BAD_PARAM (31,
+ CORBA::COMPLETED_NO),
+ CORBA_OperationDef::_nil ());
+ }
+
+ ACE_Configuration_Section_Key param_key;
+ CORBA::String_var section_name = this->int_to_string (i);
+
+ this->repo_->config ()->open_section (params_key,
+ section_name.in (),
+ 1,
+ param_key);
+
+ this->repo_->config ()->set_string_value (param_key,
+ "name",
+ params[i].name.in ());
+ PortableServer::ObjectId_var oid =
+ this->repo_->ir_poa ()->reference_to_id (params[i].type_def.in ()
+ ACE_ENV_ARG_PARAMETER);
+
+ ACE_CHECK_RETURN (CORBA_OperationDef::_nil ());
+
+ CORBA::String_var type_path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ this->repo_->config ()->set_string_value (param_key,
+ "type_path",
+ type_path.in ());
+
+ this->repo_->config ()->set_integer_value (param_key,
+ "mode",
+ params[i].mode);
+ }
+ }
+
+ // Store the operation's exception info.
+ length = exceptions.length ();
+
+ if (length > 0)
+ {
+ // Oneway operations cannot throw any user exceptions.
+ if (mode == CORBA::OP_ONEWAY)
+ {
+ ACE_THROW_RETURN (CORBA::BAD_PARAM (31,
+ CORBA::COMPLETED_NO),
+ CORBA_OperationDef::_nil ());
+ }
+
+ ACE_Configuration_Section_Key excepts_key;
+
+ this->repo_->config ()->open_section (new_key,
+ "excepts",
+ 1,
+ excepts_key);
+
+ for (i = 0; i < length; ++i)
+ {
+ PortableServer::ObjectId_var oid =
+ this->repo_->ir_poa ()->reference_to_id (exceptions[i]
+ ACE_ENV_ARG_PARAMETER);
+
+ ACE_CHECK_RETURN (CORBA_OperationDef::_nil ());
+
+ CORBA::String_var type_path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ CORBA::String_var section_name = this->int_to_string (i);
+
+ this->repo_->config ()->set_string_value (excepts_key,
+ section_name.in (),
+ type_path.in ());
+ }
+ }
+
+ // Store the operation's context info.
+ length = contexts.length ();
+
+ if (length > 0)
+ {
+ ACE_Configuration_Section_Key contexts_key;
+
+ this->repo_->config ()->open_section (new_key,
+ "contexts",
+ 1,
+ contexts_key);
+
+ for (i = 0; i < length; ++i)
+ {
+ CORBA::String_var section_name = this->int_to_string (i);
+
+ this->repo_->config ()->set_string_value (contexts_key,
+ section_name.in (),
+ contexts[i].in ());
+ }
+ }
+
+ // Create the object reference.
+ CORBA::Object_var obj =
+ this->repo_->servant_factory ()->create_objref (CORBA::dk_Operation,
+ path.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_OperationDef::_nil ());
+
+ CORBA_OperationDef_var retval =
+ CORBA_OperationDef::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_OperationDef::_nil ());
+
+ return retval._retn ();
+}
+
+void
+TAO_InterfaceDef_i::interface_contents (
+ ACE_Unbounded_Queue<CORBA::DefinitionKind> &kind_queue,
+ ACE_Unbounded_Queue<ACE_TString> &path_queue,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString id;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "id",
+ id);
+
+ ACE_TString path;
+ this->repo_->config ()->get_string_value (this->repo_->repo_ids_key (),
+ id.c_str (),
+ path);
+
+ ACE_TString section_name;
+ int index = 0;
+
+ // Attributes
+ if (limit_type == CORBA::dk_Attribute
+ || limit_type == CORBA::dk_all)
+ {
+ ACE_Configuration_Section_Key attrs_key;
+ this->repo_->config ()->open_section (this->section_key_,
+ "attrs",
+ 0,
+ attrs_key);
+
+ while (this->repo_->config ()->enumerate_sections (attrs_key,
+ index++,
+ section_name)
+ == 0)
+ {
+ kind_queue.enqueue_tail (CORBA::dk_Attribute);
+
+ path_queue.enqueue_tail (
+ path + "\\attrs\\" + section_name.c_str ()
+ );
+ }
+ }
+
+ // Operations
+ if (limit_type == CORBA::dk_Operation
+ || limit_type == CORBA::dk_all)
+ {
+ index = 0;
+
+ ACE_Configuration_Section_Key ops_key;
+ this->repo_->config ()->open_section (this->section_key_,
+ "ops",
+ 0,
+ ops_key);
+
+ while (this->repo_->config ()->enumerate_sections (ops_key,
+ index++,
+ section_name)
+ == 0)
+ {
+ kind_queue.enqueue_tail (CORBA::dk_Operation);
+
+ path_queue.enqueue_tail (
+ path + "\\ops\\" + section_name.c_str ()
+ );
+ }
+ }
+
+ if (exclude_inherited == 0)
+ {
+ // Must recurse through the base interfaces.
+ ACE_Configuration_Section_Key inherited_key;
+ this->repo_->config ()->open_section (this->section_key_,
+ "inherited",
+ 0,
+ inherited_key);
+
+ ACE_TString base_path;
+ ACE_Configuration_Section_Key base_key;
+ ACE_Configuration::VALUETYPE type;
+ index = 0;
+
+ while (this->repo_->config ()->enumerate_values (inherited_key,
+ index++,
+ section_name,
+ type)
+ == 0)
+ {
+ this->repo_->config ()->get_string_value (inherited_key,
+ section_name.c_str (),
+ base_path);
+
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ base_path,
+ base_key,
+ 0);
+
+ TAO_InterfaceDef_i base_iface (this->repo_,
+ base_key);
+
+ base_iface.interface_contents (kind_queue,
+ path_queue,
+ limit_type,
+ exclude_inherited
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+ }
+ }
+}
+
+void
+TAO_InterfaceDef_i::destroy_special (const char *sub_section
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_Configuration_Section_Key sub_key;
+ this->repo_->config ()->open_section (this->section_key_,
+ sub_section,
+ 0,
+ sub_key);
+
+ ACE_TString section_name;
+ int index = 0;
+ while (this->repo_->config ()->enumerate_sections (sub_key,
+ index++,
+ section_name)
+ == 0)
+ {
+ ACE_Configuration_Section_Key member_key;
+ this->repo_->config ()->open_section (sub_key,
+ section_name.c_str (),
+ 0,
+ member_key);
+
+ if (ACE_OS::strcmp (sub_section, "attrs") == 0)
+ {
+ TAO_AttributeDef_i attr (this->repo_,
+ member_key);
+
+ attr.destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+ }
+ else
+ {
+ TAO_OperationDef_i op (this->repo_,
+ member_key);
+
+ op.destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+ }
+ }
+
+}
+
+void
+TAO_InterfaceDef_i::create_attr_ops (const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr type,
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_CString the_get_name ("_get_");
+
+ ACE_CString start (id);
+
+ int pos = start.find (name);
+
+ ACE_CString piece (start.substr (pos));
+
+ ACE_CString the_get_id (start.substr (0, pos) + the_get_name + piece);
+
+ the_get_name += name;
+
+ CORBA_ParDescriptionSeq params (0);
+ CORBA_ExceptionDefSeq excepts (0);
+ CORBA_ContextIdSeq contexts (0);
+
+ CORBA_OperationDef_var the_get_op =
+ this->create_operation_i (the_get_id.c_str (),
+ the_get_name.c_str (),
+ version,
+ type,
+ CORBA::OP_NORMAL,
+ params,
+ excepts,
+ contexts
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ if (mode == CORBA::ATTR_NORMAL)
+ {
+ ACE_CString the_set_name ("_set_");
+
+ ACE_CString the_set_id (start.substr (0, pos) + the_set_name + piece);
+
+ the_set_name += name;
+
+ CORBA_PrimitiveDef_var rettype =
+ this->repo_->get_primitive (CORBA::pk_void
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ params.length (1);
+
+ params[0].name = name;
+ params[0].type = CORBA::TypeCode::_duplicate (CORBA::_tc_void);
+ params[0].type_def = CORBA::IDLType::_duplicate (type);
+ params[0].mode = CORBA::PARAM_IN;
+
+ CORBA_OperationDef_var the_set_op =
+ this->create_operation_i (the_set_id.c_str (),
+ the_set_name.c_str (),
+ version,
+ rettype.in (),
+ CORBA::OP_NORMAL,
+ params,
+ excepts,
+ contexts
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+ }
+}
+
+void
+TAO_InterfaceDef_i::base_interfaces_recursive (
+ ACE_Unbounded_Queue<CORBA::DefinitionKind> &kind_queue,
+ ACE_Unbounded_Queue<ACE_TString> &path_queue
+ )
+{
+ ACE_Configuration_Section_Key inherited_key;
+ this->repo_->config ()->open_section (this->section_key_,
+ "inherited",
+ 0,
+ inherited_key);
+
+ int index = 0;
+ int status = 0;
+ u_int kind = 0;
+ ACE_Configuration::VALUETYPE type;
+ ACE_TString section_name, inherited_path;
+ CORBA::DefinitionKind def_kind = CORBA::dk_none;
+ ACE_Configuration_Section_Key base_key;
+
+ while (this->repo_->config ()->enumerate_values (inherited_key,
+ index++,
+ section_name,
+ type)
+ == 0)
+ {
+ this->repo_->config ()->get_string_value (inherited_key,
+ section_name.c_str (),
+ inherited_path);
+
+ status =
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ inherited_path,
+ base_key,
+ 0);
+
+ if (status == 0)
+ {
+ TAO_InterfaceDef_i tmp (this->repo_,
+ base_key);
+
+ tmp.base_interfaces_recursive (kind_queue,
+ path_queue);
+
+ path_queue.enqueue_tail (inherited_path);
+
+ this->repo_->config ()->get_integer_value (base_key,
+ "def_kind",
+ kind);
+
+ def_kind = ACE_static_cast (CORBA::DefinitionKind, kind);
+
+ kind_queue.enqueue_tail (def_kind);
+ }
+ }
+}
+
+void
+TAO_InterfaceDef_i::inherited_attributes (
+ ACE_Unbounded_Queue<ACE_Configuration_Section_Key> &key_queue
+ )
+{
+ ACE_Unbounded_Queue<CORBA::DefinitionKind> kind_queue;
+ ACE_Unbounded_Queue<ACE_TString> path_queue;
+
+ this->base_interfaces_recursive (kind_queue,
+ path_queue);
+
+ size_t size = path_queue.size ();
+ ACE_Configuration_Section_Key base_key, attrs_key, attr_key;
+ int status = 0;
+ ACE_TString path_name;
+ u_int count = 0;
+
+ for (size_t i = 0; i < size; ++i)
+ {
+ path_queue.dequeue_head (path_name);
+
+ status =
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ path_name,
+ base_key,
+ 0);
+
+ if (status == 0)
+ {
+ this->repo_->config ()->open_section (base_key,
+ "attrs",
+ 0,
+ attrs_key);
+
+ this->repo_->config ()->get_integer_value (attrs_key,
+ "count",
+ count);
+
+ for (u_int j = 0; j < count; ++j)
+ {
+ this->repo_->config ()->open_section (attrs_key,
+ this->int_to_string (j),
+ 0,
+ attr_key);
+
+ key_queue.enqueue_tail (attr_key);
+ }
+ }
+ }
+}
+
+void
+TAO_InterfaceDef_i::inherited_operations (
+ ACE_Unbounded_Queue<ACE_Configuration_Section_Key> &key_queue
+ )
+{
+ ACE_Unbounded_Queue<CORBA::DefinitionKind> kind_queue;
+ ACE_Unbounded_Queue<ACE_TString> path_queue;
+
+ this->base_interfaces_recursive (kind_queue,
+ path_queue);
+
+ size_t size = path_queue.size ();
+ ACE_Configuration_Section_Key base_key, ops_key, op_key;
+ int status = 0;
+ ACE_TString path_name;
+ u_int count = 0;
+
+ for (size_t i = 0; i < size; ++i)
+ {
+ path_queue.dequeue_head (path_name);
+
+ status =
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ path_name,
+ base_key,
+ 0);
+
+ if (status == 0)
+ {
+ this->repo_->config ()->open_section (base_key,
+ "ops",
+ 0,
+ ops_key);
+
+ this->repo_->config ()->get_integer_value (ops_key,
+ "count",
+ count);
+
+ for (u_int j = 0; j < count; ++j)
+ {
+ this->repo_->config ()->open_section (ops_key,
+ this->int_to_string (j),
+ 0,
+ op_key);
+
+ key_queue.enqueue_tail (op_key);
+ }
+ }
+ }
+}
+
+CORBA::Boolean
+TAO_InterfaceDef_i::check_inherited_attrs (const char *name
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_Unbounded_Queue<ACE_Configuration_Section_Key> key_queue;
+
+ this->inherited_attributes (key_queue);
+
+ size_t size = key_queue.size ();
+ ACE_Configuration_Section_Key attr_key;
+ ACE_TString attr_name;
+
+ for (u_int i = 0; i < size; ++i)
+ {
+ key_queue.dequeue_head (attr_key);
+
+ this->repo_->config ()->get_string_value (attr_key,
+ "name",
+ attr_name);
+
+ if (attr_name == name)
+ {
+ ACE_THROW_RETURN (CORBA::BAD_PARAM (5,
+ CORBA::COMPLETED_NO),
+ 1);
+ }
+ }
+
+ return 0;
+}
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/InterfaceDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/InterfaceDef_i.h
new file mode 100644
index 00000000000..27ba017111e
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/InterfaceDef_i.h
@@ -0,0 +1,247 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// InterfaceDef_i.h
+//
+// = DESCRIPTION
+// InterfaceDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_INTERFACEDEF_I_H
+#define TAO_INTERFACEDEF_I_H
+
+#include "Container_i.h"
+#include "Contained_i.h"
+#include "IDLType_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_IFRService_Export TAO_InterfaceDef_i : public virtual TAO_Container_i,
+ public virtual TAO_Contained_i,
+ public virtual TAO_IDLType_i
+{
+ // = TITLE
+ // TAO_InterfaceDef_i
+ //
+ // = DESCRIPTION
+ // Represents an interface definition.
+ //
+public:
+ TAO_InterfaceDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor
+
+ virtual ~TAO_InterfaceDef_i (void);
+ // Destructor
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Return our definition kind.
+
+ virtual void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Remove the repository entry.
+
+ virtual void destroy_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_Contained::Description *describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+
+ virtual CORBA_Contained::Description *describe_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+
+ virtual CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From IDLType_i's pure virtual function.
+
+ virtual CORBA::TypeCode_ptr type_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From IDLType_i's pure virtual function.
+
+ virtual CORBA_InterfaceDefSeq *base_interfaces (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_InterfaceDefSeq *base_interfaces_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void base_interfaces (
+ const CORBA_InterfaceDefSeq &base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void base_interfaces_i (
+ const CORBA_InterfaceDefSeq &base_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean is_a (
+ const char *interface_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA::Boolean is_a_i (
+ const char *interface_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_InterfaceDef::FullInterfaceDescription *describe_interface (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_InterfaceDef::FullInterfaceDescription *describe_interface_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_AttributeDef_ptr create_attribute (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr type,
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_AttributeDef_ptr create_attribute_i (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr type,
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_OperationDef_ptr create_operation (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr result,
+ CORBA::OperationMode mode,
+ const CORBA_ParDescriptionSeq &params,
+ const CORBA_ExceptionDefSeq &exceptions,
+ const CORBA_ContextIdSeq &contexts
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_OperationDef_ptr create_operation_i (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr result,
+ CORBA::OperationMode mode,
+ const CORBA_ParDescriptionSeq &params,
+ const CORBA_ExceptionDefSeq &exceptions,
+ const CORBA_ContextIdSeq &contexts
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void interface_contents (
+ ACE_Unbounded_Queue<CORBA::DefinitionKind> &kind_queue,
+ ACE_Unbounded_Queue<ACE_TString> &path_queue,
+ CORBA::DefinitionKind limit_type,
+ CORBA::Boolean exclude_inherited
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Gathers the attributes and operations of all the ancestors.
+
+private:
+ void destroy_special (
+ const char *sub_section
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Removed the repo ids of our attributes and operations from
+ // the flat repo ids section of the repository.
+
+ void create_attr_ops (const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr type,
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Create set and/or get operations for an attribute.
+
+ void base_interfaces_recursive (
+ ACE_Unbounded_Queue<CORBA::DefinitionKind> &kind_queue,
+ ACE_Unbounded_Queue<ACE_TString> &path_queue
+ );
+ // Depth-first traversal of the inheritance tree to get all
+ // the base interfaces.
+
+ void inherited_attributes (
+ ACE_Unbounded_Queue<ACE_Configuration_Section_Key> &key_queue
+ );
+ // Depth-first traversal of the inheritance tree to get all the
+ // attributes.
+
+ void inherited_operations (
+ ACE_Unbounded_Queue<ACE_Configuration_Section_Key> &key_queue
+ );
+ // Depth-first traversal of the inheritance tree to get all the
+ // operations.
+
+ CORBA::Boolean check_inherited_attrs (const char *name
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // When creating a new attribute, check for a clash with an inherited
+ // attribute name.
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_INTERFACEDEF_I_H */
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/LocalInterfaceDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/LocalInterfaceDef_i.cpp
new file mode 100644
index 00000000000..8443fc29d69
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/LocalInterfaceDef_i.cpp
@@ -0,0 +1,55 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "LocalInterfaceDef_i.h"
+#include "Repository_i.h"
+
+ACE_RCSID(IFR_Service, LocalInterfaceDef_i, "$Id$")
+
+TAO_LocalInterfaceDef_i::TAO_LocalInterfaceDef_i (
+ TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key
+ )
+ : TAO_IRObject_i (repo, section_key),
+ TAO_Container_i (repo, section_key),
+ TAO_Contained_i (repo, section_key),
+ TAO_IDLType_i (repo, section_key),
+ TAO_InterfaceDef_i (repo, section_key)
+{
+}
+
+TAO_LocalInterfaceDef_i::~TAO_LocalInterfaceDef_i (void)
+{
+}
+
+CORBA::DefinitionKind
+TAO_LocalInterfaceDef_i::def_kind (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::dk_LocalInterface;
+}
+
+CORBA::Boolean
+TAO_LocalInterfaceDef_i::is_a (const char *interface_id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->is_a_i (interface_id
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA::Boolean
+TAO_LocalInterfaceDef_i::is_a_i (const char *interface_id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ if (ACE_OS::strcmp (interface_id, "IDL:omg.org/CORBA/LocalBase:1.0") == 0)
+ {
+ return 1;
+ }
+
+ return this->TAO_InterfaceDef_i::is_a_i (interface_id
+ ACE_ENV_ARG_PARAMETER);
+}
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/LocalInterfaceDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/LocalInterfaceDef_i.h
new file mode 100644
index 00000000000..79e1c8b4eb8
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/LocalInterfaceDef_i.h
@@ -0,0 +1,78 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// LocalInterfaceDef_i.h
+//
+// = DESCRIPTION
+// LocalInterfaceDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_LOCALINTERFACEDEF_I_H
+#define TAO_LOCALINTERFACEDEF_I_H
+
+#include "InterfaceDef_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_IFRService_Export TAO_LocalInterfaceDef_i : public virtual TAO_InterfaceDef_i
+{
+ // = TITLE
+ // TAO_LocalInterfaceDef_i
+ //
+ // = DESCRIPTION
+ // Represents an local interface definition.
+ //
+public:
+ TAO_LocalInterfaceDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor
+
+ virtual ~TAO_LocalInterfaceDef_i (void);
+ // Destructor
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Return our definition kind.
+
+ virtual CORBA::Boolean is_a (
+ const char *interface_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA::Boolean is_a_i (
+ const char *interface_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_LOCALINTERFACEDEF_I_H */
+
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/ModuleDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/ModuleDef_i.cpp
new file mode 100644
index 00000000000..9b3097ec619
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/ModuleDef_i.cpp
@@ -0,0 +1,97 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "ModuleDef_i.h"
+#include "Repository_i.h"
+
+ACE_RCSID(IFR_Service, ModuleDef_i, "$Id$")
+
+TAO_ModuleDef_i::TAO_ModuleDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key)
+ : TAO_IRObject_i (repo, section_key),
+ TAO_Container_i (repo, section_key),
+ TAO_Contained_i (repo, section_key)
+{
+}
+
+TAO_ModuleDef_i::~TAO_ModuleDef_i (void)
+{
+}
+
+CORBA::DefinitionKind
+TAO_ModuleDef_i::def_kind (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::dk_Module;
+}
+
+void
+TAO_ModuleDef_i::destroy (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+void
+TAO_ModuleDef_i::destroy_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Destroy our members.
+ TAO_Container_i::destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ // Destroy ourself.
+ TAO_Contained_i::destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+}
+
+CORBA_Contained::Description *
+TAO_ModuleDef_i::describe (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->describe_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_Contained::Description *
+TAO_ModuleDef_i::describe_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA_Contained::Description *desc_ptr = 0;
+ ACE_NEW_THROW_EX (desc_ptr,
+ CORBA_Contained::Description,
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ CORBA_Contained::Description_var retval = desc_ptr;
+
+ retval->kind = this->def_kind (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA_ModuleDescription md;
+
+ md.name = this->name_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ md.id = this->id_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ ACE_TString container_id;
+
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "container_id",
+ container_id);
+
+ md.defined_in = container_id.c_str ();
+
+ md.version = this->version_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ retval->value <<= md;
+
+ return retval._retn ();
+}
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/ModuleDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/ModuleDef_i.h
new file mode 100644
index 00000000000..971dc4c405b
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/ModuleDef_i.h
@@ -0,0 +1,91 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// ModuleDef_i.h
+//
+// = DESCRIPTION
+// ModuleDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_MODULEDEF_I_H
+#define TAO_MODULEDEF_I_H
+
+#include "Container_i.h"
+#include "Contained_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_IFRService_Export TAO_ModuleDef_i : public virtual TAO_Container_i,
+ public virtual TAO_Contained_i
+{
+ // = TITLE
+ // TAO_ModuleDef_i
+ //
+ // = DESCRIPTION
+ // Represents a module definition.
+ //
+public:
+ TAO_ModuleDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor
+
+ virtual ~TAO_ModuleDef_i (void);
+ // Destructor
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Return our definition kind.
+
+ virtual void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Remove the repository entry.
+
+ virtual void destroy_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Remove the repository entry.
+
+ virtual CORBA_Contained::Description *describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+
+ virtual CORBA_Contained::Description *describe_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_MODULEDEF_I_H */
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/NativeDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/NativeDef_i.cpp
new file mode 100644
index 00000000000..366530bfa56
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/NativeDef_i.cpp
@@ -0,0 +1,56 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "NativeDef_i.h"
+#include "Repository_i.h"
+
+ACE_RCSID(IFR_Service, NativeDef_i, "$Id$")
+
+TAO_NativeDef_i::TAO_NativeDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key)
+ : TAO_IRObject_i (repo, section_key),
+ TAO_Contained_i (repo, section_key),
+ TAO_IDLType_i (repo, section_key),
+ TAO_TypedefDef_i (repo, section_key)
+{
+}
+
+TAO_NativeDef_i::~TAO_NativeDef_i (void)
+{
+}
+
+CORBA::DefinitionKind
+TAO_NativeDef_i::def_kind (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::dk_Native;
+}
+
+CORBA::TypeCode_ptr
+TAO_NativeDef_i::type (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::TypeCode_ptr
+TAO_NativeDef_i::type_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString id;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "id",
+ id);
+
+ ACE_TString name;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "name",
+ name);
+
+ return this->repo_->tc_factory ()->create_native_tc (id.c_str (),
+ name.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/NativeDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/NativeDef_i.h
new file mode 100644
index 00000000000..8a948753df4
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/NativeDef_i.h
@@ -0,0 +1,78 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// NativeDef_i.h
+//
+// = DESCRIPTION
+// NativeDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_NATIVEDEF_I_H
+#define TAO_NATIVEDEF_I_H
+
+#include "TypedefDef_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_IFRService_Export TAO_NativeDef_i : public virtual TAO_TypedefDef_i
+{
+public:
+ // = TITLE
+ // TAO_NativeDef_i
+ //
+ // = DESCRIPTION
+ // Represents an OMG IDL native definition.
+ //
+public:
+ TAO_NativeDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor
+
+ virtual ~TAO_NativeDef_i (void);
+ // Destructor
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Return our definition kind.
+
+ virtual CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From IDLType_i's pure virtual function.
+
+ virtual CORBA::TypeCode_ptr type_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From IDLType_i's pure virtual function.
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_NATIVEDEF_I_H */
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/OperationDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/OperationDef_i.cpp
new file mode 100644
index 00000000000..f5cc22de14a
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/OperationDef_i.cpp
@@ -0,0 +1,785 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "OperationDef_i.h"
+#include "Repository_i.h"
+#include "IDLType_i.h"
+#include "ExceptionDef_i.h"
+#include "Servant_Factory.h"
+#include "ace/Auto_Ptr.h"
+
+ACE_RCSID(IFR_Service, OperationDef_i, "$Id$")
+
+TAO_OperationDef_i::TAO_OperationDef_i (
+ TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key
+ )
+ : TAO_IRObject_i (repo, section_key),
+ TAO_Contained_i (repo, section_key)
+{
+}
+
+TAO_OperationDef_i::~TAO_OperationDef_i (void)
+{
+}
+
+CORBA::DefinitionKind
+TAO_OperationDef_i::def_kind (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::dk_Operation;
+}
+
+CORBA_Contained::Description *
+TAO_OperationDef_i::describe (ACE_ENV_SINGLE_ARG_DECL )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->describe_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_Contained::Description *
+TAO_OperationDef_i::describe_i (ACE_ENV_SINGLE_ARG_DECL )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA_Contained::Description *desc_ptr = 0;
+ ACE_NEW_THROW_EX (desc_ptr,
+ CORBA_Contained::Description,
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ CORBA_Contained::Description_var retval = desc_ptr;
+
+ retval->kind = this->def_kind (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ retval->value <<= this->make_description (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ return retval._retn ();
+}
+
+CORBA::TypeCode_ptr
+TAO_OperationDef_i::result (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->result_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::TypeCode_ptr
+TAO_OperationDef_i::result_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString result_path;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "result",
+ result_path);
+
+ ACE_Configuration_Section_Key result_key;
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ result_path,
+ result_key,
+ 0);
+
+ TAO_IDLType_i *impl =
+ this->repo_->servant_factory ()->create_idltype (result_key
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA::TypeCode::_nil ());
+
+ auto_ptr<TAO_IDLType_i> safety (impl);
+
+ return impl->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_IDLType_ptr
+TAO_OperationDef_i::result_def (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA_IDLType::_nil ());
+
+ return this->result_def_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_IDLType_ptr
+TAO_OperationDef_i::result_def_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString result_path;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "result",
+ result_path);
+
+ ACE_Configuration_Section_Key result_key;
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ result_path,
+ result_key,
+ 0);
+
+ u_int kind = 0;
+ this->repo_->config ()->get_integer_value (result_key,
+ "def_kind",
+ kind);
+
+ CORBA::DefinitionKind def_kind =
+ ACE_static_cast (CORBA::DefinitionKind, kind);
+
+ CORBA::Object_var obj =
+ this->repo_->servant_factory ()->create_objref (def_kind,
+ result_path.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_IDLType::_nil ());
+
+ return CORBA_IDLType::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_OperationDef_i::result_def (CORBA_IDLType_ptr result_def
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->result_def_i (result_def
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_OperationDef_i::result_def_i (CORBA_IDLType_ptr result_def
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ PortableServer::ObjectId_var oid =
+ this->repo_->ir_poa ()->reference_to_id (result_def
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ CORBA::String_var result_path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ this->repo_->config ()->set_string_value (this->section_key_,
+ "result",
+ result_path.in ());
+}
+
+CORBA_ParDescriptionSeq *
+TAO_OperationDef_i::params (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->params_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_ParDescriptionSeq *
+TAO_OperationDef_i::params_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA::ULong i = 0;
+ ACE_Configuration_Section_Key params_key;
+ int status =
+ this->repo_->config ()->open_section (this->section_key_,
+ "params",
+ 0,
+ params_key);
+
+ ACE_Unbounded_Queue<ACE_Configuration_Section_Key> key_queue;
+
+ // This section may not have been created.
+ if (status == 0)
+ {
+ u_int count = 0;
+ this->repo_->config ()->get_integer_value (params_key,
+ "count",
+ count);
+
+ for (i = 0; i < count; ++i)
+ {
+ CORBA::String_var section_name = this->int_to_string (i);
+ ACE_Configuration_Section_Key param_key;
+ status =
+ this->repo_->config ()->open_section (params_key,
+ section_name.in (),
+ 0,
+ param_key);
+
+ if (status == 0)
+ key_queue.enqueue_tail (param_key);
+ }
+ }
+
+ size_t size = key_queue.size ();
+
+ CORBA_ParDescriptionSeq *pd_seq = 0;
+ ACE_NEW_THROW_EX (pd_seq,
+ CORBA_ParDescriptionSeq (size),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ pd_seq->length (size);
+
+ if (size == 0)
+ return pd_seq;
+
+ CORBA_ParDescriptionSeq_var retval = pd_seq;
+
+ for (i = 0; i < size; ++i)
+ {
+ ACE_Configuration_Section_Key key;
+ key_queue.dequeue_head (key);
+
+ ACE_TString name;
+ this->repo_->config ()->get_string_value (key,
+ "name",
+ name);
+
+ retval[i].name = name.c_str ();
+
+ u_int mode = 0;
+ this->repo_->config ()->get_integer_value (key,
+ "mode",
+ mode);
+
+ retval[i].mode = ACE_static_cast (CORBA::ParameterMode, mode);
+
+ ACE_TString type_path;
+ this->repo_->config ()->get_string_value (key,
+ "type_path",
+ type_path);
+
+ ACE_Configuration_Section_Key type_key;
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ type_path,
+ type_key,
+ 0);
+
+ TAO_IDLType_i *impl =
+ this->repo_->servant_factory ()->create_idltype (type_key
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_IDLType_i> safety (impl);
+
+ retval[i].type = impl->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ u_int kind = 0;
+ this->repo_->config ()->get_integer_value (type_key,
+ "def_kind",
+ kind);
+
+ CORBA::DefinitionKind def_kind =
+ ACE_static_cast (CORBA::DefinitionKind, kind);
+
+ CORBA::Object_var obj =
+ this->repo_->servant_factory ()->create_objref (def_kind,
+ type_path.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ retval[i].type_def = CORBA_IDLType::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+ }
+
+ return retval._retn ();
+}
+
+void
+TAO_OperationDef_i::params (const CORBA_ParDescriptionSeq &params
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->params_i (params
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_OperationDef_i::params_i (const CORBA_ParDescriptionSeq &params
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ this->repo_->config ()->remove_section (this->section_key_,
+ "params",
+ 1);
+
+ CORBA::ULong length = params.length ();
+
+ if (length == 0)
+ return;
+
+ ACE_Configuration_Section_Key params_key;
+ this->repo_->config ()->open_section (this->section_key_,
+ "params",
+ 1,
+ params_key);
+
+ this->repo_->config ()->set_integer_value (params_key,
+ "count",
+ length);
+
+ for (CORBA::ULong i = 0; i < length; i++)
+ {
+ ACE_Configuration_Section_Key param_key;
+ CORBA::String_var section_name = this->int_to_string (i);
+
+ this->repo_->config ()->open_section (params_key,
+ section_name.in (),
+ 1,
+ param_key);
+
+ this->repo_->config ()->set_string_value (param_key,
+ "name",
+ params[i].name.in ());
+ PortableServer::ObjectId_var oid =
+ this->repo_->ir_poa ()->reference_to_id (params[i].type_def.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ CORBA::String_var type_path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ this->repo_->config ()->set_string_value (param_key,
+ "type_path",
+ type_path.in ());
+
+ this->repo_->config ()->set_integer_value (param_key,
+ "mode",
+ params[i].mode);
+ }
+}
+
+CORBA::OperationMode
+TAO_OperationDef_i::mode (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA::OP_NORMAL);
+
+ return this->mode_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::OperationMode
+TAO_OperationDef_i::mode_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ u_int mode;
+ this->repo_->config ()->get_integer_value (this->section_key_,
+ "mode",
+ mode);
+
+ return ACE_static_cast (CORBA::OperationMode, mode);
+}
+
+void
+TAO_OperationDef_i::mode (CORBA::OperationMode mode
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->mode_i (mode
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_OperationDef_i::mode_i (CORBA::OperationMode mode
+ ACE_ENV_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ this->repo_->config ()->set_integer_value (this->section_key_,
+ "mode",
+ mode);
+}
+
+CORBA_ContextIdSeq *
+TAO_OperationDef_i::contexts (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->contexts_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_ContextIdSeq *
+TAO_OperationDef_i::contexts_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_Configuration_Section_Key contexts_key;
+ int status =
+ this->repo_->config ()->open_section (this->section_key_,
+ "contexts",
+ 0,
+ contexts_key);
+
+ ACE_Unbounded_Queue<ACE_TString> context_queue;
+
+ // This section may not have been created.
+ if (status == 0)
+ {
+ int index = 0;
+ CORBA::String_var field_name = this->int_to_string (index);
+ ACE_TString context;
+
+ // Don't have to worry about gaps here - contexts are not
+ // IR objects so they can't be destroyed one at a time. To
+ // make a change one has to call the mutator version of this
+ // function and make a completely new list.
+ while (this->repo_->config ()->get_string_value (contexts_key,
+ field_name.in (),
+ context)
+ == 0)
+ {
+ context_queue.enqueue_tail (context);
+ field_name = this->int_to_string (++index);
+ }
+ }
+
+ size_t size = context_queue.size ();
+
+ CORBA_ContextIdSeq *ci_seq = 0;
+ ACE_NEW_THROW_EX (ci_seq,
+ CORBA_ContextIdSeq (size),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ ci_seq->length (size);
+
+ for (CORBA::ULong i = 0; i < size; ++i)
+ {
+ ACE_TString context_string;
+ context_queue.dequeue_head (context_string);
+
+ (*ci_seq)[i] = context_string.c_str ();
+ }
+
+ return ci_seq;
+}
+
+void
+TAO_OperationDef_i::contexts (const CORBA_ContextIdSeq &contexts
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->contexts_i (contexts
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_OperationDef_i::contexts_i (const CORBA_ContextIdSeq &contexts
+ ACE_ENV_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ this->repo_->config ()->remove_section (this->section_key_,
+ "contexts",
+ 0);
+
+ CORBA::ULong length = contexts.length ();
+
+ if (length == 0)
+ return;
+
+ ACE_Configuration_Section_Key contexts_key;
+ this->repo_->config ()->open_section (this->section_key_,
+ "contexts",
+ 1,
+ contexts_key);
+
+ for (CORBA::ULong i = 0; i < length; i++)
+ {
+ CORBA::String_var section_name = this->int_to_string (i);
+
+ this->repo_->config ()->set_string_value (contexts_key,
+ section_name.in (),
+ contexts[i].in ());
+ }
+}
+
+CORBA_ExceptionDefSeq *
+TAO_OperationDef_i::exceptions (ACE_ENV_SINGLE_ARG_DECL )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->exceptions_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_ExceptionDefSeq *
+TAO_OperationDef_i::exceptions_i (ACE_ENV_SINGLE_ARG_DECL )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_Configuration_Section_Key excepts_key;
+ int status =
+ this->repo_->config ()->open_section (this->section_key_,
+ "excepts",
+ 0,
+ excepts_key);
+
+ int index = 0;
+ ACE_Unbounded_Queue<CORBA::DefinitionKind> kind_queue;
+ ACE_Unbounded_Queue<ACE_TString> path_queue;
+
+ // This section may not have been created.
+ if (status == 0)
+ {
+ ACE_TString field_name, type_path;
+ ACE_Configuration::VALUETYPE type;
+ u_int kind = 0;
+ CORBA::DefinitionKind def_kind = CORBA::dk_none;
+ ACE_Configuration_Section_Key except_key;
+
+ while (this->repo_->config ()->enumerate_values (excepts_key,
+ index++,
+ field_name,
+ type)
+ == 0)
+ {
+ this->repo_->config ()->get_string_value (excepts_key,
+ field_name.c_str (),
+ type_path);
+
+ status =
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ type_path,
+ except_key,
+ 0);
+
+ if (status == 0)
+ {
+ path_queue.enqueue_tail (type_path);
+
+ this->repo_->config ()->get_integer_value (except_key,
+ "def_kind",
+ kind);
+
+ def_kind =
+ ACE_static_cast (CORBA::DefinitionKind, kind);
+
+ kind_queue.enqueue_tail (def_kind);
+ }
+ }
+ }
+
+ size_t size = kind_queue.size ();
+
+ CORBA_ExceptionDefSeq *ed_seq = 0;
+ ACE_NEW_THROW_EX (ed_seq,
+ CORBA_ExceptionDefSeq (size),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ ed_seq->length (size);
+
+ if (index == 0)
+ return ed_seq;
+
+ CORBA_ExceptionDefSeq_var retval = ed_seq;
+
+ for (CORBA::ULong i = 0; i < size; ++i)
+ {
+ CORBA::DefinitionKind def_kind;
+ kind_queue.dequeue_head (def_kind);
+
+ ACE_TString path;
+ path_queue.dequeue_head (path);
+
+ CORBA::Object_var obj =
+ this->repo_->servant_factory ()->create_objref (def_kind,
+ path.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ retval[i] = CORBA_ExceptionDef::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+ }
+
+ return retval._retn ();
+}
+
+void
+TAO_OperationDef_i::exceptions (const CORBA_ExceptionDefSeq &exceptions
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->exceptions_i (exceptions
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_OperationDef_i::exceptions_i (const CORBA_ExceptionDefSeq &exceptions
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ this->repo_->config ()->remove_section (this->section_key_,
+ "excepts",
+ 0);
+
+ CORBA::ULong length = exceptions.length ();
+
+ if (length == 0)
+ return;
+
+ ACE_Configuration_Section_Key excepts_key;
+ this->repo_->config ()->open_section (this->section_key_,
+ "excepts",
+ 1,
+ excepts_key);
+
+ for (CORBA::ULong i = 0; i < length; i++)
+ {
+ PortableServer::ObjectId_var oid =
+ this->repo_->ir_poa ()->reference_to_id (exceptions[i]
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ CORBA::String_var type_path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ CORBA::String_var section_name = this->int_to_string (i);
+
+ this->repo_->config ()->set_string_value (excepts_key,
+ section_name.in (),
+ type_path.in ());
+ }
+
+}
+
+CORBA_OperationDescription
+TAO_OperationDef_i::make_description (
+ ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA_OperationDescription od;
+
+ od.name = this->name_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (od);
+
+ od.id = this->id_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (od);
+
+ ACE_TString container_id;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "container_id",
+ container_id);
+
+ od.defined_in = container_id.c_str ();
+
+ od.version = this->version_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (od);
+
+ od.result = this->result_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (od);
+
+ od.mode = this->mode_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (od);
+
+ CORBA_ContextIdSeq_var cid_seq = this->contexts_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (od);
+
+ od.contexts = cid_seq.in ();
+
+ CORBA_ParDescriptionSeq_var pd_seq = this->params_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (od);
+
+ od.parameters = pd_seq.in ();
+
+ ACE_Configuration_Section_Key excepts_key;
+ int status =
+ this->repo_->config ()->open_section (this->section_key_,
+ "excepts",
+ 0,
+ excepts_key);
+
+ // This section may not have been created.
+ if (status == 0)
+ {
+ int index = 0;
+ int status = 0;
+ ACE_TString field_name, type_path;
+ ACE_Configuration::VALUETYPE type;
+ ACE_Unbounded_Queue<ACE_TString> path_queue;
+
+ while (this->repo_->config ()->enumerate_values (excepts_key,
+ index++,
+ field_name,
+ type)
+ == 0)
+ {
+ status =
+ this->repo_->config ()->get_string_value (excepts_key,
+ field_name.c_str (),
+ type_path);
+
+ if (status == 0)
+ {
+ path_queue.enqueue_tail (type_path);
+ }
+ }
+
+ size_t size = path_queue.size ();
+
+ od.exceptions.length (size);
+
+ for (CORBA::ULong i = 0; i < size; ++i)
+ {
+ ACE_TString type_path;
+ path_queue.dequeue_head (type_path);
+
+ ACE_Configuration_Section_Key type_key;
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ type_path,
+ type_key,
+ 0);
+
+ ACE_TString name;
+ this->repo_->config ()->get_string_value (type_key,
+ "name",
+ name);
+
+ od.exceptions[i].name = name.c_str ();
+
+ ACE_TString id;
+ this->repo_->config ()->get_string_value (type_key,
+ "id",
+ id);
+
+ od.exceptions[i].id = id.c_str ();
+
+ ACE_TString container_id;
+ this->repo_->config ()->get_string_value (type_key,
+ "container_id",
+ container_id);
+
+ od.exceptions[i].defined_in = container_id.c_str ();
+
+ ACE_TString version;
+ this->repo_->config ()->get_string_value (type_key,
+ "version",
+ version);
+
+ od.exceptions[i].version = version.c_str ();
+
+ TAO_ExceptionDef_i impl (this->repo_,
+ type_key);
+
+ od.exceptions[i].type = impl.type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (od);
+ }
+ }
+ else
+ {
+ od.exceptions.length (0);
+ }
+
+ return od;
+}
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/OperationDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/OperationDef_i.h
new file mode 100644
index 00000000000..f975e564493
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/OperationDef_i.h
@@ -0,0 +1,207 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// OperationDef_i.h
+//
+// = DESCRIPTION
+// OperationDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_OPERATIONDEF_I_H
+#define TAO_OPERATIONDEF_I_H
+
+#include "Contained_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_IFRService_Export TAO_OperationDef_i : public virtual TAO_Contained_i
+{
+ // = TITLE
+ // TAO_OperationDef_i
+ //
+ // = DESCRIPTION
+ // Represents the information needed to describe an operation
+ // of an interface.
+ //
+public:
+ TAO_OperationDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor
+
+ virtual ~TAO_OperationDef_i (void);
+ // Destructor
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Return our definition kind.
+
+ virtual CORBA_Contained::Description *describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+
+ virtual CORBA_Contained::Description *describe_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+
+ virtual CORBA::TypeCode_ptr result (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA::TypeCode_ptr result_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_IDLType_ptr result_def (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_IDLType_ptr result_def_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void result_def (
+ CORBA_IDLType_ptr result_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void result_def_i (
+ CORBA_IDLType_ptr result_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_ParDescriptionSeq *params (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_ParDescriptionSeq *params_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void params (
+ const CORBA_ParDescriptionSeq &params
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void params_i (
+ const CORBA_ParDescriptionSeq &params
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::OperationMode mode (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA::OperationMode mode_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void mode (
+ CORBA::OperationMode mode
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void mode_i (
+ CORBA::OperationMode mode
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_ContextIdSeq *contexts (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_ContextIdSeq *contexts_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void contexts (
+ const CORBA_ContextIdSeq &contexts
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void contexts_i (
+ const CORBA_ContextIdSeq &contexts
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_ExceptionDefSeq *exceptions (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_ExceptionDefSeq *exceptions_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void exceptions (
+ const CORBA_ExceptionDefSeq &exceptions
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void exceptions_i (
+ const CORBA_ExceptionDefSeq &exceptions
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_OperationDescription make_description (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Common code for InterfaceDef to call in
+ // making its own description.
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_OPERATIONDEF_I_H */
+
+
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/Options.cpp b/TAO/orbsvcs/orbsvcs/IFRService/Options.cpp
new file mode 100644
index 00000000000..225de11fa8f
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/Options.cpp
@@ -0,0 +1,125 @@
+// $Id$
+
+#include "Options.h"
+#include "ace/Get_Opt.h"
+#include "ace/Log_Msg.h"
+
+// Default Constructor
+Options::Options ()
+ : ior_output_file_ (ACE_OS::strdup ("if_repo.ior")),
+ persistent_ (0),
+ persistent_file_ (ACE_OS::strdup ("ifr_default_backing_store")),
+ using_registry_ (0),
+ enable_locking_ (0)
+{
+}
+
+Options::~Options ()
+{
+ ACE_OS::free (this->ior_output_file_);
+ ACE_OS::free (this->persistent_file_);
+}
+
+int
+Options::parse_args (int argc, ACE_TCHAR *argv[])
+{
+ ACE_Get_Opt get_opts (argc, argv, "o:pb:mr");
+ int c;
+
+ while ((c = get_opts ()) != -1)
+ switch (c)
+ {
+ case 'o': // Set the IOR output filename.
+ this->ior_output_file_ = get_opts.opt_arg ();
+ break;
+ case 'p': // Make the IFR persistent
+ this->persistent_ = 1;
+ this->using_registry_ = 0;
+ break;
+ case 'b':
+ this->persistent_file_ = get_opts.opt_arg ();
+ break;
+ case 'm':
+#if defined (ACE_HAS_THREADS)
+ this->enable_locking_ = 1;
+#endif /* ACE_HAS_THREADS */
+ break;
+ case 'r': // win32 registry implementation
+#if defined (ACE_WIN32)
+ if (this->persistent_ == 0)
+ this->using_registry_ = 1;
+ break;
+#else /* ACE_WIN32 */
+ ACE_ERROR_RETURN ((
+ LM_ERROR,
+ ACE_TEXT ("parse_args: not a win32 platform\n")
+ ),
+ 1
+ );
+#endif /* ACE_WIN32 */
+ case '?': // display help for use of the server.
+ default:
+ ACE_ERROR_RETURN ((LM_ERROR,
+ "Usage: %s"
+ " [-o] <ior_output_file>"
+ " [-r]"
+ " [-m]"
+ " [-p]"
+ " [-b] <persistence_file>"
+ "\n",
+ argv [0]),
+ 1);
+ }
+
+ // Indicates successful parsing of command line.
+ return 0;
+}
+
+const char *
+Options::ior_output_file (void) const
+{
+ return this->ior_output_file_;
+}
+
+int
+Options::persistent (void) const
+{
+ return this->persistent_;
+}
+
+const char *
+Options::persistent_file (void) const
+{
+ return this->persistent_file_;
+}
+
+int
+Options::using_registry (void) const
+{
+ return this->using_registry_;
+}
+
+int
+Options::enable_locking (void) const
+{
+ return this->enable_locking_;
+}
+
+#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION)
+template class ACE_Singleton <Options, ACE_Null_Mutex>;
+#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA)
+#pragma instantiate ACE_Singleton <Options, ACE_Null_Mutex>
+#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/Options.h b/TAO/orbsvcs/orbsvcs/IFRService/Options.h
new file mode 100644
index 00000000000..67f7bc575d4
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/Options.h
@@ -0,0 +1,82 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// Options.h
+//
+// = DESCRIPTION
+// This class implements the Options container for the Interface
+// Repository.
+//
+// = AUTHOR
+// Jeff Parsons
+//
+// ============================================================================
+
+#ifndef OPTIONS_H
+#define OPTIONS_H
+
+#include "ace/Singleton.h"
+#include "ifr_service_export.h"
+
+class TAO_IFRService_Export Options
+{
+ // = TITLE
+ // Maintains the global options.
+ //
+ // = DESCRIPTION
+ // This class is converted into a Singleton by the
+ // <ACE_Singleton> template.
+public:
+ Options ();
+ // Default Constructor
+
+ ~Options();
+ // dtor
+
+ int parse_args (int argc,
+ ACE_TCHAR *argv[]);
+ // Parse the command-line arguments and initialize the options.
+
+ const char *ior_output_file (void) const;
+ // Return the file where the IOR of the server object is stored.
+
+ int persistent (void) const;
+ // Is the Interface Repository persistent?
+
+ const char *persistent_file (void) const;
+ // Return the default filename for persistent IFR.
+
+ int using_registry (void) const;
+ // Are we using a WIN32 registry as the backing store?
+
+ int enable_locking (void) const;
+ // Should the repository have a real mutex or a null mutex?
+
+private:
+ char *ior_output_file_;
+ // File where the IOR of the server object is stored.
+
+ int persistent_;
+ // Is the Interface Repository persistent?
+
+ char *persistent_file_;
+ // Default filename for persistent IFR.
+
+ int using_registry_;
+ // Are we using a WIN32 registry as the backing store?
+
+ int enable_locking_;
+ // Should the repository have a real mutex or a null mutex?
+};
+
+// Typedef an Options Singleton.
+typedef ACE_Singleton <Options, ACE_Null_Mutex> OPTIONS;
+
+#endif /* OPTIONS_H */
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/PrimaryKeyDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/PrimaryKeyDef_i.cpp
new file mode 100644
index 00000000000..e52de82784f
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/PrimaryKeyDef_i.cpp
@@ -0,0 +1,98 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "Repository_i.h"
+#include "PrimaryKeyDef_i.h"
+
+ACE_RCSID(IFR_Service, PrimaryKeyDef_i, "$Id$")
+
+TAO_PrimaryKeyDef_i::TAO_PrimaryKeyDef_i (
+ TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key
+ )
+ : TAO_IRObject_i (repo, section_key),
+ TAO_Contained_i (repo, section_key)
+{
+}
+
+TAO_PrimaryKeyDef_i::~TAO_PrimaryKeyDef_i (void)
+{
+}
+
+CORBA::DefinitionKind
+TAO_PrimaryKeyDef_i::def_kind (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::dk_PrimaryKey;
+}
+
+void
+TAO_PrimaryKeyDef_i::destroy (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+void
+TAO_PrimaryKeyDef_i::destroy_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+}
+
+CORBA_Contained::Description *
+TAO_PrimaryKeyDef_i::describe (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->describe_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_Contained::Description *
+TAO_PrimaryKeyDef_i::describe_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+CORBA::Boolean
+TAO_PrimaryKeyDef_i::is_a (const char *primary_key_id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->is_a_i (primary_key_id
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA::Boolean
+TAO_PrimaryKeyDef_i::is_a_i (const char * /* primary_key_id */
+ ACE_ENV_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+CORBA_ValueDef_ptr
+TAO_PrimaryKeyDef_i::primary_key (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA_ValueDef::_nil ());
+
+ return this->primary_key_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_ValueDef_ptr
+TAO_PrimaryKeyDef_i::primary_key_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/PrimaryKeyDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/PrimaryKeyDef_i.h
new file mode 100644
index 00000000000..c84b6d4e2e1
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/PrimaryKeyDef_i.h
@@ -0,0 +1,112 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// PrimaryKeyDef_i.h
+//
+// = DESCRIPTION
+// PrimaryKeyDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_PRIMARYKEYDEF_I_H
+#define TAO_PRIMARYKEYDEF_I_H
+
+#include "Contained_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_IFRService_Export TAO_PrimaryKeyDef_i : public virtual TAO_Contained_i
+{
+ // = TITLE
+ // TAO_PrimaryKeyDef_i
+ //
+ // = DESCRIPTION
+ // Represents a primary key definition. It refers to a ValueDef
+ // object which contains the actual information about the
+ // primary key.
+ //
+public:
+ TAO_PrimaryKeyDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor
+
+ virtual ~TAO_PrimaryKeyDef_i (void);
+ // Destructor
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Return our definition kind.
+
+ virtual void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Remove the repository entry.
+
+ virtual void destroy_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_Contained::Description *describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+
+ virtual CORBA_Contained::Description *describe_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+
+ virtual CORBA::Boolean is_a (
+ const char *primary_key_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA::Boolean is_a_i (
+ const char *primary_key_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_ValueDef_ptr primary_key (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_ValueDef_ptr primary_key_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_PRIMARYKEYDEF_I_H */
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/PrimitiveDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/PrimitiveDef_i.cpp
new file mode 100644
index 00000000000..6e200e14027
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/PrimitiveDef_i.cpp
@@ -0,0 +1,132 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "Repository_i.h"
+#include "PrimitiveDef_i.h"
+
+ACE_RCSID(IFR_Service, PrimitiveDef_i, "$Id$")
+
+TAO_PrimitiveDef_i::TAO_PrimitiveDef_i (
+ TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key
+ )
+ : TAO_IRObject_i (repo, section_key),
+ TAO_IDLType_i (repo, section_key)
+{
+}
+
+TAO_PrimitiveDef_i::~TAO_PrimitiveDef_i (void)
+{
+}
+
+CORBA::DefinitionKind
+TAO_PrimitiveDef_i::def_kind (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::dk_Primitive;
+}
+
+void
+TAO_PrimitiveDef_i::destroy (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ this->destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+void
+TAO_PrimitiveDef_i::destroy_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_THROW (CORBA::BAD_INV_ORDER (2, CORBA::COMPLETED_NO));
+}
+
+CORBA::TypeCode_ptr
+TAO_PrimitiveDef_i::type (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::TypeCode_ptr
+TAO_PrimitiveDef_i::type_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ u_int pkind = 0;
+ this->repo_->config ()->get_integer_value (this->section_key_,
+ "pkind",
+ pkind);
+
+ switch (ACE_static_cast (CORBA::PrimitiveKind, pkind))
+ {
+ case CORBA::pk_null:
+ return CORBA::TypeCode::_duplicate (CORBA::_tc_null);
+ case CORBA::pk_void:
+ return CORBA::TypeCode::_duplicate (CORBA::_tc_void);
+ case CORBA::pk_short:
+ return CORBA::TypeCode::_duplicate (CORBA::_tc_short);
+ case CORBA::pk_long:
+ return CORBA::TypeCode::_duplicate (CORBA::_tc_long);
+ case CORBA::pk_ushort:
+ return CORBA::TypeCode::_duplicate (CORBA::_tc_ushort);
+ case CORBA::pk_ulong:
+ return CORBA::TypeCode::_duplicate (CORBA::_tc_ulong);
+ case CORBA::pk_float:
+ return CORBA::TypeCode::_duplicate (CORBA::_tc_float);
+ case CORBA::pk_double:
+ return CORBA::TypeCode::_duplicate (CORBA::_tc_double);
+ case CORBA::pk_boolean:
+ return CORBA::TypeCode::_duplicate (CORBA::_tc_boolean);
+ case CORBA::pk_char:
+ return CORBA::TypeCode::_duplicate (CORBA::_tc_char);
+ case CORBA::pk_octet:
+ return CORBA::TypeCode::_duplicate (CORBA::_tc_octet);
+ case CORBA::pk_any:
+ return CORBA::TypeCode::_duplicate (CORBA::_tc_any);
+ case CORBA::pk_TypeCode:
+ return CORBA::TypeCode::_duplicate (CORBA::_tc_TypeCode);
+ case CORBA::pk_Principal:
+ return CORBA::TypeCode::_duplicate (CORBA::_tc_Principal);
+ case CORBA::pk_string:
+ return CORBA::TypeCode::_duplicate (CORBA::_tc_string);
+ case CORBA::pk_objref:
+ return CORBA::TypeCode::_duplicate (CORBA::_tc_Object);
+ case CORBA::pk_longlong:
+ return CORBA::TypeCode::_duplicate (CORBA::_tc_longlong);
+ case CORBA::pk_ulonglong:
+ return CORBA::TypeCode::_duplicate (CORBA::_tc_ulonglong);
+ case CORBA::pk_longdouble:
+ return CORBA::TypeCode::_duplicate (CORBA::_tc_longdouble);
+ case CORBA::pk_wchar:
+ return CORBA::TypeCode::_duplicate (CORBA::_tc_wchar);
+ case CORBA::pk_wstring:
+ return CORBA::TypeCode::_duplicate (CORBA::_tc_wstring);
+ case CORBA::pk_value_base:
+ // TODO - we haven't added this typecode constant yet.
+ default:
+ return CORBA::TypeCode::_duplicate (CORBA::_tc_null);
+ }
+}
+
+CORBA::PrimitiveKind
+TAO_PrimitiveDef_i::kind (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA::pk_null);
+
+ return this->kind_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::PrimitiveKind
+TAO_PrimitiveDef_i::kind_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ u_int pkind = 0;
+ this->repo_->config ()->get_integer_value (this->section_key_,
+ "pkind",
+ pkind);
+
+ return ACE_static_cast (CORBA::PrimitiveKind, pkind);
+}
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/PrimitiveDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/PrimitiveDef_i.h
new file mode 100644
index 00000000000..727c5dd56fd
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/PrimitiveDef_i.h
@@ -0,0 +1,99 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// PrimitiveDef_i.h
+//
+// = DESCRIPTION
+// PrimitiveDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_PRIMITIVEDEF_I_H
+#define TAO_PRIMITIVEDEF_I_H
+
+#include "IDLType_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_IFRService_Export TAO_PrimitiveDef_i : public virtual TAO_IDLType_i
+{
+ // = TITLE
+ // TAO_PrimitiveDef_i
+ //
+ // = DESCRIPTION
+ // Represents any of the OMG IDL primitive types
+ //
+public:
+ TAO_PrimitiveDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor.
+
+ virtual ~TAO_PrimitiveDef_i (void);
+ // Destructor.
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Return our definition kind.
+
+ virtual void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // May not be called on a primitive kind - raises BAD_INV_ORDER.
+
+ virtual void destroy_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Must implement this here because it's pure virtual in the
+ // base class.
+
+ virtual CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From IDLType_i's pure virtual function.
+
+ virtual CORBA::TypeCode_ptr type_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::PrimitiveKind kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA::PrimitiveKind kind_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+};
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_PRIMITIVEDEF_I_H */
+
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/ProvidesDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/ProvidesDef_i.cpp
new file mode 100644
index 00000000000..80e73290122
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/ProvidesDef_i.cpp
@@ -0,0 +1,78 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "Repository_i.h"
+#include "ProvidesDef_i.h"
+
+ACE_RCSID(IFR_Service, ProvidesDef_i, "$Id$")
+
+TAO_ProvidesDef_i::TAO_ProvidesDef_i (
+ TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key
+ )
+ : TAO_IRObject_i (repo, section_key),
+ TAO_Contained_i (repo, section_key)
+{
+}
+
+TAO_ProvidesDef_i::~TAO_ProvidesDef_i (void)
+{
+}
+
+CORBA::DefinitionKind
+TAO_ProvidesDef_i::def_kind (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::dk_Provides;
+}
+
+void
+TAO_ProvidesDef_i::destroy (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+void
+TAO_ProvidesDef_i::destroy_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+}
+
+CORBA_Contained::Description *
+TAO_ProvidesDef_i::describe (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->describe_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_Contained::Description *
+TAO_ProvidesDef_i::describe_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+CORBA_InterfaceDef_ptr
+TAO_ProvidesDef_i::interface_type (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA_InterfaceDef::_nil ());
+
+ return this->interface_type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_InterfaceDef_ptr
+TAO_ProvidesDef_i::interface_type_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/ProvidesDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/ProvidesDef_i.h
new file mode 100644
index 00000000000..9de4b7c40ac
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/ProvidesDef_i.h
@@ -0,0 +1,98 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// ProvidesDef_i.h
+//
+// = DESCRIPTION
+// ProvidesDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_PROVIDESDEF_I_H
+#define TAO_PROVIDESDEF_I_H
+
+#include "Contained_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_IFRService_Export TAO_ProvidesDef_i : public virtual TAO_Contained_i
+{
+ // = TITLE
+ // TAO_ProvidesDef_i
+ //
+ // = DESCRIPTION
+ // Represents an interface that is provided by a component.
+ //
+public:
+ TAO_ProvidesDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor
+
+ virtual ~TAO_ProvidesDef_i (void);
+ // Destructor
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Return our definition kind.
+
+ virtual void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Remove the repository entry.
+
+ virtual void destroy_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_Contained::Description *describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+
+ virtual CORBA_Contained::Description *describe_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+
+ virtual CORBA_InterfaceDef_ptr interface_type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_InterfaceDef_ptr interface_type_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_PROVIDESDEF_I_H */
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/PublishesDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/PublishesDef_i.cpp
new file mode 100644
index 00000000000..044d7b67bf3
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/PublishesDef_i.cpp
@@ -0,0 +1,62 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "Repository_i.h"
+#include "PublishesDef_i.h"
+
+ACE_RCSID(IFR_Service, PublishesDef_i, "$Id$")
+
+TAO_PublishesDef_i::TAO_PublishesDef_i (
+ TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key
+ )
+ : TAO_IRObject_i (repo, section_key),
+ TAO_Contained_i (repo, section_key),
+ TAO_EventDef_i (repo, section_key)
+{
+}
+
+TAO_PublishesDef_i::~TAO_PublishesDef_i (void)
+{
+}
+
+CORBA::DefinitionKind
+TAO_PublishesDef_i::def_kind (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::dk_Publishes;
+}
+
+void
+TAO_PublishesDef_i::destroy (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+void
+TAO_PublishesDef_i::destroy_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+}
+
+CORBA_Contained::Description *
+TAO_PublishesDef_i::describe (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->describe_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_Contained::Description *
+TAO_PublishesDef_i::describe_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/PublishesDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/PublishesDef_i.h
new file mode 100644
index 00000000000..46d19e89070
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/PublishesDef_i.h
@@ -0,0 +1,90 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// PublishesDef_i.h
+//
+// = DESCRIPTION
+// PublishesDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_PUBLISHESDEF_I_H
+#define TAO_PUBLISHESDEF_I_H
+
+#include "EventDef_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_IFRService_Export TAO_PublishesDef_i : public virtual TAO_EventDef_i
+{
+ // = TITLE
+ // TAO_PublishesDef_i
+ //
+ // = DESCRIPTION
+ // Represents the definition of an event that is published
+ // by a component.
+ //
+public:
+ TAO_PublishesDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor
+
+ virtual ~TAO_PublishesDef_i (void);
+ // Destructor
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Return our definition kind.
+
+ virtual void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Remove the repository entry.
+
+ virtual void destroy_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_Contained::Description *describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+
+ virtual CORBA_Contained::Description *describe_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_PUBLISHESDEF_I_H */
+
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/Repository_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/Repository_i.cpp
new file mode 100644
index 00000000000..5d2f4c81332
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/Repository_i.cpp
@@ -0,0 +1,860 @@
+// -*- C++ -*-
+//
+// $Id$
+
+#include "Repository_i.h"
+#include "IDLType_i.h"
+#include "ExceptionDef_i.h"
+#include "Options.h"
+#include "Servant_Factory.h"
+
+#include "tao/ORB.h"
+
+#include "ace/Auto_Ptr.h"
+
+ACE_RCSID (IFR_Service,
+ Repository_i,
+ "$Id$")
+
+TAO_Repository_i::TAO_Repository_i (CORBA::ORB_ptr orb,
+ PortableServer::POA_ptr poa,
+ ACE_Configuration *config)
+ : TAO_IRObject_i (0, ACE_Configuration_Section_Key ()),
+ TAO_Container_i (0, ACE_Configuration_Section_Key ()),
+ orb_ (orb),
+ ir_poa_ (poa),
+ config_ (config),
+ servant_factory_ (0),
+ extension_ (CORBA::string_dup ("TAO_IFR_name_extension")),
+ lock_ (0)
+{
+ ACE_TRY_NEW_ENV
+ {
+ // Create the appropriate lock.
+ if (OPTIONS::instance ()->enable_locking ())
+ {
+ ACE_NEW_THROW_EX (this->lock_,
+ ACE_Lock_Adapter<TAO_SYNCH_MUTEX> (),
+ CORBA::NO_MEMORY ());
+ }
+ else
+ {
+ ACE_NEW_THROW_EX (this->lock_,
+ ACE_Lock_Adapter<ACE_SYNCH_NULL_MUTEX> (),
+ CORBA::NO_MEMORY ());
+ }
+ ACE_TRY_CHECK;
+
+ // Create the servant factory.
+ ACE_NEW_THROW_EX (this->servant_factory_,
+ IFR_Servant_Factory (this),
+ CORBA::NO_MEMORY ());
+ ACE_TRY_CHECK;
+
+ // Resolve and narrow the TypeCodeFactory.
+ CORBA::Object_var object =
+ this->orb_->resolve_initial_references ("TypeCodeFactory"
+ ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (!CORBA::is_nil (object.in ()))
+ {
+ this->tc_factory_ =
+ CORBA::TypeCodeFactory::_narrow (object.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ if (CORBA::is_nil (this->tc_factory_.in ()))
+ ACE_ERROR ((
+ LM_ERROR,
+ ACE_TEXT ("Repository: TypeCodeFactory narrow failed\n")
+ ));
+ }
+ else
+ {
+ ACE_ERROR ((
+ LM_ERROR,
+ ACE_TEXT ("Repository: TypeCodeFactory resolve failed\n")
+ ));
+ }
+ }
+ ACE_CATCHANY
+ {
+ ACE_PRINT_EXCEPTION (
+ ACE_ANY_EXCEPTION,
+ ACE_TEXT ("Repository: Initialization failed\n")
+ );
+ ACE_RE_THROW;
+ }
+ ACE_ENDTRY;
+
+ this->config_->open_section (config_->root_section (),
+ "root",
+ 1, // Will create if IFR is not persistent.
+ this->root_key_);
+
+ this->config_->open_section (this->root_key_,
+ "repo_ids",
+ 1, // Will create if IFR is not persistent.
+ this->repo_ids_key_);
+
+ int status =
+ this->config_->open_section (this->root_key_,
+ "pkinds",
+ 0, // Don't create
+ this->pkinds_key_);
+
+ if (status != 0)
+ // IFR is non-persistent or is being run for the first time.
+ // Must add entries for primitive kinds.
+ {
+ this->config_->open_section (this->root_key_,
+ "pkinds",
+ 1, // It doesn't exist so create it.
+ this->pkinds_key_);
+
+ u_int num_pkinds = this->num_pkinds ();
+ for (u_int i = 0; i < num_pkinds; i++)
+ {
+ ACE_Configuration_Section_Key key;
+ CORBA::PrimitiveKind pkind = ACE_static_cast (CORBA::PrimitiveKind,
+ i);
+
+ this->config_->open_section (this->pkinds_key_,
+ this->pkind_to_string (pkind),
+ 1,
+ key);
+
+ this->config_->set_integer_value (key,
+ "def_kind",
+ CORBA::dk_Primitive);
+
+ this->config_->set_integer_value (key,
+ "pkind",
+ i);
+
+ }
+ }
+
+ this->config_->open_section (this->root_key_,
+ "strings",
+ 1,
+ this->strings_key_);
+
+ this->config_->open_section (this->root_key_,
+ "wstrings",
+ 1,
+ this->wstrings_key_);
+
+ this->config_->open_section (this->root_key_,
+ "fixeds",
+ 1,
+ this->fixeds_key_);
+
+ this->config_->open_section (this->root_key_,
+ "arrays",
+ 1,
+ this->arrays_key_);
+
+ this->config_->open_section (this->root_key_,
+ "sequences",
+ 1,
+ this->sequences_key_);
+
+ u_int count = 0;
+
+ // If repository is not persistent, we need to set all
+ // the "count" fields to 0. We test just one for existence.
+ status =
+ this->config_->get_integer_value (this->strings_key_,
+ "count",
+ count);
+
+ if (status == -3) // Field "count" does not exist.
+ {
+ this->config_->set_integer_value (this->strings_key_,
+ "count",
+ 0);
+
+ this->config_->set_integer_value (this->wstrings_key_,
+ "count",
+ 0);
+
+ this->config_->set_integer_value (this->fixeds_key_,
+ "count",
+ 0);
+
+ this->config_->set_integer_value (this->arrays_key_,
+ "count",
+ 0);
+
+ this->config_->set_integer_value (this->sequences_key_,
+ "count",
+ 0);
+ }
+
+ // The following are done because we are also a Container.
+ this->repo_ = this;
+ this->section_key_ = this->root_key_;
+
+ this->config_->set_string_value (this->section_key_,
+ "absolute_name",
+ "");
+
+ this->config_->set_string_value (this->section_key_,
+ "id",
+ ""); // required by spec
+
+ this->config_->set_string_value (this->section_key_,
+ "name",
+ "");
+
+ this->config_->set_integer_value (this->section_key_,
+ "def_kind",
+ CORBA::dk_Repository);
+}
+
+TAO_Repository_i::~TAO_Repository_i (void)
+{
+ delete this->servant_factory_;
+ delete this->lock_;
+}
+
+CORBA::DefinitionKind
+TAO_Repository_i::def_kind (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::dk_Repository;
+}
+
+void
+TAO_Repository_i::destroy (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_THROW (CORBA::BAD_INV_ORDER (2, CORBA::COMPLETED_NO));
+}
+
+CORBA_Contained_ptr
+TAO_Repository_i::lookup_id (const char *search_id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA_Contained::_nil ());
+
+ return this->lookup_id_i (search_id
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_Contained_ptr
+TAO_Repository_i::lookup_id_i (const char *search_id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ if (ACE_OS::strcmp (search_id, "IDL:omg.org/CORBA/Object:1.0") == 0
+ || ACE_OS::strcmp (search_id, "IDL:omg.org/CORBA/ValueBase:1.0") == 0)
+ {
+ return CORBA_Contained::_nil ();
+ }
+
+ ACE_TString path;
+ if (this->config_->get_string_value (this->repo_ids_key_,
+ search_id,
+ path)
+ != 0)
+ {
+ return CORBA_Contained::_nil ();
+ }
+
+ ACE_Configuration_Section_Key key;
+ this->config_->expand_path (this->root_key_,
+ path,
+ key);
+
+ u_int kind = 0;
+ this->config_->get_integer_value (key,
+ "def_kind",
+ kind);
+
+ CORBA::DefinitionKind def_kind =
+ ACE_static_cast (CORBA::DefinitionKind, kind);
+
+ CORBA::Object_var obj =
+ this->servant_factory_->create_objref (def_kind,
+ path.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_Contained::_nil ());
+
+ return CORBA_Contained::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA::TypeCode_ptr
+TAO_Repository_i::get_canonical_typecode (CORBA::TypeCode_ptr tc
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->get_canonical_typecode_i (tc
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA::TypeCode_ptr
+TAO_Repository_i::get_canonical_typecode_i (CORBA::TypeCode_ptr tc
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA::TCKind kind = tc->kind (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA::TypeCode::_nil ());
+
+ switch (kind)
+ {
+ // For all the TCKinds not covered below, no change is needed.
+ default:
+ return CORBA::TypeCode::_duplicate (tc);
+ case CORBA::tk_fixed:
+ ACE_THROW_RETURN (CORBA::NO_IMPLEMENT (), CORBA::TypeCode::_nil ());
+ case CORBA::tk_array:
+ {
+ CORBA::ULong length = tc->length (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA::TypeCode::_nil ());
+
+ CORBA::TypeCode_var ctype = tc->content_type (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA::TypeCode::_nil ());
+
+ CORBA::TypeCode_var canon_ctype =
+ this->get_canonical_typecode_i (ctype.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->tc_factory ()->create_array_tc (length,
+ canon_ctype.in ()
+ ACE_ENV_ARG_PARAMETER);
+ }
+ case CORBA::tk_sequence:
+ {
+ CORBA::ULong length = tc->length (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA::TypeCode::_nil ());
+
+ CORBA::TypeCode_var ctype = tc->content_type (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA::TypeCode::_nil ());
+
+ CORBA::TypeCode_var canon_ctype =
+ this->get_canonical_typecode_i (ctype.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->tc_factory ()->create_sequence_tc (length,
+ canon_ctype.in ()
+ ACE_ENV_ARG_PARAMETER);
+ }
+ case CORBA::tk_alias:
+ case CORBA::tk_objref:
+ case CORBA::tk_struct:
+ case CORBA::tk_union:
+ case CORBA::tk_enum:
+ case CORBA::tk_except:
+ case CORBA::tk_value:
+ case CORBA::tk_value_box:
+ case CORBA::tk_native:
+ case CORBA::tk_abstract_interface:
+ case CORBA::tk_component:
+ case CORBA::tk_home:
+ {
+ CORBA::String_var id = tc->id (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA::TypeCode::_nil ());
+
+ ACE_TString path;
+ int status =
+ this->config ()->get_string_value (this->repo_ids_key (),
+ id.in (),
+ path);
+
+ // TODO - something in case the repo id is an empty string,
+ // or if it is not found in this repository
+ if (status != 0)
+ return CORBA::TypeCode::_nil ();
+
+ ACE_Configuration_Section_Key key;
+ this->config ()->expand_path (this->root_key (),
+ path,
+ key,
+ 0);
+
+ // An ExceptionDef is not an IDLType.
+ if (kind == CORBA::tk_except)
+ {
+ TAO_ExceptionDef_i impl (this,
+ key);
+
+ return impl.type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ }
+ else
+ {
+ TAO_IDLType_i *impl =
+ this->servant_factory ()->create_idltype (key
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA::TypeCode::_nil ());
+
+ auto_ptr<TAO_IDLType_i> safety (impl);
+
+ return impl->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ }
+ }
+ }
+}
+
+CORBA_PrimitiveDef_ptr
+TAO_Repository_i::get_primitive (CORBA::PrimitiveKind kind
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString obj_id ("pkinds\\");
+
+ obj_id += this->pkind_to_string (kind);
+
+ CORBA::Object_var obj =
+ this->servant_factory_->create_objref (CORBA::dk_Primitive,
+ obj_id.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_PrimitiveDef::_nil ());
+
+ return CORBA_PrimitiveDef::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_StringDef_ptr
+TAO_Repository_i::create_string (CORBA::ULong bound
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD_RETURN (CORBA_StringDef::_nil ());
+
+ return this->create_string_i (bound
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_StringDef_ptr
+TAO_Repository_i::create_string_i (CORBA::ULong bound
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ u_int count = 0;
+ this->config_->get_integer_value (this->strings_key_,
+ "count",
+ count);
+
+ CORBA::String_var name = this->int_to_string (count++);
+ this->config_->set_integer_value (this->strings_key_,
+ "count",
+ count);
+
+ // Make new database entry.
+ ACE_Configuration_Section_Key new_key;
+ this->config_->open_section (this->strings_key_,
+ name.in (),
+ 1,
+ new_key);
+
+ this->config_->set_integer_value (new_key,
+ "bound",
+ bound);
+
+ this->config_->set_integer_value (new_key,
+ "def_kind",
+ CORBA::dk_String);
+
+ this->config_->set_string_value (new_key,
+ "name",
+ name.in ());
+
+ // Create the object reference.
+ ACE_TString obj_id ("strings\\");
+ obj_id += name.in ();
+
+ CORBA::Object_var obj =
+ this->servant_factory_->create_objref (CORBA::dk_String,
+ obj_id.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_StringDef::_nil ());
+
+ return CORBA_StringDef::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_WstringDef_ptr
+TAO_Repository_i::create_wstring (CORBA::ULong bound
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD_RETURN (CORBA_WstringDef::_nil ());
+
+ return this->create_wstring_i (bound
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_WstringDef_ptr
+TAO_Repository_i::create_wstring_i (CORBA::ULong bound
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ u_int count = 0;
+ this->config_->get_integer_value (this->wstrings_key_,
+ "count",
+ count);
+
+ CORBA::String_var name = this->int_to_string (count++);
+ this->config_->set_integer_value (this->wstrings_key_,
+ "count",
+ count);
+
+ // Make new database entry.
+ ACE_Configuration_Section_Key new_key;
+ this->config_->open_section (this->wstrings_key_,
+ name.in (),
+ 1,
+ new_key);
+
+ this->config_->set_integer_value (new_key,
+ "bound",
+ bound);
+
+ this->config_->set_integer_value (new_key,
+ "def_kind",
+ CORBA::dk_Wstring);
+
+ this->config_->set_string_value (new_key,
+ "name",
+ name.in ());
+
+ // Create the object reference.
+ ACE_TString obj_id ("wstrings\\");
+ obj_id += name.in ();
+
+ CORBA::Object_var obj =
+ this->servant_factory_->create_objref (CORBA::dk_Wstring,
+ obj_id.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_WstringDef::_nil ());
+
+ return CORBA_WstringDef::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_SequenceDef_ptr
+TAO_Repository_i::create_sequence (CORBA::ULong bound,
+ CORBA_IDLType_ptr element_type
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD_RETURN (CORBA_SequenceDef::_nil ());
+
+ return this->create_sequence_i (bound,
+ element_type
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_SequenceDef_ptr
+TAO_Repository_i::create_sequence_i (CORBA::ULong bound,
+ CORBA_IDLType_ptr element_type
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ PortableServer::ObjectId_var oid =
+ this->ir_poa_->reference_to_id (element_type
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_SequenceDef::_nil ());
+
+ CORBA::String_var element_path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ u_int count = 0;
+ this->config_->get_integer_value (this->sequences_key_,
+ "count",
+ count);
+
+ CORBA::String_var name = this->int_to_string (count++);
+ this->config_->set_integer_value (this->sequences_key_,
+ "count",
+ count);
+
+ // Make new database entry.
+ ACE_Configuration_Section_Key new_key;
+ this->config_->open_section (this->sequences_key_,
+ name.in (),
+ 1,
+ new_key);
+
+ // Set the bound attribute.
+ this->config_->set_integer_value (new_key,
+ "bound",
+ bound);
+
+ // Set the def_kind attribute.
+ this->config_->set_integer_value (new_key,
+ "def_kind",
+ CORBA::dk_Sequence);
+
+ // Set the "name" for destroy to use.
+ this->config_->set_string_value (new_key,
+ "name",
+ name.in ());
+
+ // To get key to element type.
+ this->config_->set_string_value (new_key,
+ "element_path",
+ element_path.in ());
+
+ // Create the object reference.
+ ACE_TString obj_id ("sequences\\");
+ obj_id += name.in ();
+
+ CORBA::Object_var obj =
+ this->servant_factory_->create_objref (CORBA::dk_Sequence,
+ obj_id.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_SequenceDef::_nil ());
+
+ return CORBA_SequenceDef::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_ArrayDef_ptr
+TAO_Repository_i::create_array (CORBA::ULong length,
+ CORBA_IDLType_ptr element_type
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD_RETURN (CORBA_ArrayDef::_nil ());
+
+ return this->create_array_i (length,
+ element_type
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_ArrayDef_ptr
+TAO_Repository_i::create_array_i (CORBA::ULong length,
+ CORBA_IDLType_ptr element_type
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ PortableServer::ObjectId_var oid =
+ this->ir_poa_->reference_to_id (element_type
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_ArrayDef::_nil ());
+
+ CORBA::String_var element_path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ u_int count = 0;
+ this->config_->get_integer_value (this->arrays_key_,
+ "count",
+ count);
+
+ CORBA::String_var name = this->int_to_string (count++);
+ this->config_->set_integer_value (this->arrays_key_,
+ "count",
+ count);
+
+ // Make new database entry.
+ ACE_Configuration_Section_Key new_key;
+ this->config_->open_section (this->arrays_key_,
+ name.in (),
+ 1,
+ new_key);
+
+ // Set the length attribute.
+ this->config_->set_integer_value (new_key,
+ "length",
+ length);
+
+ // Set the def_kind attribute.
+ this->config_->set_integer_value (new_key,
+ "def_kind",
+ CORBA::dk_Array);
+
+ // Set the "name" for destroy to use.
+ this->config_->set_string_value (new_key,
+ "name",
+ name.in ());
+
+ // To get key to element type.
+ this->config_->set_string_value (new_key,
+ "element_path",
+ element_path.in ());
+
+ // Create the object reference.
+ ACE_TString obj_id ("arrays\\");
+ obj_id += name.in ();
+
+ CORBA::Object_var obj =
+ this->servant_factory_->create_objref (CORBA::dk_Array,
+ obj_id.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_ArrayDef::_nil ());
+
+ return CORBA_ArrayDef::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_FixedDef_ptr
+TAO_Repository_i::create_fixed (CORBA::UShort digits,
+ CORBA::Short scale
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD_RETURN (CORBA_FixedDef::_nil ());
+
+ return this->create_fixed_i (digits,
+ scale
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_FixedDef_ptr
+TAO_Repository_i::create_fixed_i (CORBA::UShort /* digits */,
+ CORBA::Short /* scale */
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_THROW_RETURN (CORBA::NO_IMPLEMENT (), CORBA_FixedDef::_nil ());
+}
+
+PortableServer::POA_ptr
+TAO_Repository_i::ir_poa (void) const
+{
+ return this->ir_poa_;
+}
+
+ACE_Configuration *
+TAO_Repository_i::config (void) const
+{
+ return this->config_;
+}
+
+IFR_Servant_Factory *
+TAO_Repository_i::servant_factory (void) const
+{
+ return this->servant_factory_;
+}
+
+CORBA::TypeCodeFactory_ptr
+TAO_Repository_i::tc_factory (void) const
+{
+ return this->tc_factory_.in ();
+}
+
+CORBA_Repository_ptr
+TAO_Repository_i::repo_objref (void) const
+{
+ return CORBA_Repository::_duplicate (this->repo_objref_);
+}
+
+void
+TAO_Repository_i::repo_objref (CORBA_Repository_ptr objref)
+{
+ this->repo_objref_ = objref;
+}
+
+ACE_Configuration_Section_Key
+TAO_Repository_i::root_key (void) const
+{
+ return this->root_key_;
+}
+
+ACE_Configuration_Section_Key
+TAO_Repository_i::repo_ids_key (void) const
+{
+ return this->repo_ids_key_;
+}
+
+ACE_Configuration_Section_Key
+TAO_Repository_i::pkinds_key (void) const
+{
+ return this->pkinds_key_;
+}
+
+ACE_Configuration_Section_Key
+TAO_Repository_i::strings_key (void) const
+{
+ return this->strings_key_;
+}
+
+ACE_Configuration_Section_Key
+TAO_Repository_i::wstrings_key (void) const
+{
+ return this->wstrings_key_;
+}
+
+ACE_Configuration_Section_Key
+TAO_Repository_i::fixeds_key (void) const
+{
+ return this->fixeds_key_;
+}
+
+ACE_Configuration_Section_Key
+TAO_Repository_i::arrays_key (void) const
+{
+ return this->arrays_key_;
+}
+
+ACE_Configuration_Section_Key
+TAO_Repository_i::sequences_key (void) const
+{
+ return this->sequences_key_;
+}
+
+const char *
+TAO_Repository_i::extension (void) const
+{
+ return this->extension_.in ();
+}
+
+ACE_Lock &
+TAO_Repository_i::lock (void) const
+{
+ return *this->lock_;
+}
+
+const char *TAO_Repository_i::TAO_IFR_primitive_kinds[] =
+ {
+ "pk_null",
+ "pk_void",
+ "pk_short",
+ "pk_long",
+ "pk_ushort",
+ "pk_ulong",
+ "pk_float",
+ "pk_double",
+ "pk_boolean",
+ "pk_char",
+ "pk_octet",
+ "pk_any",
+ "pk_TypeCode",
+ "pk_Principal",
+ "pk_string",
+ "pk_objref",
+ "pk_longlong",
+ "pk_ulonglong",
+ "pk_longdouble",
+ "pk_wchar",
+ "pk_wstring",
+ "pk_value_base"
+ };
+
+const char *
+TAO_Repository_i::pkind_to_string (CORBA::PrimitiveKind pkind) const
+{
+ return TAO_Repository_i::TAO_IFR_primitive_kinds[pkind];
+}
+
+u_int
+TAO_Repository_i::num_pkinds (void) const
+{
+ return sizeof (TAO_Repository_i::TAO_IFR_primitive_kinds) / sizeof (char*);
+}
+
+void
+TAO_Repository_i::shutdown (void)
+{
+ this->orb_->shutdown (0);
+}
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/Repository_i.h b/TAO/orbsvcs/orbsvcs/IFRService/Repository_i.h
new file mode 100644
index 00000000000..218d99849ec
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/Repository_i.h
@@ -0,0 +1,290 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// Repository_i.h
+//
+// = DESCRIPTION
+// Repository servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef REPOSITORY_I_H
+#define REPOSITORY_I_H
+
+#include "Container_i.h"
+#include "ifr_service_export.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 */
+
+#include "IFR_macro.h"
+#include "tao/TypeCodeFactory/TypeCodeFactory_Loader.h"
+#include "tao/CORBA_String.h"
+
+class IFR_Servant_Factory;
+
+class TAO_IFRService_Export TAO_Repository_i : public virtual TAO_Container_i
+{
+ // = TITLE
+ // TAO_Repository_i
+ //
+ // = DESCRIPTION
+ // Provides global access to the Interface Repository, but
+ // does not support access to information related to
+ // CORBA Components.
+ //
+public:
+ TAO_Repository_i (CORBA::ORB_ptr orb,
+ PortableServer::POA_ptr poa,
+ ACE_Configuration *config);
+ // Constructor.
+
+ virtual ~TAO_Repository_i (void);
+ // Destructor.
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Accessor for the readonly attribute.
+
+ virtual void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // May not be called on a repository - raises BAD_INV_ORDER.
+
+ virtual CORBA_Contained_ptr lookup_id (
+ const char *search_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_Contained_ptr lookup_id_i (
+ const char *search_id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::TypeCode_ptr get_canonical_typecode (
+ CORBA::TypeCode_ptr tc
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA::TypeCode_ptr get_canonical_typecode_i (
+ CORBA::TypeCode_ptr tc
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::PrimitiveDef_ptr get_primitive (
+ CORBA::PrimitiveKind kind
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC (( CORBA::SystemException));
+ // No locking necessary because the database is not
+ // accessed.
+
+ virtual CORBA_StringDef_ptr create_string (
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_StringDef_ptr create_string_i (
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_WstringDef_ptr create_wstring (
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_WstringDef_ptr create_wstring_i (
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_SequenceDef_ptr create_sequence (
+ CORBA::ULong bound,
+ CORBA_IDLType_ptr element_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC (( CORBA::SystemException));
+
+ CORBA_SequenceDef_ptr create_sequence_i (
+ CORBA::ULong bound,
+ CORBA_IDLType_ptr element_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC (( CORBA::SystemException));
+
+ virtual CORBA_ArrayDef_ptr create_array (
+ CORBA::ULong length,
+ CORBA_IDLType_ptr element_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_ArrayDef_ptr create_array_i (
+ CORBA::ULong length,
+ CORBA_IDLType_ptr element_type
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_FixedDef_ptr create_fixed (
+ CORBA::UShort digits,
+ CORBA::Short scale
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_FixedDef_ptr create_fixed_i (
+ CORBA::UShort digits,
+ CORBA::Short scale
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ PortableServer::POA_ptr ir_poa (void) const;
+ // Accessor for the POA that creates the servants.
+
+ ACE_Configuration *config (void) const;
+ // Accessor for the ACE_Configuration database.
+
+ IFR_Servant_Factory *servant_factory (void) const;
+ // Accessor for the servant factory.
+
+ CORBA::TypeCodeFactory_ptr tc_factory (void) const;
+ // Accessor for the Typecode factory.
+
+ CORBA_Repository_ptr repo_objref (void) const;
+ void repo_objref (CORBA_Repository_ptr objref);
+ // Accessor/mutator for our object reference.
+
+ ACE_Configuration_Section_Key root_key (void) const;
+ // Accessor for the root key for all IR objects.
+
+ ACE_Configuration_Section_Key repo_ids_key (void) const;
+ // Accessor for the repository ids root key.
+
+ ACE_Configuration_Section_Key pkinds_key (void) const;
+ // Accessor for the primitive kinds section.
+
+ ACE_Configuration_Section_Key strings_key (void) const;
+ // Accessor for the bounded strings section.
+
+ ACE_Configuration_Section_Key wstrings_key (void) const;
+ // Accessor for the bounded wstrings section.
+
+ ACE_Configuration_Section_Key fixeds_key (void) const;
+ // Accessor for the fixed types section.
+
+ ACE_Configuration_Section_Key arrays_key (void) const;
+ // Accessor for the anonymous arrays section.
+
+ ACE_Configuration_Section_Key sequences_key (void) const;
+ // Accessor for the anonymous sequences section.
+
+ const char *extension (void) const;
+ // Accessor for the name extension string.
+
+ ACE_Lock &lock (void) const;
+ // Repo lock.
+
+ void shutdown (void);
+ // Used ONLY with Purify, for memory leak checking.
+ // A call to this can be temporariily appended to the
+ // destroy() method of the last thing to be destroyed
+ // by the test code.
+
+protected:
+ CORBA::ORB_ptr orb_;
+ // Reference to our ORB.
+
+ PortableServer::POA_ptr ir_poa_;
+ // Reference to the POA that creates the servants.
+
+ ACE_Configuration *config_;
+ // Our ACE_Configuration database.
+
+ IFR_Servant_Factory *servant_factory_;
+ // Creates _i and _tie instances.
+
+ CORBA::TypeCodeFactory_var tc_factory_;
+ // Our Typecode factory.
+
+ CORBA_Repository_ptr repo_objref_;
+ // The object reference of this servant.
+
+ ACE_Configuration_Section_Key root_key_;
+ // Root of all IR objects.
+
+ ACE_Configuration_Section_Key repo_ids_key_;
+ // Flat section of Interface Repository ids.
+
+ ACE_Configuration_Section_Key pkinds_key_;
+ // Section holding the primitive kinds.
+
+ ACE_Configuration_Section_Key strings_key_;
+ // Section holding the bounded strings.
+
+ ACE_Configuration_Section_Key wstrings_key_;
+ // Section holding the bounded wstrings.
+
+ ACE_Configuration_Section_Key fixeds_key_;
+ // Section holding the fixed types.
+
+ ACE_Configuration_Section_Key arrays_key_;
+ // Section holding the anonymous arrays.
+
+ ACE_Configuration_Section_Key sequences_key_;
+ // Section holding the anonymous sequences.
+
+ CORBA::String_var extension_;
+ // Added to names temporarily to avoid name clashes.
+
+ ACE_Lock *lock_;
+ // Lock.
+
+private:
+ static const char *TAO_IFR_primitive_kinds[];
+ // Set of strings corresponding to the CORBA_PrimitiveKind
+ // enum values.
+
+ const char *pkind_to_string (CORBA::PrimitiveKind pkind) const;
+ // Convert the enum value to the equivalent string.
+
+ u_int num_pkinds (void) const;
+ // Return the number of entries in the CORBA_PrimitiveKind enum.
+
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_REPOSITORY_I_H */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/SequenceDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/SequenceDef_i.cpp
new file mode 100644
index 00000000000..e84948ad205
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/SequenceDef_i.cpp
@@ -0,0 +1,286 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "SequenceDef_i.h"
+#include "Repository_i.h"
+#include "Servant_Factory.h"
+#include "ace/Auto_Ptr.h"
+
+ACE_RCSID(IFR_Service, SequenceDef_i, "$Id$")
+
+TAO_SequenceDef_i::TAO_SequenceDef_i (
+ TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key
+ )
+ : TAO_IRObject_i (repo, section_key),
+ TAO_IDLType_i (repo, section_key)
+{
+}
+
+TAO_SequenceDef_i::~TAO_SequenceDef_i (void)
+{
+}
+
+CORBA::DefinitionKind
+TAO_SequenceDef_i::def_kind (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::dk_Sequence;
+}
+
+void
+TAO_SequenceDef_i::destroy (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+void
+TAO_SequenceDef_i::destroy_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Only if it is (w)string, fixed, array or sequence.
+ this->destroy_element_type (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ ACE_TString name;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "name",
+ name);
+
+ this->repo_->config ()->remove_section (this->repo_->sequences_key (),
+ name.c_str (),
+ 0);
+}
+
+CORBA::TypeCode_ptr
+TAO_SequenceDef_i::type (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::TypeCode_ptr
+TAO_SequenceDef_i::type_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA::TypeCode_var element_typecode =
+ this->element_type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA::TypeCode::_nil ());
+
+ CORBA::ULong bound = this->bound_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->repo_->tc_factory ()->create_sequence_tc (
+ bound,
+ element_typecode.in ()
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+CORBA::ULong
+TAO_SequenceDef_i::bound (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->bound_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::ULong
+TAO_SequenceDef_i::bound_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ u_int bound = 0;
+ this->repo_->config ()->get_integer_value (this->section_key_,
+ "bound",
+ bound);
+
+ return ACE_static_cast (CORBA::ULong, bound);
+}
+
+void
+TAO_SequenceDef_i::bound (CORBA::ULong bound
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->bound_i (bound
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_SequenceDef_i::bound_i (CORBA::ULong bound
+ ACE_ENV_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ this->repo_->config ()->set_integer_value (this->section_key_,
+ "bound",
+ bound);
+}
+
+CORBA::TypeCode_ptr
+TAO_SequenceDef_i::element_type (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->element_type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::TypeCode_ptr
+TAO_SequenceDef_i::element_type_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString element_path;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "element_path",
+ element_path);
+
+ ACE_Configuration_Section_Key element_key;
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ element_path,
+ element_key,
+ 0);
+
+ TAO_IDLType_i *impl =
+ this->repo_->servant_factory ()->create_idltype (element_key
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA::TypeCode::_nil ());
+
+ auto_ptr<TAO_IDLType_i> safety (impl);
+
+ return impl->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_IDLType_ptr
+TAO_SequenceDef_i::element_type_def (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA_IDLType::_nil ());
+
+ return this->element_type_def_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_IDLType_ptr
+TAO_SequenceDef_i::element_type_def_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString element_path;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "element_path",
+ element_path);
+
+ ACE_Configuration_Section_Key element_key;
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ element_path,
+ element_key,
+ 0);
+
+ u_int kind = 0;
+ this->repo_->config ()->get_integer_value (element_key,
+ "def_kind",
+ kind);
+
+ CORBA::DefinitionKind def_kind =
+ ACE_static_cast (CORBA::DefinitionKind, kind);
+
+ CORBA::Object_var obj =
+ this->repo_->servant_factory ()->create_objref (def_kind,
+ element_path.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_IDLType::_nil ());
+
+ return CORBA_IDLType::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_SequenceDef_i::element_type_def (CORBA_IDLType_ptr element_type_def
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->element_type_def_i (element_type_def
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_SequenceDef_i::element_type_def_i (CORBA_IDLType_ptr element_type_def
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ this->destroy_element_type (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ PortableServer::ObjectId_var oid =
+ this->repo_->ir_poa ()->reference_to_id (element_type_def
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ CORBA::String_var element_path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ this->repo_->config ()->set_string_value (this->section_key_,
+ "element_path",
+ element_path.in ());
+}
+
+void
+TAO_SequenceDef_i::destroy_element_type (
+ ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString element_path;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "element_path",
+ element_path);
+
+ ACE_Configuration_Section_Key element_key;
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ element_path,
+ element_key,
+ 0);
+
+ u_int kind = 0;
+ this->repo_->config ()->get_integer_value (element_key,
+ "def_kind",
+ kind);
+
+ CORBA::DefinitionKind def_kind =
+ ACE_static_cast (CORBA::DefinitionKind, kind);
+
+ switch (def_kind)
+ {
+ // These exist only as our elements, so the type should
+ // be destroyed when we are destroyed or our element type
+ // is mutated.
+ case CORBA::dk_String:
+ case CORBA::dk_Wstring:
+ case CORBA::dk_Fixed:
+ case CORBA::dk_Array:
+ case CORBA::dk_Sequence:
+ {
+ TAO_IDLType_i *impl =
+ this->repo_->servant_factory ()->create_idltype (element_key
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ auto_ptr<TAO_IDLType_i> safety (impl);
+
+ impl->destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ break;
+ }
+ default:
+ break;
+ }
+}
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/SequenceDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/SequenceDef_i.h
new file mode 100644
index 00000000000..4da903bffd3
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/SequenceDef_i.h
@@ -0,0 +1,150 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// SequenceDef_i.h
+//
+// = DESCRIPTION
+// SequenceDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef SEQUENCEDEF_I_H
+#define SEQUENCEDEF_I_H
+
+#include "IDLType_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_IFRService_Export TAO_SequenceDef_i : public virtual TAO_IDLType_i
+{
+ // = TITLE
+ // TAO_SequenceDef_i
+ //
+ // = DESCRIPTION
+ // Represents an IDL sequence type.
+ //
+public:
+ TAO_SequenceDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor
+
+ virtual ~TAO_SequenceDef_i (void);
+ // Destructor
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Return our definition kind.
+
+ virtual void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Remove the repository entry.
+
+ virtual void destroy_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From IDLType_i's pure virtual function.
+
+ virtual CORBA::TypeCode_ptr type_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From IDLType_i's pure virtual function.
+
+ virtual CORBA::ULong bound (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA::ULong bound_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void bound (
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void bound_i (
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::TypeCode_ptr element_type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA::TypeCode_ptr element_type_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_IDLType_ptr element_type_def (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_IDLType_ptr element_type_def_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void element_type_def (
+ CORBA_IDLType_ptr element_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void element_type_def_i (
+ CORBA_IDLType_ptr element_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+private:
+ void destroy_element_type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Destroys an anonymous non-primitive element type.
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_SEQUENCEDEF_I_H */
+
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/Servant_Factory.cpp b/TAO/orbsvcs/orbsvcs/IFRService/Servant_Factory.cpp
new file mode 100644
index 00000000000..64cd9fb8ff7
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/Servant_Factory.cpp
@@ -0,0 +1,1492 @@
+// $Id$
+
+#include "Servant_Factory.h"
+#include "concrete_classes.h"
+#include "IFR_ComponentsS.h"
+#include "ace/Auto_Ptr.h"
+
+ACE_RCSID(IFR_Service, Servant_Factory, "$Id$")
+
+IFR_Servant_Factory::IFR_Servant_Factory (TAO_Repository_i *repo)
+ : repo_ (repo)
+{
+}
+
+TAO_IDLType_i *
+IFR_Servant_Factory::create_idltype (
+ ACE_Configuration_Section_Key servant_key
+ ACE_ENV_ARG_DECL
+ )
+{
+ u_int def_kind = 0;
+ this->repo_->config ()->get_integer_value (servant_key,
+ "def_kind",
+ def_kind);
+
+ switch (ACE_static_cast (CORBA::DefinitionKind, def_kind))
+ {
+ case CORBA::dk_Interface:
+ {
+ TAO_InterfaceDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_InterfaceDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_AbstractInterface:
+ {
+ TAO_AbstractInterfaceDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_AbstractInterfaceDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_LocalInterface:
+ {
+ TAO_LocalInterfaceDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_LocalInterfaceDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Alias:
+ {
+ TAO_AliasDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_AliasDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Struct:
+ {
+ TAO_StructDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_StructDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Union:
+ {
+ TAO_UnionDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_UnionDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Enum:
+ {
+ TAO_EnumDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_EnumDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Primitive:
+ {
+ TAO_PrimitiveDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_PrimitiveDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_String:
+ {
+ TAO_StringDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_StringDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Sequence:
+ {
+ TAO_SequenceDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_SequenceDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Array:
+ {
+ TAO_ArrayDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_ArrayDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Wstring:
+ {
+ TAO_WstringDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_WstringDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Fixed:
+ {
+ TAO_FixedDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_FixedDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Value:
+ {
+ TAO_ValueDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_ValueDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_ValueBox:
+ {
+ TAO_ValueBoxDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_ValueBoxDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Native:
+ {
+ TAO_NativeDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_NativeDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Component:
+ {
+ TAO_ComponentDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_ComponentDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Home:
+ {
+ TAO_HomeDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_HomeDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ default:
+ return 0;
+ }
+}
+
+TAO_Contained_i *
+IFR_Servant_Factory::create_contained (
+ ACE_Configuration_Section_Key servant_key
+ ACE_ENV_ARG_DECL
+ )
+{
+ u_int def_kind = 0;
+ this->repo_->config ()->get_integer_value (servant_key,
+ "def_kind",
+ def_kind);
+
+ switch (ACE_static_cast (CORBA::DefinitionKind, def_kind))
+ {
+ case CORBA::dk_Interface:
+ {
+ TAO_InterfaceDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_InterfaceDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_AbstractInterface:
+ {
+ TAO_AbstractInterfaceDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_AbstractInterfaceDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_LocalInterface:
+ {
+ TAO_LocalInterfaceDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_LocalInterfaceDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Alias:
+ {
+ TAO_AliasDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_AliasDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Struct:
+ {
+ TAO_StructDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_StructDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Union:
+ {
+ TAO_UnionDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_UnionDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Enum:
+ {
+ TAO_EnumDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_EnumDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Module:
+ {
+ TAO_ModuleDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_ModuleDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Exception:
+ {
+ TAO_ExceptionDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_ExceptionDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Constant:
+ {
+ TAO_ConstantDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_ConstantDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_ValueMember:
+ {
+ TAO_ValueMemberDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_ValueMemberDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Uses:
+ {
+ TAO_UsesDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_UsesDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Provides:
+ {
+ TAO_ProvidesDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_ProvidesDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_PrimaryKey:
+ {
+ TAO_PrimaryKeyDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_PrimaryKeyDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Emits:
+ {
+ TAO_EmitsDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_EmitsDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Publishes:
+ {
+ TAO_PublishesDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_PublishesDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Consumes:
+ {
+ TAO_ConsumesDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_ConsumesDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Attribute:
+ {
+ TAO_AttributeDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_AttributeDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Operation:
+ {
+ TAO_OperationDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_OperationDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Value:
+ {
+ TAO_ValueDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_ValueDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_ValueBox:
+ {
+ TAO_ValueBoxDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_ValueBoxDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Native:
+ {
+ TAO_NativeDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_NativeDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Component:
+ {
+ TAO_ComponentDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_ComponentDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Home:
+ {
+ TAO_HomeDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_HomeDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ default:
+ return 0;
+ }
+}
+
+TAO_Container_i *
+IFR_Servant_Factory::create_container (
+ ACE_Configuration_Section_Key servant_key
+ ACE_ENV_ARG_DECL
+ )
+{
+ u_int def_kind = 0;
+ this->repo_->config ()->get_integer_value (servant_key,
+ "def_kind",
+ def_kind);
+
+ switch (ACE_static_cast (CORBA::DefinitionKind, def_kind))
+ {
+ case CORBA::dk_Interface:
+ {
+ TAO_InterfaceDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_InterfaceDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_AbstractInterface:
+ {
+ TAO_AbstractInterfaceDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_AbstractInterfaceDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_LocalInterface:
+ {
+ TAO_LocalInterfaceDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_LocalInterfaceDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Struct:
+ {
+ TAO_StructDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_StructDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Union:
+ {
+ TAO_UnionDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_UnionDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Module:
+ {
+ TAO_ModuleDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_ModuleDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Exception:
+ {
+ TAO_ExceptionDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_ExceptionDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Value:
+ {
+ TAO_ValueDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_ValueDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Component:
+ {
+ TAO_ComponentDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_ComponentDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ case CORBA::dk_Home:
+ {
+ TAO_HomeDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_HomeDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ return impl;
+ }
+ default:
+ return 0;
+ }
+}
+
+PortableServer::Servant
+IFR_Servant_Factory::create_tie (
+ ACE_Configuration_Section_Key servant_key,
+ PortableServer::POA_ptr poa
+ ACE_ENV_ARG_DECL
+ )
+{
+ u_int def_kind = 0;
+ this->repo_->config ()->get_integer_value (servant_key,
+ "def_kind",
+ def_kind);
+
+ switch (ACE_static_cast (CORBA::DefinitionKind, def_kind))
+ {
+ case CORBA::dk_Attribute:
+ {
+ TAO_AttributeDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_AttributeDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_AttributeDef_i> safety (impl);
+
+ POA_CORBA_AttributeDef_tie<TAO_AttributeDef_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (impl_tie,
+ POA_CORBA_AttributeDef_tie<TAO_AttributeDef_i> (impl,
+ poa,
+ 1),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ safety.release ();
+ return impl_tie;
+ }
+ case CORBA::dk_Constant:
+ {
+ TAO_ConstantDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_ConstantDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_ConstantDef_i> safety (impl);
+
+ POA_CORBA_ConstantDef_tie<TAO_ConstantDef_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (impl_tie,
+ POA_CORBA_ConstantDef_tie<TAO_ConstantDef_i> (impl,
+ poa,
+ 1),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ safety.release ();
+ return impl_tie;
+ }
+ case CORBA::dk_Exception:
+ {
+ TAO_ExceptionDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_ExceptionDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_ExceptionDef_i> safety (impl);
+
+ POA_CORBA_ExceptionDef_tie<TAO_ExceptionDef_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (impl_tie,
+ POA_CORBA_ExceptionDef_tie<TAO_ExceptionDef_i> (impl,
+ poa,
+ 1),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ safety.release ();
+ return impl_tie;
+ }
+ case CORBA::dk_Interface:
+ {
+ TAO_InterfaceDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_InterfaceDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_InterfaceDef_i> safety (impl);
+
+ POA_CORBA_InterfaceDef_tie<TAO_InterfaceDef_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (impl_tie,
+ POA_CORBA_InterfaceDef_tie<TAO_InterfaceDef_i> (impl,
+ poa,
+ 1),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ safety.release ();
+ return impl_tie;
+ }
+ case CORBA::dk_AbstractInterface:
+ {
+ TAO_AbstractInterfaceDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_AbstractInterfaceDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_AbstractInterfaceDef_i> safety (impl);
+
+ POA_CORBA_AbstractInterfaceDef_tie<TAO_AbstractInterfaceDef_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (
+ impl_tie,
+ POA_CORBA_AbstractInterfaceDef_tie<TAO_AbstractInterfaceDef_i> (impl,
+ poa,
+ 1),
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK_RETURN (0);
+
+ safety.release ();
+ return impl_tie;
+ }
+ case CORBA::dk_LocalInterface:
+ {
+ TAO_LocalInterfaceDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_LocalInterfaceDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_LocalInterfaceDef_i> safety (impl);
+
+ POA_CORBA_LocalInterfaceDef_tie<TAO_LocalInterfaceDef_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (
+ impl_tie,
+ POA_CORBA_LocalInterfaceDef_tie<TAO_LocalInterfaceDef_i> (impl,
+ poa,
+ 1),
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK_RETURN (0);
+
+ safety.release ();
+ return impl_tie;
+ }
+ case CORBA::dk_Module:
+ {
+ TAO_ModuleDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_ModuleDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_ModuleDef_i> safety (impl);
+
+ POA_CORBA_ModuleDef_tie<TAO_ModuleDef_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (impl_tie,
+ POA_CORBA_ModuleDef_tie<TAO_ModuleDef_i> (impl,
+ poa,
+ 1),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ safety.release ();
+ return impl_tie;
+ }
+ case CORBA::dk_Operation:
+ {
+ TAO_OperationDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_OperationDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_OperationDef_i> safety (impl);
+
+ POA_CORBA_OperationDef_tie<TAO_OperationDef_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (impl_tie,
+ POA_CORBA_OperationDef_tie<TAO_OperationDef_i> (impl,
+ poa,
+ 1),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ safety.release ();
+ return impl_tie;
+ }
+ case CORBA::dk_Alias:
+ {
+ TAO_AliasDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_AliasDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_AliasDef_i> safety (impl);
+
+ POA_CORBA_AliasDef_tie<TAO_AliasDef_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (impl_tie,
+ POA_CORBA_AliasDef_tie<TAO_AliasDef_i> (impl,
+ poa,
+ 1),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ safety.release ();
+ return impl_tie;
+ }
+ case CORBA::dk_Struct:
+ {
+ TAO_StructDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_StructDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_StructDef_i> safety (impl);
+
+ POA_CORBA_StructDef_tie<TAO_StructDef_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (impl_tie,
+ POA_CORBA_StructDef_tie<TAO_StructDef_i> (impl,
+ poa,
+ 1),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ safety.release ();
+ return impl_tie;
+ }
+ case CORBA::dk_Union:
+ {
+ TAO_UnionDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_UnionDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_UnionDef_i> safety (impl);
+
+ POA_CORBA_UnionDef_tie<TAO_UnionDef_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (impl_tie,
+ POA_CORBA_UnionDef_tie<TAO_UnionDef_i> (impl,
+ poa,
+ 1),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ safety.release ();
+ return impl_tie;
+ }
+ case CORBA::dk_Enum:
+ {
+ TAO_EnumDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_EnumDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_EnumDef_i> safety (impl);
+
+ POA_CORBA_EnumDef_tie<TAO_EnumDef_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (impl_tie,
+ POA_CORBA_EnumDef_tie<TAO_EnumDef_i> (impl,
+ poa,
+ 1),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ safety.release ();
+ return impl_tie;
+ }
+ case CORBA::dk_Primitive:
+ {
+ TAO_PrimitiveDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_PrimitiveDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_PrimitiveDef_i> safety (impl);
+
+ POA_CORBA_PrimitiveDef_tie<TAO_PrimitiveDef_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (impl_tie,
+ POA_CORBA_PrimitiveDef_tie<TAO_PrimitiveDef_i> (impl,
+ poa,
+ 1),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ safety.release ();
+ return impl_tie;
+ }
+ case CORBA::dk_String:
+ {
+ TAO_StringDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_StringDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_StringDef_i> safety (impl);
+
+ POA_CORBA_StringDef_tie<TAO_StringDef_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (impl_tie,
+ POA_CORBA_StringDef_tie<TAO_StringDef_i> (impl,
+ poa,
+ 1),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ safety.release ();
+ return impl_tie;
+ }
+ case CORBA::dk_Sequence:
+ {
+ TAO_SequenceDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_SequenceDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_SequenceDef_i> safety (impl);
+
+ POA_CORBA_SequenceDef_tie<TAO_SequenceDef_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (impl_tie,
+ POA_CORBA_SequenceDef_tie<TAO_SequenceDef_i> (impl,
+ poa,
+ 1),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ safety.release ();
+ return impl_tie;
+ }
+ case CORBA::dk_Array:
+ {
+ TAO_ArrayDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_ArrayDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_ArrayDef_i> safety (impl);
+
+ POA_CORBA_ArrayDef_tie<TAO_ArrayDef_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (impl_tie,
+ POA_CORBA_ArrayDef_tie<TAO_ArrayDef_i> (impl,
+ poa,
+ 1),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ safety.release ();
+ return impl_tie;
+ }
+ case CORBA::dk_Wstring:
+ {
+ TAO_WstringDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_WstringDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_WstringDef_i> safety (impl);
+
+ POA_CORBA_WstringDef_tie<TAO_WstringDef_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (impl_tie,
+ POA_CORBA_WstringDef_tie<TAO_WstringDef_i> (impl,
+ poa,
+ 1),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ safety.release ();
+ return impl_tie;
+ }
+ case CORBA::dk_Fixed:
+ {
+ TAO_FixedDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_FixedDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_FixedDef_i> safety (impl);
+
+ POA_CORBA_FixedDef_tie<TAO_FixedDef_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (impl_tie,
+ POA_CORBA_FixedDef_tie<TAO_FixedDef_i> (impl,
+ poa,
+ 1),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ safety.release ();
+ return impl_tie;
+ }
+ case CORBA::dk_Value:
+ {
+ TAO_ValueDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_ValueDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_ValueDef_i> safety (impl);
+
+ POA_CORBA_ValueDef_tie<TAO_ValueDef_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (impl_tie,
+ POA_CORBA_ValueDef_tie<TAO_ValueDef_i> (impl,
+ poa,
+ 1),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ safety.release ();
+ return impl_tie;
+ }
+ case CORBA::dk_ValueBox:
+ {
+ TAO_ValueBoxDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_ValueBoxDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_ValueBoxDef_i> safety (impl);
+
+ POA_CORBA_ValueBoxDef_tie<TAO_ValueBoxDef_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (impl_tie,
+ POA_CORBA_ValueBoxDef_tie<TAO_ValueBoxDef_i> (impl,
+ poa,
+ 1),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ safety.release ();
+ return impl_tie;
+ }
+ case CORBA::dk_ValueMember:
+ {
+ TAO_ValueMemberDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_ValueMemberDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_ValueMemberDef_i> safety (impl);
+
+ POA_CORBA_ValueMemberDef_tie<TAO_ValueMemberDef_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (
+ impl_tie,
+ POA_CORBA_ValueMemberDef_tie<TAO_ValueMemberDef_i> (impl,
+ poa,
+ 1),
+ CORBA::NO_MEMORY ()
+ );
+ ACE_CHECK_RETURN (0);
+
+ safety.release ();
+ return impl_tie;
+ }
+ case CORBA::dk_Native:
+ {
+ TAO_NativeDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_NativeDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_NativeDef_i> safety (impl);
+
+ POA_CORBA_NativeDef_tie<TAO_NativeDef_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (impl_tie,
+ POA_CORBA_NativeDef_tie<TAO_NativeDef_i> (impl,
+ poa,
+ 1),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ safety.release ();
+ return impl_tie;
+ }
+ case CORBA::dk_Component:
+ {
+ TAO_ComponentDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_ComponentDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_ComponentDef_i> safety (impl);
+
+ POA_IR::ComponentDef_tie<TAO_ComponentDef_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (impl_tie,
+ POA_IR::ComponentDef_tie<TAO_ComponentDef_i> (impl,
+ poa,
+ 1),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ safety.release ();
+ return impl_tie;
+ }
+ case CORBA::dk_Home:
+ {
+ TAO_HomeDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_HomeDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_HomeDef_i> safety (impl);
+
+ POA_IR::HomeDef_tie<TAO_HomeDef_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (impl_tie,
+ POA_IR::HomeDef_tie<TAO_HomeDef_i> (impl,
+ poa,
+ 1),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ safety.release ();
+ return impl_tie;
+ }
+ case CORBA::dk_Factory:
+ {
+ TAO_FactoryDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_FactoryDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_FactoryDef_i> safety (impl);
+
+ POA_IR::FactoryDef_tie<TAO_FactoryDef_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (impl_tie,
+ POA_IR::FactoryDef_tie<TAO_FactoryDef_i> (impl,
+ poa,
+ 1),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ safety.release ();
+ return impl_tie;
+ }
+ case CORBA::dk_Finder:
+ {
+ TAO_FinderDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_FinderDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_FinderDef_i> safety (impl);
+
+ POA_IR::FinderDef_tie<TAO_FinderDef_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (impl_tie,
+ POA_IR::FinderDef_tie<TAO_FinderDef_i> (impl,
+ poa,
+ 1),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ safety.release ();
+ return impl_tie;
+ }
+ case CORBA::dk_PrimaryKey:
+ {
+ TAO_PrimaryKeyDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_PrimaryKeyDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_PrimaryKeyDef_i> safety (impl);
+
+ POA_IR::PrimaryKeyDef_tie<TAO_PrimaryKeyDef_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (impl_tie,
+ POA_IR::PrimaryKeyDef_tie<TAO_PrimaryKeyDef_i> (impl,
+ poa,
+ 1),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ safety.release ();
+ return impl_tie;
+ }
+ case CORBA::dk_Emits:
+ {
+ TAO_EmitsDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_EmitsDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_EmitsDef_i> safety (impl);
+
+ POA_IR::EmitsDef_tie<TAO_EmitsDef_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (impl_tie,
+ POA_IR::EmitsDef_tie<TAO_EmitsDef_i> (impl,
+ poa,
+ 1),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ safety.release ();
+ return impl_tie;
+ }
+ case CORBA::dk_Publishes:
+ {
+ TAO_PublishesDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_PublishesDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_PublishesDef_i> safety (impl);
+
+ POA_IR::PublishesDef_tie<TAO_PublishesDef_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (impl_tie,
+ POA_IR::PublishesDef_tie<TAO_PublishesDef_i> (impl,
+ poa,
+ 1),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ safety.release ();
+ return impl_tie;
+ }
+ case CORBA::dk_Consumes:
+ {
+ TAO_ConsumesDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_ConsumesDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_ConsumesDef_i> safety (impl);
+
+ POA_IR::ConsumesDef_tie<TAO_ConsumesDef_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (impl_tie,
+ POA_IR::ConsumesDef_tie<TAO_ConsumesDef_i> (impl,
+ poa,
+ 1),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ safety.release ();
+ return impl_tie;
+ }
+ case CORBA::dk_Provides:
+ {
+ TAO_ProvidesDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_ProvidesDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_ProvidesDef_i> safety (impl);
+
+ POA_IR::ProvidesDef_tie<TAO_ProvidesDef_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (impl_tie,
+ POA_IR::ProvidesDef_tie<TAO_ProvidesDef_i> (impl,
+ poa,
+ 1),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ safety.release ();
+ return impl_tie;
+ }
+ case CORBA::dk_Uses:
+ {
+ TAO_UsesDef_i *impl = 0;
+ ACE_NEW_THROW_EX (impl,
+ TAO_UsesDef_i (this->repo_,
+ servant_key),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_UsesDef_i> safety (impl);
+
+ POA_IR::UsesDef_tie<TAO_UsesDef_i> *impl_tie = 0;
+ ACE_NEW_THROW_EX (impl_tie,
+ POA_IR::UsesDef_tie<TAO_UsesDef_i> (impl,
+ poa,
+ 1),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ safety.release ();
+ return impl_tie;
+ }
+ default:
+ ACE_THROW_RETURN (CORBA::OBJECT_NOT_EXIST (), 0);
+ }
+}
+
+CORBA::Object_ptr
+IFR_Servant_Factory::create_objref (CORBA::DefinitionKind def_kind,
+ const char *obj_id
+ ACE_ENV_ARG_DECL)
+{
+ PortableServer::ObjectId_var oid =
+ PortableServer::string_to_ObjectId (obj_id);
+
+ // Can plug in prefix tricks here.
+ ACE_TString repo_id ("IDL:omg.org/");
+
+ switch (def_kind)
+ {
+ case CORBA::dk_Attribute:
+ repo_id += "CORBA/AttributeDef:";
+ break;
+ case CORBA::dk_Constant:
+ repo_id += "CORBA/ConstantDef:";
+ break;
+ case CORBA::dk_Exception:
+ repo_id += "CORBA/ExceptionDef:";
+ break;
+ case CORBA::dk_Interface:
+ repo_id += "CORBA/InterfaceDef:";
+ break;
+ case CORBA::dk_AbstractInterface:
+ repo_id += "CORBA/AbstractInterfaceDef:";
+ break;
+ case CORBA::dk_LocalInterface:
+ repo_id += "CORBA/LocalInterfaceDef:";
+ break;
+ case CORBA::dk_Module:
+ repo_id += "CORBA/ModuleDef:";
+ break;
+ case CORBA::dk_Operation:
+ repo_id += "CORBA/OperationDef:";
+ break;
+ case CORBA::dk_Typedef:
+ repo_id += "CORBA/TypedefDef:";
+ break;
+ case CORBA::dk_Alias:
+ repo_id += "CORBA/AliasDef:";
+ break;
+ case CORBA::dk_Struct:
+ repo_id += "CORBA/StructDef:";
+ break;
+ case CORBA::dk_Union:
+ repo_id += "CORBA/UnionDef:";
+ break;
+ case CORBA::dk_Enum:
+ repo_id += "CORBA/EnumDef:";
+ break;
+ case CORBA::dk_Primitive:
+ repo_id += "CORBA/PrimitiveDef:";
+ break;
+ case CORBA::dk_String:
+ repo_id += "CORBA/StringDef:";
+ break;
+ case CORBA::dk_Sequence:
+ repo_id += "CORBA/SequenceDef:";
+ break;
+ case CORBA::dk_Array:
+ repo_id += "CORBA/ArrayDef:";
+ break;
+ case CORBA::dk_Wstring:
+ repo_id += "CORBA/WstringDef:";
+ break;
+ case CORBA::dk_Fixed:
+ repo_id += "CORBA/FixedDef:";
+ break;
+ case CORBA::dk_Value:
+ repo_id += "CORBA/ValueDef:";
+ break;
+ case CORBA::dk_ValueBox:
+ repo_id += "CORBA/ValueBoxDef:";
+ break;
+ case CORBA::dk_ValueMember:
+ repo_id += "CORBA/ValueMemberDef:";
+ break;
+ case CORBA::dk_Native:
+ repo_id += "CORBA/NativeDef:";
+ break;
+ case CORBA::dk_Component:
+ repo_id += "IR/ComponentDef:";
+ break;
+ case CORBA::dk_Home:
+ repo_id += "HomeDef:";
+ break;
+ case CORBA::dk_Factory:
+ repo_id += "IR/FactoryDef:";
+ break;
+ case CORBA::dk_Finder:
+ repo_id += "IR/FinderDef:";
+ break;
+ case CORBA::dk_PrimaryKey:
+ repo_id += "IR/PrimaryKeyDef:";
+ break;
+ case CORBA::dk_Emits:
+ repo_id += "IR/EmitsDef:";
+ break;
+ case CORBA::dk_Publishes:
+ repo_id += "IR/PublishesDef:";
+ break;
+ case CORBA::dk_Consumes:
+ repo_id += "IR/ConsumesDef:";
+ break;
+ case CORBA::dk_Provides:
+ repo_id += "IR/ProvidesDef:";
+ break;
+ case CORBA::dk_Uses:
+ repo_id += "IR/UsesDef:";
+ break;
+ default:
+ ACE_THROW_RETURN (CORBA::OBJECT_NOT_EXIST (), 0);
+ }
+
+ // Can plug in version tricks here.
+ repo_id += "1.0";
+
+ return this->repo_->ir_poa ()->create_reference_with_id (oid.in (),
+ repo_id.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+}
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/Servant_Factory.h b/TAO/orbsvcs/orbsvcs/IFRService/Servant_Factory.h
new file mode 100644
index 00000000000..1fdd9f8379b
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/Servant_Factory.h
@@ -0,0 +1,79 @@
+// $Id$
+
+//==========================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// Servant_Factory.h
+//
+// = DESCRIPTION
+// Defines a factory class to create the various forms and types
+// of servants.
+//
+// = AUTHOR
+// Jeff Parsons
+//
+//==========================================================================
+
+#ifndef IFR_SERVANT_FACTORY_H
+#define IFR_SERVANT_FACTORY_H
+
+#include "tao/PortableServer/PortableServerC.h"
+#include "ifr_service_export.h"
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+
+#include "ace/Configuration.h"
+
+class TAO_IDLType_i;
+class TAO_Contained_i;
+class TAO_Container_i;
+class TAO_Repository_i;
+
+class TAO_IFRService_Export IFR_Servant_Factory
+{
+ // = TITLE
+ // Servant_Factory
+ //
+ // = DESCRIPTION
+ // This class is used to create _i classes, _tie classes and
+ // object references.
+ //
+public:
+ IFR_Servant_Factory (TAO_Repository_i *repo);
+ // constructor
+
+ TAO_IDLType_i *create_idltype (ACE_Configuration_Section_Key key
+ ACE_ENV_ARG_DECL);
+ // For internal use - faster than creating an object reference and
+ // sending a request, and can call utility functions not in IDL.
+
+ TAO_Contained_i *create_contained (ACE_Configuration_Section_Key key
+ ACE_ENV_ARG_DECL);
+ // For internal use - faster than creating an object reference and
+ // sending a request, and can call utility functions not in IDL.
+
+ TAO_Container_i *create_container (ACE_Configuration_Section_Key key
+ ACE_ENV_ARG_DECL);
+ // For internal use - faster than creating an object reference and
+ // sending a request, and can call utility functions not in IDL.
+
+ PortableServer::Servant create_tie (ACE_Configuration_Section_Key key,
+ PortableServer::POA_ptr poa
+ ACE_ENV_ARG_DECL);
+ // Used by the servant locator to create a servant.
+
+ CORBA::Object_ptr create_objref (CORBA::DefinitionKind def_kind,
+ const char *obj_id
+ ACE_ENV_ARG_DECL);
+ // Used to create return values.
+private:
+ TAO_Repository_i *repo_;
+ // Reference to the repository, where most of the state is stored.
+};
+
+#endif /* IFR_SERVANT_FACTORY_H */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/Servant_Locator.cpp b/TAO/orbsvcs/orbsvcs/IFRService/Servant_Locator.cpp
new file mode 100644
index 00000000000..4065aead98c
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/Servant_Locator.cpp
@@ -0,0 +1,66 @@
+// $Id$
+
+#include "Servant_Locator.h"
+#include "Servant_Factory.h"
+#include "Repository_i.h"
+
+ACE_RCSID(IFR_Service, Servant_Locator, "$Id$")
+
+IFR_ServantLocator::IFR_ServantLocator (TAO_Repository_i *repo)
+ : repo_ (repo)
+{
+}
+
+PortableServer::Servant
+IFR_ServantLocator::preinvoke (
+ const PortableServer::ObjectId &oid,
+ PortableServer::POA_ptr poa,
+ const char * /* operation */,
+ PortableServer::ServantLocator::Cookie &cookie
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException,
+ PortableServer::ForwardRequest))
+{
+ CORBA::String_var s =
+ PortableServer::ObjectId_to_string (oid);
+
+ ACE_Configuration_Section_Key servant_key;
+ int status =
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ s.in (),
+ servant_key,
+ 0);
+
+ if (status != 0)
+ {
+ // If we're here, destroy() has been called.
+ ACE_THROW_RETURN (CORBA::OBJECT_NOT_EXIST (), 0);
+ }
+
+ PortableServer::Servant servant =
+ this->repo_->servant_factory ()->create_tie (servant_key,
+ poa
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ cookie = servant;
+
+ return servant;
+}
+
+void
+IFR_ServantLocator::postinvoke (
+ const PortableServer::ObjectId & /* oid */,
+ PortableServer::POA_ptr /* poa */,
+ const char * /* operation */,
+ PortableServer::ServantLocator::Cookie /* cookie */,
+ PortableServer::Servant servant
+ ACE_ENV_ARG_DECL_NOT_USED
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ delete servant;
+}
+
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/Servant_Locator.h b/TAO/orbsvcs/orbsvcs/IFRService/Servant_Locator.h
new file mode 100644
index 00000000000..abf51a2210a
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/Servant_Locator.h
@@ -0,0 +1,74 @@
+// $Id$
+
+//==========================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// Servant_Locator.h
+//
+// = DESCRIPTION
+// Defines a servant activator subclass, used by the IFR and its POA
+//
+// = AUTHOR
+// Jeff Parsons
+//
+//==========================================================================
+
+#ifndef IFR_SERVANT_LOCATOR_H
+#define IFR_SERVANT_LOCATOR_H
+
+#include "tao/PortableServer/PortableServerC.h"
+#include "ifr_service_export.h"
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+
+class TAO_Repository_i;
+
+class TAO_IFRService_Export IFR_ServantLocator : public PortableServer::ServantLocator
+{
+ // = TITLE
+ // IFR_ServantLocator
+ //
+ // = DESCRIPTION
+ // This class is used by the Interface Repository to create
+ // servants on demand
+ //
+public:
+ IFR_ServantLocator (TAO_Repository_i *repo);
+ // constructor
+
+ virtual PortableServer::Servant preinvoke (
+ const PortableServer::ObjectId &oid,
+ PortableServer::POA_ptr adapter,
+ const char *operation,
+ PortableServer::ServantLocator::Cookie &the_cookie
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException,
+ PortableServer::ForwardRequest));
+ // This method is invoked by the IFR's POA whenever it receives a request
+ // for an IR object.
+
+ virtual void postinvoke (
+ const PortableServer::ObjectId &oid,
+ PortableServer::POA_ptr adapter,
+ const char *operation,
+ PortableServer::ServantLocator::Cookie the_cookie,
+ PortableServer::Servant the_servant
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // This method is invoked whenever an IR object servant completes a
+ // request.
+
+
+private:
+ TAO_Repository_i *repo_;
+ // Passed in to each created servant.
+};
+
+#endif /* IFR_SERVANT_LOCATOR_H */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/StringDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/StringDef_i.cpp
new file mode 100644
index 00000000000..b536f8981f5
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/StringDef_i.cpp
@@ -0,0 +1,113 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "Repository_i.h"
+#include "StringDef_i.h"
+
+ACE_RCSID(IFR_Service, StringDef_i, "$Id$")
+
+TAO_StringDef_i::TAO_StringDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key)
+ : TAO_IRObject_i (repo, section_key),
+ TAO_IDLType_i (repo, section_key)
+{
+}
+
+TAO_StringDef_i::~TAO_StringDef_i (void)
+{
+}
+
+CORBA::DefinitionKind
+TAO_StringDef_i::def_kind (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::dk_String;
+}
+
+void
+TAO_StringDef_i::destroy (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+void
+TAO_StringDef_i::destroy_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString name;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "name",
+ name);
+
+ this->repo_->config ()->remove_section (this->repo_->strings_key (),
+ name.c_str (),
+ 0);
+}
+
+CORBA::TypeCode_ptr
+TAO_StringDef_i::type (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::TypeCode_ptr
+TAO_StringDef_i::type_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA::ULong bound = this->bound_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->repo_->tc_factory ()->create_string_tc (
+ bound
+ ACE_ENV_ARG_PARAMETER
+ );
+}
+
+CORBA::ULong
+TAO_StringDef_i::bound (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->bound_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::ULong
+TAO_StringDef_i::bound_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ u_int retval = 0;
+ this->repo_->config ()->get_integer_value (this->section_key_,
+ "bound",
+ retval);
+
+ return ACE_static_cast (CORBA::ULong, retval);
+}
+
+void
+TAO_StringDef_i::bound (CORBA::ULong bound
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->bound_i (bound
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_StringDef_i::bound_i (CORBA::ULong bound
+ ACE_ENV_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ this->repo_->config ()->set_integer_value (this->section_key_,
+ "bound",
+ bound);
+}
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/StringDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/StringDef_i.h
new file mode 100644
index 00000000000..00dd6851c52
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/StringDef_i.h
@@ -0,0 +1,111 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// StringDef_i.h
+//
+// = DESCRIPTION
+// StringDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_STRINGDEF_I_H
+#define TAO_STRINGDEF_I_H
+
+#include "IDLType_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_IFRService_Export TAO_StringDef_i : public virtual TAO_IDLType_i
+{
+ // = TITLE
+ // TAO_StringDef_i
+ //
+ // = DESCRIPTION
+ // Represents a bounded string (unbounded strings
+ // are included in PrimitiveDef).
+ //
+public:
+ TAO_StringDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor.
+
+ virtual ~TAO_StringDef_i (void);
+ // Destructor.
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Return our definition kind.
+
+ virtual void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Remove the repository entry.
+
+ virtual void destroy_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From IDLType_i's pure virtual function.
+
+ virtual CORBA::TypeCode_ptr type_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From IDLType_i's pure virtual function.
+
+ virtual CORBA::ULong bound (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA::ULong bound_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void bound (
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void bound_i (
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_STRINGDEF_I_H */
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/StructDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/StructDef_i.cpp
new file mode 100644
index 00000000000..08dfaa51490
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/StructDef_i.cpp
@@ -0,0 +1,278 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "StructDef_i.h"
+#include "Repository_i.h"
+#include "Servant_Factory.h"
+#include "ace/Auto_Ptr.h"
+
+ACE_RCSID(IFR_Service, StructDef_i, "$Id$")
+
+TAO_StructDef_i::TAO_StructDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key)
+ : TAO_IRObject_i (repo, section_key),
+ TAO_IDLType_i (repo, section_key),
+ TAO_Contained_i (repo, section_key),
+ TAO_TypedefDef_i (repo, section_key),
+ TAO_Container_i (repo, section_key)
+{
+}
+
+TAO_StructDef_i::~TAO_StructDef_i (void)
+{
+}
+
+CORBA::DefinitionKind
+TAO_StructDef_i::def_kind (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::dk_Struct;
+}
+
+void
+TAO_StructDef_i::destroy (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+void
+TAO_StructDef_i::destroy_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Destroy our members.
+ TAO_Container_i::destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ // Destroy ourself.
+ TAO_Contained_i::destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+}
+
+CORBA::TypeCode_ptr
+TAO_StructDef_i::type (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::TypeCode_ptr
+TAO_StructDef_i::type_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString id;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "id",
+ id);
+
+ ACE_TString name;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "name",
+ name);
+
+ CORBA_StructMemberSeq_var members = this->members_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->repo_->tc_factory ()->create_struct_tc (id.c_str (),
+ name.c_str (),
+ members.in ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_StructMemberSeq *
+TAO_StructDef_i::members (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->members_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_StructMemberSeq *
+TAO_StructDef_i::members_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_Unbounded_Queue<CORBA::DefinitionKind> kind_queue;
+ ACE_Unbounded_Queue<ACE_TString> path_queue;
+ ACE_Unbounded_Queue<ACE_TString> name_queue;
+
+ ACE_Configuration_Section_Key refs_key;
+ this->repo_->config ()->open_section (this->section_key_,
+ "refs",
+ 0,
+ refs_key);
+
+ u_int count = 0;
+ this->repo_->config ()->get_integer_value (refs_key,
+ "count",
+ count);
+
+ for (u_int i = 0; i < count; ++i)
+ {
+ ACE_Configuration_Section_Key member_key;
+ CORBA::String_var section_name = this->int_to_string (i);
+ this->repo_->config ()->open_section (refs_key,
+ section_name.in (),
+ 0,
+ member_key);
+
+ ACE_TString path;
+ this->repo_->config ()->get_string_value (member_key,
+ "path",
+ path);
+
+ ACE_Configuration_Section_Key entry_key;
+ int status =
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ path,
+ entry_key,
+ 0);
+
+ // This entry may have been removed.
+ if (status == 0)
+ {
+ path_queue.enqueue_tail (path);
+
+ ACE_TString name;
+ this->repo_->config ()->get_string_value (member_key,
+ "name",
+ name);
+
+ name_queue.enqueue_tail (name);
+
+ u_int kind = 0;
+ this->repo_->config ()->get_integer_value (entry_key,
+ "def_kind",
+ kind);
+
+ CORBA::DefinitionKind def_kind =
+ ACE_static_cast (CORBA::DefinitionKind, kind);
+
+ kind_queue.enqueue_tail (def_kind);
+ }
+ }
+
+ size_t size = kind_queue.size ();
+
+ CORBA_StructMemberSeq *members = 0;
+ ACE_NEW_THROW_EX (members,
+ CORBA_StructMemberSeq (size),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ members->length (size);
+
+ CORBA_StructMemberSeq_var retval = members;
+
+ ACE_TString name, path;
+ CORBA::DefinitionKind kind = CORBA::dk_none;
+ CORBA::Object_var obj;
+ ACE_Configuration_Section_Key member_key;
+ TAO_IDLType_i *impl = 0;
+
+ for (size_t k = 0; k < size; k++)
+ {
+ name_queue.dequeue_head (name);
+
+ retval[k].name = name.c_str ();
+
+ kind_queue.dequeue_head (kind);
+
+ path_queue.dequeue_head (path);
+
+ obj =
+ this->repo_->servant_factory ()->create_objref (kind,
+ path.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ retval[k].type_def = CORBA_IDLType::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ path,
+ member_key,
+ 0);
+
+ impl =
+ this->repo_->servant_factory ()->create_idltype (member_key
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_IDLType_i> safety (impl);
+
+ retval[k].type = impl->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+ }
+
+ return retval._retn ();
+}
+
+void
+TAO_StructDef_i::members (const CORBA_StructMemberSeq &members
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->members_i (members
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_StructDef_i::members_i (const CORBA_StructMemberSeq &members
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Destroy our old members, both refs and defns.
+ TAO_Container_i::destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ CORBA::ULong count = members.length ();
+
+ ACE_TString section_name;
+ ACE_Configuration_Section_Key refs_key;
+
+ this->repo_->config ()->open_section (this->section_key_,
+ "refs",
+ 1,
+ refs_key);
+
+ // Create a section for each new member. We just store the
+ // member name and the path to its database entry.
+ for (CORBA::ULong i = 0; i < count; i++)
+ {
+ CORBA::String_var section_name = this->int_to_string (i);
+ ACE_Configuration_Section_Key member_key;
+ this->repo_->config ()->open_section (refs_key,
+ section_name.in (),
+ 1,
+ member_key);
+
+ this->repo_->config ()->set_string_value (member_key,
+ "name",
+ members[i].name.in ());
+
+ PortableServer::ObjectId_var oid =
+ this->repo_->ir_poa ()->reference_to_id (members[i].type_def.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ CORBA::String_var path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ this->repo_->config ()->set_string_value (member_key,
+ "path",
+ path.in ());
+ }
+
+ this->repo_->config ()->set_integer_value (refs_key,
+ "count",
+ count);
+}
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/StructDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/StructDef_i.h
new file mode 100644
index 00000000000..ec9a79b2672
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/StructDef_i.h
@@ -0,0 +1,112 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// StructDef_i.h
+//
+// = DESCRIPTION
+// StructDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_STRUCTDEF_I_H
+#define TAO_STRUCTDEF_I_H
+
+#include "TypedefDef_i.h"
+#include "Container_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_IFRService_Export TAO_StructDef_i : public virtual TAO_TypedefDef_i,
+ public virtual TAO_Container_i
+{
+ // = TITLE
+ // TAO_StructDef_i
+ //
+ // = DESCRIPTION
+ // Represents an OMG IDL structure definition.
+ //
+public:
+ TAO_StructDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor
+
+ virtual ~TAO_StructDef_i (void);
+ // Destructor
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Return our definition kind.
+
+ virtual void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Remove the repository entry and its contents.
+
+ virtual void destroy_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From IDLType_i's pure virtual function.
+
+ virtual CORBA::TypeCode_ptr type_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From IDLType_i's pure virtual function.
+
+ virtual CORBA_StructMemberSeq *members (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_StructMemberSeq *members_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void members (
+ const CORBA_StructMemberSeq &members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void members_i (
+ const CORBA_StructMemberSeq &members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_STRUCTDEF_I_H */
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/TypedefDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/TypedefDef_i.cpp
new file mode 100644
index 00000000000..8884a883e9f
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/TypedefDef_i.cpp
@@ -0,0 +1,73 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "Repository_i.h"
+#include "TypedefDef_i.h"
+
+ACE_RCSID(IFR_Service, TypedefDef_i, "$Id$")
+
+TAO_TypedefDef_i::TAO_TypedefDef_i (
+ TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key
+ )
+ : TAO_IRObject_i (repo, section_key),
+ TAO_Contained_i (repo, section_key),
+ TAO_IDLType_i (repo, section_key)
+{
+}
+
+TAO_TypedefDef_i::~TAO_TypedefDef_i (void)
+{
+}
+
+CORBA_Contained::Description *
+TAO_TypedefDef_i::describe (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->describe_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_Contained::Description *
+TAO_TypedefDef_i::describe_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA_Contained::Description *desc_ptr = 0;
+ ACE_NEW_THROW_EX (desc_ptr,
+ CORBA_Contained::Description,
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ CORBA_Contained::Description_var retval = desc_ptr;
+
+ retval->kind = this->def_kind (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ CORBA_TypeDescription td;
+
+ ACE_CHECK_RETURN (0);
+ td.name = this->name_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+
+ td.id = this->id_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ ACE_TString container_id;
+
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "container_id",
+ container_id);
+
+ td.defined_in = container_id.c_str ();
+
+ td.version = this->version_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ td.type = this->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ retval->value <<= td;
+
+ return retval._retn ();
+}
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/TypedefDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/TypedefDef_i.h
new file mode 100644
index 00000000000..86079596efb
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/TypedefDef_i.h
@@ -0,0 +1,74 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// TypedefDef_i.h
+//
+// = DESCRIPTION
+// TypedefDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_TYPEDEFDEF_I_H
+#define TAO_TYPEDEFDEF_I_H
+
+#include "Contained_i.h"
+#include "IDLType_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_IFRService_Export TAO_TypedefDef_i : public virtual TAO_Contained_i,
+ public virtual TAO_IDLType_i
+{
+ // = TITLE
+ // TAO_TypedefDef_i
+ //
+ // = DESCRIPTION
+ // Base interface inherited by all named non-object types:
+ // struct, union, enum, alias, native, and valuebox.
+ //
+public:
+ TAO_TypedefDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor
+
+ virtual ~TAO_TypedefDef_i (void);
+ // Destructor
+
+ virtual CORBA_Contained::Description *describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+
+ virtual CORBA_Contained::Description *describe_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_TYPEDEFDEF_I_H */
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/UnionDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/UnionDef_i.cpp
new file mode 100644
index 00000000000..097f7fc1cbb
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/UnionDef_i.cpp
@@ -0,0 +1,470 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "UnionDef_i.h"
+#include "Repository_i.h"
+#include "Servant_Factory.h"
+#include "ace/Auto_Ptr.h"
+
+ACE_RCSID(IFR_Service, UnionDef_i, "$Id$")
+
+TAO_UnionDef_i::TAO_UnionDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key)
+ : TAO_IRObject_i (repo, section_key),
+ TAO_IDLType_i (repo, section_key),
+ TAO_Contained_i (repo, section_key),
+ TAO_TypedefDef_i (repo, section_key),
+ TAO_Container_i (repo, section_key)
+{
+}
+
+TAO_UnionDef_i::~TAO_UnionDef_i (void)
+{
+}
+
+CORBA::DefinitionKind
+TAO_UnionDef_i::def_kind (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::dk_Union;
+}
+
+void
+TAO_UnionDef_i::destroy (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+void
+TAO_UnionDef_i::destroy_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Destroy our members.
+ TAO_Container_i::destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ // Destroy ourself.
+ TAO_Contained_i::destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+}
+
+CORBA::TypeCode_ptr
+TAO_UnionDef_i::type (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::TypeCode_ptr
+TAO_UnionDef_i::type_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString id;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "id",
+ id);
+
+ ACE_TString name;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "name",
+ name);
+
+ CORBA::TypeCode_var tc = this->discriminator_type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA::TypeCode::_nil ());
+
+ CORBA_UnionMemberSeq_var members = this->members_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->repo_->tc_factory ()->create_union_tc (id.c_str (),
+ name.c_str (),
+ tc.in (),
+ members.in ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA::TypeCode_ptr
+TAO_UnionDef_i::discriminator_type (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->discriminator_type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::TypeCode_ptr
+TAO_UnionDef_i::discriminator_type_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString disc_path;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "disc_path",
+ disc_path);
+
+ ACE_Configuration_Section_Key disc_key;
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ disc_path,
+ disc_key,
+ 0);
+
+ TAO_IDLType_i *impl =
+ this->repo_->servant_factory ()->create_idltype (disc_key
+ ACE_ENV_ARG_PARAMETER);
+
+ auto_ptr<TAO_IDLType_i> safety (impl);
+
+ return impl->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_IDLType_ptr
+TAO_UnionDef_i::discriminator_type_def (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA_IDLType::_nil ());
+
+ return this->discriminator_type_def_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_IDLType_ptr
+TAO_UnionDef_i::discriminator_type_def_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString disc_path;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "disc_path",
+ disc_path);
+
+ ACE_Configuration_Section_Key disc_key;
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ disc_path,
+ disc_key,
+ 0);
+
+ u_int kind;
+ this->repo_->config ()->get_integer_value (disc_key,
+ "def_kind",
+ kind);
+
+ CORBA::DefinitionKind def_kind =
+ ACE_static_cast (CORBA::DefinitionKind, kind);
+
+ CORBA::Object_var obj =
+ this->repo_->servant_factory ()->create_objref (def_kind,
+ disc_path.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_IDLType::_nil ());
+
+ return CORBA_IDLType::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_UnionDef_i::discriminator_type_def (
+ CORBA_IDLType_ptr discriminator_type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->discriminator_type_def_i (discriminator_type_def
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_UnionDef_i::discriminator_type_def_i (
+ CORBA_IDLType_ptr discriminator_type_def
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ PortableServer::ObjectId_var oid =
+ this->repo_->ir_poa ()->reference_to_id (discriminator_type_def
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ CORBA::String_var disc_path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ this->repo_->config ()->set_string_value (this->section_key_,
+ "disc_path",
+ disc_path.in ());
+}
+
+CORBA_UnionMemberSeq *
+TAO_UnionDef_i::members (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->members_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_UnionMemberSeq *
+TAO_UnionDef_i::members_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_Unbounded_Queue<ACE_Configuration_Section_Key> key_queue;
+
+ ACE_Configuration_Section_Key refs_key;
+ this->repo_->config ()->open_section (this->section_key_,
+ "refs",
+ 0,
+ refs_key);
+
+ u_int count;
+ this->repo_->config ()->get_integer_value (refs_key,
+ "count",
+ count);
+
+ for (u_int i = 0; i < count; i++)
+ {
+ ACE_Configuration_Section_Key member_key;
+ CORBA::String_var section_name = this->int_to_string (i);
+ if (this->repo_->config ()->open_section (refs_key,
+ section_name.in (),
+ 0,
+ member_key)
+ == 0)
+ {
+ ACE_TString path;
+ this->repo_->config ()->get_string_value (member_key,
+ "path",
+ path);
+
+ ACE_Configuration_Section_Key entry_key;
+
+ // This entry may have been removed.
+ if (this->repo_->config ()->expand_path (this->repo_->root_key (),
+ path,
+ entry_key,
+ 0)
+ == 0)
+ {
+ key_queue.enqueue_tail (member_key);
+ }
+ }
+ }
+
+ size_t size = key_queue.size ();
+
+ CORBA_UnionMemberSeq *members = 0;
+ ACE_NEW_THROW_EX (members,
+ CORBA_UnionMemberSeq (size),
+ CORBA::NO_MEMORY ());
+ ACE_CHECK_RETURN (0);
+
+ members->length (size);
+
+ CORBA_UnionMemberSeq_var retval = members;
+
+ ACE_TString name, path;
+ ACE_Configuration_Section_Key next_key, entry_key;
+ u_int kind = 0;
+ CORBA::DefinitionKind def_kind = CORBA::dk_none;
+ CORBA::Object_var obj;
+ TAO_IDLType_i *impl = 0;
+
+ for (size_t k = 0; k < size; k++)
+ {
+ key_queue.dequeue_head (next_key);
+
+ this->repo_->config ()->get_string_value (next_key,
+ "name",
+ name);
+
+ retval[k].name = name.c_str ();
+
+ this->fetch_label (next_key,
+ retval[k]
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ this->repo_->config ()->get_string_value (next_key,
+ "path",
+ path);
+
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ path,
+ entry_key,
+ 0);
+
+ this->repo_->config ()->get_integer_value (entry_key,
+ "def_kind",
+ kind);
+
+ def_kind =
+ ACE_static_cast (CORBA::DefinitionKind, kind);
+
+ obj =
+ this->repo_->servant_factory ()->create_objref (def_kind,
+ path.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ retval[k].type_def = CORBA_IDLType::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ impl =
+ this->repo_->servant_factory ()->create_idltype (entry_key
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+
+ auto_ptr<TAO_IDLType_i> safety (impl);
+
+ retval[k].type = impl->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (0);
+ }
+
+ return retval._retn ();
+}
+
+void
+TAO_UnionDef_i::members (const CORBA_UnionMemberSeq &members
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->members_i (members
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_UnionDef_i::members_i (const CORBA_UnionMemberSeq &members
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // Destroy our old members, both refs and defns.
+ TAO_Container_i::destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ ACE_TString section_name;
+ ACE_Configuration_Section_Key refs_key;
+
+ this->repo_->config ()->open_section (this->section_key_,
+ "refs",
+ 1,
+ refs_key);
+
+ // Store the new member count of the union.
+ CORBA::ULong count = members.length ();
+ this->repo_->config ()->set_integer_value (refs_key,
+ "count",
+ count);
+
+ // Create a section for each member. We store the member
+ // name, its label value, and the path to its database entry.
+ for (CORBA::ULong i = 0; i < count; i++)
+ {
+ ACE_Configuration_Section_Key member_key;
+ char *section_name = this->int_to_string (i);
+ this->repo_->config ()->open_section (refs_key,
+ section_name,
+ 1,
+ member_key);
+
+ this->repo_->config ()->set_string_value (member_key,
+ "name",
+ members[i].name.in ());
+
+ PortableServer::ObjectId_var oid =
+ this->repo_->ir_poa ()->reference_to_id (members[i].type_def.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ CORBA::String_var member_path =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ this->repo_->config ()->set_string_value (member_key,
+ "path",
+ member_path.in ());
+
+ this->store_label (member_key,
+ members[i].label
+ ACE_ENV_ARG_PARAMETER);
+ }
+}
+
+void
+TAO_UnionDef_i::fetch_label (const ACE_Configuration_Section_Key member_key,
+ CORBA_UnionMember &member
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_Configuration::VALUETYPE vt;
+ this->repo_->config ()->find_value (member_key,
+ "label",
+ vt);
+
+ if (vt == ACE_Configuration::STRING)
+ {
+ member.label <<= CORBA::Any::from_octet (0);
+
+ return;
+ }
+
+ u_int value = 0;
+ this->repo_->config ()->get_integer_value (member_key,
+ "label",
+ value);
+
+ CORBA::TypeCode_var tc = this->discriminator_type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ CORBA::TCKind kind = tc->kind (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK;
+
+ switch (kind)
+ {
+ case CORBA::tk_char:
+ member.label <<= CORBA::Any::from_char (ACE_static_cast (CORBA::Char,
+ value));
+ break;
+ case CORBA::tk_wchar:
+ member.label <<= CORBA::Any::from_wchar (ACE_static_cast (CORBA::WChar,
+ value));
+ break;
+ case CORBA::tk_boolean:
+ member.label <<= CORBA::Any::from_boolean (ACE_static_cast (CORBA::Boolean,
+ value));
+ break;
+ case CORBA::tk_short:
+ member.label <<= ACE_static_cast (CORBA::Short, value);
+ break;
+ case CORBA::tk_ushort:
+ member.label <<= ACE_static_cast (CORBA::UShort, value);
+ break;
+ case CORBA::tk_long:
+ member.label <<= ACE_static_cast (CORBA::Long, value);
+ break;
+ case CORBA::tk_ulong:
+ member.label <<= ACE_static_cast (CORBA::ULong, value);
+ break;
+#if !defined (ACE_LACKS_LONGLONG_T)
+ case CORBA::tk_longlong:
+ member.label <<= ACE_static_cast (CORBA::LongLong, value);
+ break;
+#endif /* ACE_LACKS_LONGLONG_T */
+ case CORBA::tk_ulonglong:
+ member.label <<= ACE_static_cast (CORBA::ULongLong, value);
+ break;
+ case CORBA::tk_enum:
+ {
+ TAO_OutputCDR cdr;
+ cdr.write_ulong (ACE_static_cast (CORBA::ULong, value));
+ member.label._tao_replace (tc.in (),
+ TAO_ENCAP_BYTE_ORDER,
+ cdr.begin ());
+ break;
+ }
+ default:
+ break;
+ }
+}
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/UnionDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/UnionDef_i.h
new file mode 100644
index 00000000000..9e4bc365248
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/UnionDef_i.h
@@ -0,0 +1,154 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// UnionDef_i.h
+//
+// = DESCRIPTION
+// UnionDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_UNIONDEF_I_H
+#define TAO_UNIONDEF_I_H
+
+#include "TypedefDef_i.h"
+#include "Container_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_IFRService_Export TAO_UnionDef_i : public virtual TAO_TypedefDef_i,
+ public virtual TAO_Container_i
+{
+ // = TITLE
+ // TAO_UnionDef_i
+ //
+ // = DESCRIPTION
+ // Represents an OMG IDL union definition.
+ //
+public:
+ TAO_UnionDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor
+
+ virtual ~TAO_UnionDef_i (void);
+ // Destructor
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Return our definition kind.
+
+ virtual void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Remove the repository entry and its contents.
+
+ virtual void destroy_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From IDLType_i's pure virtual function.
+
+ virtual CORBA::TypeCode_ptr type_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From IDLType_i's pure virtual function.
+
+ virtual CORBA::TypeCode_ptr discriminator_type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA::TypeCode_ptr discriminator_type_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_IDLType_ptr discriminator_type_def (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_IDLType_ptr discriminator_type_def_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void discriminator_type_def (
+ CORBA_IDLType_ptr discriminator_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void discriminator_type_def_i (
+ CORBA_IDLType_ptr discriminator_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_UnionMemberSeq *members (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_UnionMemberSeq *members_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void members (
+ const CORBA_UnionMemberSeq &members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void members_i (
+ const CORBA_UnionMemberSeq &members
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+private:
+ void fetch_label (
+ const ACE_Configuration_Section_Key member_key,
+ CORBA_UnionMember &member
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Used by members() to get each member's label value.
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_UNIONDEF_I_H */
+
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/UsesDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/UsesDef_i.cpp
new file mode 100644
index 00000000000..65e7d8ca51f
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/UsesDef_i.cpp
@@ -0,0 +1,93 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "Repository_i.h"
+#include "UsesDef_i.h"
+
+ACE_RCSID(IFR_Service, UsesDef_i, "$Id$")
+
+TAO_UsesDef_i::TAO_UsesDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key)
+ : TAO_IRObject_i (repo, section_key),
+ TAO_Contained_i (repo, section_key)
+{
+}
+
+TAO_UsesDef_i::~TAO_UsesDef_i (void)
+{
+}
+
+CORBA::DefinitionKind
+TAO_UsesDef_i::def_kind (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::dk_Uses;
+}
+
+void
+TAO_UsesDef_i::destroy (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+void
+TAO_UsesDef_i::destroy_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+}
+
+CORBA_Contained::Description *
+TAO_UsesDef_i::describe (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->describe_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_Contained::Description *
+TAO_UsesDef_i::describe_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+CORBA_InterfaceDef_ptr
+TAO_UsesDef_i::interface_type (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA_InterfaceDef::_nil ());
+
+ return this->interface_type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_InterfaceDef_ptr
+TAO_UsesDef_i::interface_type_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+CORBA::Boolean
+TAO_UsesDef_i::is_multiple (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->is_multiple_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::Boolean
+TAO_UsesDef_i::is_multiple_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/UsesDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/UsesDef_i.h
new file mode 100644
index 00000000000..417b838e8c9
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/UsesDef_i.h
@@ -0,0 +1,108 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// UsesDef_i.h
+//
+// = DESCRIPTION
+// UsesDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_USESDEF_I_H
+#define TAO_USESDEF_I_H
+
+#include "Contained_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_IFRService_Export TAO_UsesDef_i : public virtual TAO_Contained_i
+{
+ // = TITLE
+ // TAO_UsesDef_i
+ //
+ // = DESCRIPTION
+ // Represents an interface that is used by a component.
+ //
+public:
+ TAO_UsesDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor
+
+ virtual ~TAO_UsesDef_i (void);
+ // Destructor
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Return our definition kind.
+
+ virtual void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Remove the repository entry.
+
+ virtual void destroy_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_Contained::Description *describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+
+ virtual CORBA_Contained::Description *describe_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+
+ virtual CORBA_InterfaceDef_ptr interface_type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_InterfaceDef_ptr interface_type_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean is_multiple (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA::Boolean is_multiple_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_USESDEF_I_H */
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/ValueBoxDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/ValueBoxDef_i.cpp
new file mode 100644
index 00000000000..97b29fd2fe3
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/ValueBoxDef_i.cpp
@@ -0,0 +1,153 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "ValueBoxDef_i.h"
+#include "Repository_i.h"
+#include "Servant_Factory.h"
+#include "ace/Auto_Ptr.h"
+
+ACE_RCSID(IFR_Service, ValueBoxDef_i, "$Id$")
+
+TAO_ValueBoxDef_i::TAO_ValueBoxDef_i (
+ TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key
+ )
+ : TAO_IRObject_i (repo, section_key),
+ TAO_Contained_i (repo, section_key),
+ TAO_IDLType_i (repo, section_key),
+ TAO_TypedefDef_i (repo, section_key)
+{
+}
+
+TAO_ValueBoxDef_i::~TAO_ValueBoxDef_i (void)
+{
+}
+
+CORBA::DefinitionKind
+TAO_ValueBoxDef_i::def_kind (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::dk_ValueBox;
+}
+
+CORBA::TypeCode_ptr
+TAO_ValueBoxDef_i::type (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::TypeCode_ptr
+TAO_ValueBoxDef_i::type_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString id;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "id",
+ id);
+
+ ACE_TString name;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "name",
+ name);
+
+ ACE_TString boxed_type;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "boxed_type",
+ boxed_type);
+
+ ACE_Configuration_Section_Key boxed_key;
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ boxed_type,
+ boxed_key,
+ 0);
+
+ TAO_IDLType_i *impl =
+ this->repo_->servant_factory ()->create_idltype (boxed_key
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA::TypeCode::_nil ());
+
+ auto_ptr<TAO_IDLType_i> safety (impl);
+
+ CORBA::TypeCode_var tc = impl->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->repo_->tc_factory ()->create_value_box_tc (id.c_str (),
+ name.c_str (),
+ tc.in ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_IDLType_ptr
+TAO_ValueBoxDef_i::original_type_def (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA_IDLType::_nil ());
+
+ return this->original_type_def_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_IDLType_ptr
+TAO_ValueBoxDef_i::original_type_def_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString boxed_type;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "boxed_type",
+ boxed_type);
+
+ ACE_Configuration_Section_Key boxed_key;
+ this->repo_->config ()->expand_path (this->repo_->root_key (),
+ boxed_type,
+ boxed_key,
+ 0);
+
+ u_int kind = 0;
+ this->repo_->config ()->get_integer_value (boxed_key,
+ "def_kind",
+ kind);
+
+ CORBA::DefinitionKind def_kind =
+ ACE_static_cast (CORBA::DefinitionKind, kind);
+
+ CORBA::Object_var obj =
+ this->repo_->servant_factory ()->create_objref (def_kind,
+ boxed_type.c_str ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA_IDLType::_nil ());
+
+ return CORBA_IDLType::_narrow (obj.in ()
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ValueBoxDef_i::original_type_def (CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->original_type_def_i (original_type_def
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ValueBoxDef_i::original_type_def_i (CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ PortableServer::ObjectId_var oid =
+ this->repo_->ir_poa ()->reference_to_id (original_type_def
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ CORBA::String_var boxed_type =
+ PortableServer::ObjectId_to_string (oid.in ());
+
+ this->repo_->config ()->set_string_value (this->section_key_,
+ "boxed_type",
+ boxed_type.in ());
+}
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/ValueBoxDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/ValueBoxDef_i.h
new file mode 100644
index 00000000000..54bb15cc092
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/ValueBoxDef_i.h
@@ -0,0 +1,100 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// ValueBoxDef_i.h
+//
+// = DESCRIPTION
+// ValueBoxDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_VALUEBOXDEF_I_H
+#define TAO_VALUEBOXDEF_I_H
+
+#include "TypedefDef_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_IFRService_Export TAO_ValueBoxDef_i : public virtual TAO_TypedefDef_i
+{
+public:
+ // = TITLE
+ // TAO_ValueBoxDef_i
+ //
+ // = DESCRIPTION
+ // Represents an value box definition.
+ //
+public:
+ TAO_ValueBoxDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor
+
+ virtual ~TAO_ValueBoxDef_i (void);
+ // Destructor
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Return our definition kind.
+
+ virtual CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From IDLType_i's pure virtual function.
+
+ virtual CORBA::TypeCode_ptr type_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From IDLType_i's pure virtual function.
+
+ virtual CORBA_IDLType_ptr original_type_def (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_IDLType_ptr original_type_def_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void original_type_def (
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void original_type_def_i (
+ CORBA_IDLType_ptr original_type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_VALUEBOXDEF_I_H */
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/ValueDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/ValueDef_i.cpp
new file mode 100644
index 00000000000..147d7cac989
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/ValueDef_i.cpp
@@ -0,0 +1,493 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "Repository_i.h"
+#include "ValueDef_i.h"
+
+ACE_RCSID(IFR_Service, ValueDef_i, "$Id$")
+
+TAO_ValueDef_i::TAO_ValueDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key)
+ : TAO_IRObject_i (repo, section_key),
+ TAO_Container_i (repo, section_key),
+ TAO_Contained_i (repo, section_key),
+ TAO_IDLType_i (repo, section_key)
+{
+}
+
+TAO_ValueDef_i::~TAO_ValueDef_i (void)
+{
+}
+
+CORBA::DefinitionKind
+TAO_ValueDef_i::def_kind (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::dk_Value;
+}
+
+void
+TAO_ValueDef_i::destroy (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+void
+TAO_ValueDef_i::destroy_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+}
+
+CORBA_Contained::Description *
+TAO_ValueDef_i::describe (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->describe_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_Contained::Description *
+TAO_ValueDef_i::describe_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+CORBA::TypeCode_ptr
+TAO_ValueDef_i::type (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::TypeCode_ptr
+TAO_ValueDef_i::type_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+CORBA_InterfaceDefSeq *
+TAO_ValueDef_i::supported_interfaces (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->supported_interfaces_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_InterfaceDefSeq *
+TAO_ValueDef_i::supported_interfaces_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+void
+TAO_ValueDef_i::supported_interfaces (
+ const CORBA_InterfaceDefSeq &supported_interfaces
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->supported_interfaces_i (supported_interfaces
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ValueDef_i::supported_interfaces_i (
+ const CORBA_InterfaceDefSeq & /* supported_interfaces */
+ ACE_ENV_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+}
+
+CORBA_InitializerSeq *
+TAO_ValueDef_i::initializers (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->initializers_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_InitializerSeq *
+TAO_ValueDef_i::initializers_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+void
+TAO_ValueDef_i::initializers (const CORBA_InitializerSeq &initializers
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->initializers_i (initializers
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ValueDef_i::initializers_i (const CORBA_InitializerSeq & /* initializers */
+ ACE_ENV_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+}
+
+CORBA_ValueDef_ptr
+TAO_ValueDef_i::base_value (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA_ValueDef::_nil ());
+
+ return this->base_value_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_ValueDef_ptr
+TAO_ValueDef_i::base_value_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+void
+TAO_ValueDef_i::base_value (CORBA_ValueDef_ptr base_value
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->base_value_i (base_value
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ValueDef_i::base_value_i (CORBA_ValueDef_ptr /* base_value */
+ ACE_ENV_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+}
+
+CORBA_ValueDefSeq *
+TAO_ValueDef_i::abstract_base_values (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->abstract_base_values_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_ValueDefSeq *
+TAO_ValueDef_i::abstract_base_values_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+void
+TAO_ValueDef_i::abstract_base_values (
+ const CORBA_ValueDefSeq &abstract_base_values
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->abstract_base_values_i (abstract_base_values
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ValueDef_i::abstract_base_values_i (
+ const CORBA_ValueDefSeq & /* abstract_base_values */
+ ACE_ENV_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+}
+
+CORBA::Boolean
+TAO_ValueDef_i::is_abstract (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->is_abstract_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::Boolean
+TAO_ValueDef_i::is_abstract_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+void
+TAO_ValueDef_i::is_abstract (CORBA::Boolean is_abstract
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->is_abstract (is_abstract
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ValueDef_i::is_abstract_i (CORBA::Boolean /* is_abstract */
+ ACE_ENV_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+}
+
+CORBA::Boolean
+TAO_ValueDef_i::is_custom (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->is_custom_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::Boolean
+TAO_ValueDef_i::is_custom_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+void
+TAO_ValueDef_i::is_custom (CORBA::Boolean is_custom
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->is_custom_i (is_custom
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ValueDef_i::is_custom_i (CORBA::Boolean /* is_custom */
+ ACE_ENV_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+}
+
+CORBA::Boolean
+TAO_ValueDef_i::is_truncatable (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->is_truncatable_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::Boolean
+TAO_ValueDef_i::is_truncatable_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+void
+TAO_ValueDef_i::is_truncatable (CORBA::Boolean is_truncatable
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->is_truncatable_i (is_truncatable
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ValueDef_i::is_truncatable_i (CORBA::Boolean /* is_truncatable */
+ ACE_ENV_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+}
+
+CORBA::Boolean
+TAO_ValueDef_i::is_a (const char *id
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->is_a_i (id
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA::Boolean
+TAO_ValueDef_i::is_a_i (const char *id
+ ACE_ENV_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ if (ACE_OS::strcmp (id, "IDL:omg.org/CORBA/ValueBase:1.0") == 0)
+ {
+ return 1;
+ }
+
+ // TODO
+ return 0;
+}
+
+CORBA_ValueDef::FullValueDescription *
+TAO_ValueDef_i::describe_value (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->describe_value_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_ValueDef::FullValueDescription *
+TAO_ValueDef_i::describe_value_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+CORBA_ValueMemberDef_ptr
+TAO_ValueDef_i::create_value_member (const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr type,
+ CORBA::Visibility access
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD_RETURN (CORBA_ValueMemberDef::_nil ());
+
+ return this->create_value_member_i (id,
+ name,
+ version,
+ type,
+ access
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_ValueMemberDef_ptr
+TAO_ValueDef_i::create_value_member_i (const char * /* id */,
+ const char * /* name */,
+ const char * /* version */,
+ CORBA_IDLType_ptr /* type */,
+ CORBA::Visibility /* access */
+ ACE_ENV_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+CORBA_AttributeDef_ptr
+TAO_ValueDef_i::create_attribute (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr type,
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD_RETURN (CORBA_AttributeDef::_nil ());
+
+ return this->create_attribute_i (id,
+ name,
+ version,
+ type,
+ mode
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_AttributeDef_ptr
+TAO_ValueDef_i::create_attribute_i (
+ const char * /* id */,
+ const char * /* name */,
+ const char * /* version */,
+ CORBA_IDLType_ptr /* type */,
+ CORBA::AttributeMode /* mode */
+ ACE_ENV_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+CORBA_OperationDef_ptr
+TAO_ValueDef_i::create_operation (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr result,
+ CORBA::OperationMode mode,
+ const CORBA_ParDescriptionSeq &params,
+ const CORBA_ExceptionDefSeq &exceptions,
+ const CORBA_ContextIdSeq &contexts
+ ACE_ENV_ARG_DECL
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD_RETURN (CORBA_OperationDef::_nil ());
+
+ return this->create_operation_i (id,
+ name,
+ version,
+ result,
+ mode,
+ params,
+ exceptions,
+ contexts
+ ACE_ENV_ARG_PARAMETER);
+}
+
+CORBA_OperationDef_ptr
+TAO_ValueDef_i::create_operation_i (
+ const char * /* id */,
+ const char * /* name */,
+ const char * /* version */,
+ CORBA_IDLType_ptr /* result */,
+ CORBA::OperationMode /* mode */,
+ const CORBA_ParDescriptionSeq & /* params */,
+ const CORBA_ExceptionDefSeq & /* exceptions */,
+ const CORBA_ContextIdSeq & /* contexts */
+ ACE_ENV_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/ValueDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/ValueDef_i.h
new file mode 100644
index 00000000000..ac23eaf2e92
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/ValueDef_i.h
@@ -0,0 +1,346 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// ValueDef_i.h
+//
+// = DESCRIPTION
+// ValueDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_VALUEDEF_I_H
+#define TAO_VALUEDEF_I_H
+
+#include "Contained_i.h"
+#include "IDLType_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_IFRService_Export TAO_ValueDef_i : public virtual TAO_Container_i,
+ public virtual TAO_Contained_i,
+ public virtual TAO_IDLType_i
+{
+ // = TITLE
+ // TAO_ValueDef_i
+ //
+ // = DESCRIPTION
+ // Represents a valuetype definition.
+ //
+public:
+ TAO_ValueDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor
+
+ virtual ~TAO_ValueDef_i (void);
+ // Destructor
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Return our definition kind.
+
+ virtual void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Remove the repository entry.
+
+ virtual void destroy_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_Contained::Description *describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+
+ virtual CORBA_Contained::Description *describe_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+
+ virtual CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From IDLType_i's pure virtual function.
+
+ virtual CORBA::TypeCode_ptr type_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From IDLType_i's pure virtual function.
+
+ virtual CORBA_InterfaceDefSeq *supported_interfaces (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_InterfaceDefSeq *supported_interfaces_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void supported_interfaces (
+ const CORBA_InterfaceDefSeq & supported_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void supported_interfaces_i (
+ const CORBA_InterfaceDefSeq & supported_interfaces
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_InitializerSeq *initializers (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_InitializerSeq *initializers_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void initializers (
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void initializers_i (
+ const CORBA_InitializerSeq & initializers
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_ValueDef_ptr base_value (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_ValueDef_ptr base_value_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void base_value (
+ CORBA_ValueDef_ptr base_value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void base_value_i (
+ CORBA_ValueDef_ptr base_value
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_ValueDefSeq *abstract_base_values (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_ValueDefSeq *abstract_base_values_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void abstract_base_values (
+ const CORBA_ValueDefSeq & abstract_base_values
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void abstract_base_values_i (
+ const CORBA_ValueDefSeq & abstract_base_values
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean is_abstract (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA::Boolean is_abstract_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void is_abstract (
+ CORBA::Boolean is_abstract
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void is_abstract_i (
+ CORBA::Boolean is_abstract
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean is_custom (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA::Boolean is_custom_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void is_custom (
+ CORBA::Boolean is_custom
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void is_custom_i (
+ CORBA::Boolean is_custom
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean is_truncatable (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA::Boolean is_truncatable_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void is_truncatable (
+ CORBA::Boolean is_truncatable
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void is_truncatable_i (
+ CORBA::Boolean is_truncatable
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Boolean is_a (
+ const char *id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA::Boolean is_a_i (
+ const char *id
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_ValueDef::FullValueDescription *describe_value (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_ValueDef::FullValueDescription *describe_value_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_ValueMemberDef_ptr create_value_member (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr type,
+ CORBA::Visibility access
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_ValueMemberDef_ptr create_value_member_i (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr type,
+ CORBA::Visibility access
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_AttributeDef_ptr create_attribute (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr type,
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_AttributeDef_ptr create_attribute_i (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr type,
+ CORBA::AttributeMode mode
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_OperationDef_ptr create_operation (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr result,
+ CORBA::OperationMode mode,
+ const CORBA_ParDescriptionSeq &params,
+ const CORBA_ExceptionDefSeq &exceptions,
+ const CORBA_ContextIdSeq &contexts
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_OperationDef_ptr create_operation_i (
+ const char *id,
+ const char *name,
+ const char *version,
+ CORBA_IDLType_ptr result,
+ CORBA::OperationMode mode,
+ const CORBA_ParDescriptionSeq &params,
+ const CORBA_ExceptionDefSeq &exceptions,
+ const CORBA_ContextIdSeq &contexts
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_VALUEDEF_I_H */
+
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/ValueMemberDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/ValueMemberDef_i.cpp
new file mode 100644
index 00000000000..8e6b0912a21
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/ValueMemberDef_i.cpp
@@ -0,0 +1,150 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "Repository_i.h"
+#include "ValueMemberDef_i.h"
+
+ACE_RCSID(IFR_Service, ValueMemberDef_i, "$Id$")
+
+TAO_ValueMemberDef_i::TAO_ValueMemberDef_i (
+ TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key
+ )
+ : TAO_IRObject_i (repo, section_key),
+ TAO_Contained_i (repo, section_key)
+{
+}
+
+TAO_ValueMemberDef_i::~TAO_ValueMemberDef_i (void)
+{
+}
+
+CORBA::DefinitionKind
+TAO_ValueMemberDef_i::def_kind (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::dk_ValueMember;
+}
+
+void
+TAO_ValueMemberDef_i::destroy (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+void
+TAO_ValueMemberDef_i::destroy_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+}
+
+CORBA_Contained::Description *
+TAO_ValueMemberDef_i::describe (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->describe_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_Contained::Description *
+TAO_ValueMemberDef_i::describe_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+CORBA::TypeCode_ptr
+TAO_ValueMemberDef_i::type (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::TypeCode_ptr
+TAO_ValueMemberDef_i::type_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+CORBA_IDLType_ptr
+TAO_ValueMemberDef_i::type_def (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA_IDLType::_nil ());
+
+ return this->type_def_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA_IDLType_ptr
+TAO_ValueMemberDef_i::type_def_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+void
+TAO_ValueMemberDef_i::type_def (CORBA_IDLType_ptr type_def
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->type_def_i (type_def
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ValueMemberDef_i::type_def_i (CORBA_IDLType_ptr /* type_def */
+ ACE_ENV_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+}
+
+CORBA::Visibility
+TAO_ValueMemberDef_i::access (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->access_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::Visibility
+TAO_ValueMemberDef_i::access_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+ return 0;
+}
+
+void
+TAO_ValueMemberDef_i::access (CORBA::Visibility access
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->access (access
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_ValueMemberDef_i::access_i (CORBA::Visibility /* access */
+ ACE_ENV_ARG_DECL_NOT_USED /* ACE_ENV_SINGLE_ARG_PARAMETER */ )
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ // TODO
+}
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/ValueMemberDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/ValueMemberDef_i.h
new file mode 100644
index 00000000000..3812b0ac6ae
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/ValueMemberDef_i.h
@@ -0,0 +1,142 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// ValueMemberDef_i.h
+//
+// = DESCRIPTION
+// ValueMemberDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_VALUEMEMBERDEF_I_H
+#define TAO_VALUEMEMBERDEF_I_H
+
+#include "Contained_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_IFRService_Export TAO_ValueMemberDef_i : public virtual TAO_Contained_i
+{
+ // = TITLE
+ // TAO_ValeMemberDef_i
+ //
+ // = DESCRIPTION
+ // Represents the definition of a valuemember structure.
+ //
+public:
+ TAO_ValueMemberDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor
+
+ virtual ~TAO_ValueMemberDef_i (void);
+ // Destructor
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Return our definition kind.
+
+ virtual void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Remove the repository entry.
+
+ virtual void destroy_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_Contained::Description *describe (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+
+ virtual CORBA_Contained::Description *describe_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From Contained_i's pure virtual function.
+
+ virtual CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA::TypeCode_ptr type_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA_IDLType_ptr type_def (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA_IDLType_ptr type_def_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void type_def (
+ CORBA_IDLType_ptr type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void type_def_i (
+ CORBA_IDLType_ptr type_def
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::Visibility access (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA::Visibility access_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void access (
+ CORBA::Visibility access
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void access_i (
+ CORBA::Visibility access
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_VALUEMEMBERDEF_I_H */
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/WstringDef_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/WstringDef_i.cpp
new file mode 100644
index 00000000000..2b0ad879c71
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/WstringDef_i.cpp
@@ -0,0 +1,113 @@
+/* -*- C++ -*- */
+// $Id$
+
+#include "Repository_i.h"
+#include "WstringDef_i.h"
+
+ACE_RCSID(IFR_Service, StringDef_i, "$Id$")
+
+TAO_WstringDef_i::TAO_WstringDef_i (
+ TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key
+ )
+ : TAO_IRObject_i (repo, section_key),
+ TAO_IDLType_i (repo, section_key)
+{
+}
+
+TAO_WstringDef_i::~TAO_WstringDef_i (void)
+{
+}
+
+CORBA::DefinitionKind
+TAO_WstringDef_i::def_kind (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ return CORBA::dk_Wstring;
+}
+
+void
+TAO_WstringDef_i::destroy (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->destroy_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+void
+TAO_WstringDef_i::destroy_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ ACE_TString name;
+ this->repo_->config ()->get_string_value (this->section_key_,
+ "name",
+ name);
+
+ this->repo_->config ()->remove_section (this->repo_->wstrings_key (),
+ name.c_str (),
+ 0);
+}
+
+CORBA::TypeCode_ptr
+TAO_WstringDef_i::type (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->type_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+CORBA::TypeCode_ptr
+TAO_WstringDef_i::type_i (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ CORBA::ULong bound = this->bound_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (CORBA::TypeCode::_nil ());
+
+ return this->repo_->tc_factory ()->create_wstring_tc (bound
+ ACE_ENV_ARG_PARAMETER);
+}
+CORBA::ULong
+TAO_WstringDef_i::bound (ACE_ENV_SINGLE_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_READ_GUARD_RETURN (0);
+
+ return this->bound_i (ACE_ENV_SINGLE_ARG_PARAMETER);
+}
+
+
+CORBA::ULong
+TAO_WstringDef_i::bound_i (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ u_int retval = 0;
+ this->repo_->config ()->get_integer_value (this->section_key_,
+ "bound",
+ retval);
+
+ return ACE_static_cast (CORBA::ULong, retval);
+}
+
+void
+TAO_WstringDef_i::bound (CORBA::ULong bound
+ ACE_ENV_ARG_DECL)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ TAO_IFR_WRITE_GUARD;
+
+ this->bound_i (bound
+ ACE_ENV_ARG_PARAMETER);
+}
+
+void
+TAO_WstringDef_i::bound_i (CORBA::ULong bound
+ ACE_ENV_ARG_DECL_NOT_USED)
+ ACE_THROW_SPEC ((CORBA::SystemException))
+{
+ this->repo_->config ()->set_integer_value (this->section_key_,
+ "bound",
+ bound);
+}
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/WstringDef_i.h b/TAO/orbsvcs/orbsvcs/IFRService/WstringDef_i.h
new file mode 100644
index 00000000000..0a08db866ec
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/WstringDef_i.h
@@ -0,0 +1,111 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/orbsvcs/IFRService
+//
+// = FILENAME
+// WstringDef_i.h
+//
+// = DESCRIPTION
+// WstringDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_WSTRINGDEF_I_H
+#define TAO_WSTRINGDEF_I_H
+
+#include "IDLType_i.h"
+#include "ifr_service_export.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 */
+
+class TAO_IFRService_Export TAO_WstringDef_i : public virtual TAO_IDLType_i
+{
+ // = TITLE
+ // TAO_WstringDef_i
+ //
+ // = DESCRIPTION
+ // Represents a bounded wstring (unbounded wstrings
+ // are included in PrimitiveDef).
+ //
+public:
+ TAO_WstringDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor.
+
+ virtual ~TAO_WstringDef_i (void);
+ // Destructor.
+
+ virtual CORBA::DefinitionKind def_kind (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Return our definition kind.
+
+ virtual void destroy (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Remove the repository entry.
+
+ virtual void destroy_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::TypeCode_ptr type (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From IDLType_i's virtual function.
+
+ virtual CORBA::TypeCode_ptr type_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // From IDLType_i's virtual function.
+
+ virtual CORBA::ULong bound (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ CORBA::ULong bound_i (
+ ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void bound (
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ void bound_i (
+ CORBA::ULong bound
+ ACE_ENV_ARG_DECL_WITH_DEFAULTS)
+
+ ACE_THROW_SPEC ((CORBA::SystemException));
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_WSTRINGDEF_I_H */
+
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/concrete_classes.h b/TAO/orbsvcs/orbsvcs/IFRService/concrete_classes.h
new file mode 100644
index 00000000000..15a1b8dd947
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/concrete_classes.h
@@ -0,0 +1,54 @@
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/tests/Param_Test
+//
+// = FILENAME
+// concrete_classes.h
+//
+// = DESCRIPTION
+// All the concrete class header files needed by the servant locator.
+//
+// = AUTHORS
+// Jeff Parsons
+//
+// ============================================================================
+
+#ifndef CONCRETE_CLASSES_H
+#define CONCRETE_CLASSES_H
+
+#include "ComponentRepository_i.h"
+#include "PrimitiveDef_i.h"
+#include "StringDef_i.h"
+#include "WstringDef_i.h"
+#include "SequenceDef_i.h"
+#include "ArrayDef_i.h"
+#include "FixedDef_i.h"
+#include "EnumDef_i.h"
+#include "AliasDef_i.h"
+#include "NativeDef_i.h"
+#include "ValueBoxDef_i.h"
+#include "UnionDef_i.h"
+#include "StructDef_i.h"
+#include "ConsumesDef_i.h"
+#include "PublishesDef_i.h"
+#include "EmitsDef_i.h"
+#include "PrimaryKeyDef_i.h"
+#include "ProvidesDef_i.h"
+#include "UsesDef_i.h"
+#include "ValueMemberDef_i.h"
+#include "FactoryDef_i.h"
+#include "FinderDef_i.h"
+#include "AttributeDef_i.h"
+#include "ConstantDef_i.h"
+#include "ComponentDef_i.h"
+#include "HomeDef_i.h"
+#include "ValueDef_i.h"
+#include "ExceptionDef_i.h"
+#include "ModuleDef_i.h"
+#include "AbstractInterfaceDef_i.h"
+#include "LocalInterfaceDef_i.h"
+
+#endif /* CONCRETE_CLASSES_H */
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/ifr_service_export.h b/TAO/orbsvcs/orbsvcs/IFRService/ifr_service_export.h
new file mode 100644
index 00000000000..bdfebe872d4
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/ifr_service_export.h
@@ -0,0 +1,34 @@
+
+// -*- C++ -*-
+// $Id$
+// Definition for Win32 Export directives.
+// This file is generated automatically by generate_export_file.pl
+// ------------------------------
+#ifndef TAO_IFRSERVICE_EXPORT_H
+#define TAO_IFRSERVICE_EXPORT_H
+
+#include "ace/config-all.h"
+
+#if !defined (TAO_IFRSERVICE_HAS_DLL)
+# define TAO_IFRSERVICE_HAS_DLL 1
+#endif /* ! TAO_IFRSERVICE_HAS_DLL */
+
+#if defined (TAO_IFRSERVICE_HAS_DLL) && (TAO_IFRSERVICE_HAS_DLL == 1)
+# if defined (TAO_IFRSERVICE_BUILD_DLL)
+# define TAO_IFRService_Export ACE_Proper_Export_Flag
+# define TAO_IFRSERVICE_SINGLETON_DECLARATION(T) ACE_EXPORT_SINGLETON_DECLARATION (T)
+# define TAO_IFRSERVICE_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# else /* TAO_IFRSERVICE_BUILD_DLL */
+# define TAO_IFRService_Export ACE_Proper_Import_Flag
+# define TAO_IFRSERVICE_SINGLETON_DECLARATION(T) ACE_IMPORT_SINGLETON_DECLARATION (T)
+# define TAO_IFRSERVICE_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# endif /* TAO_IFRSERVICE_BUILD_DLL */
+#else /* TAO_IFRSERVICE_HAS_DLL == 1 */
+# define TAO_IFRService_Export
+# define TAO_IFRSERVICE_SINGLETON_DECLARATION(T)
+# define TAO_IFRSERVICE_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+#endif /* TAO_IFRSERVICE_HAS_DLL == 1 */
+
+#endif /* TAO_IFRSERVICE_EXPORT_H */
+
+// End of auto generated file.
diff --git a/TAO/orbsvcs/orbsvcs/IFRService/tmplinst.cpp b/TAO/orbsvcs/orbsvcs/IFRService/tmplinst.cpp
new file mode 100644
index 00000000000..888c361be35
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/IFRService/tmplinst.cpp
@@ -0,0 +1,250 @@
+// $Id$
+
+#include "concrete_classes.h"
+#include "ace/Auto_Ptr.h"
+
+ACE_RCSID(IFR_Service, tmplinst, "$Id$")
+
+#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION)
+
+template class ACE_Node<CORBA::DefinitionKind>;
+template class ACE_Unbounded_Queue<CORBA::DefinitionKind>;
+template class ACE_Unbounded_Queue_Iterator<CORBA::DefinitionKind>;
+template class ACE_Node<ACE_Configuration_Section_Key>;
+template class ACE_Unbounded_Queue<ACE_Configuration_Section_Key>;
+template class ACE_Unbounded_Queue_Iterator<ACE_Configuration_Section_Key>;
+
+template class POA_CORBA_Repository_tie<TAO_Repository_i>;
+template class POA_IR::ComponentRepository_tie<TAO_ComponentRepository_i>;
+template class POA_CORBA_PrimitiveDef_tie<TAO_PrimitiveDef_i>;
+template class POA_CORBA_StringDef_tie<TAO_StringDef_i>;
+template class POA_CORBA_WstringDef_tie<TAO_WstringDef_i>;
+template class POA_CORBA_SequenceDef_tie<TAO_SequenceDef_i>;
+template class POA_CORBA_ArrayDef_tie<TAO_ArrayDef_i>;
+template class POA_CORBA_FixedDef_tie<TAO_FixedDef_i>;
+template class POA_CORBA_EnumDef_tie<TAO_EnumDef_i>;
+template class POA_CORBA_AliasDef_tie<TAO_AliasDef_i>;
+template class POA_CORBA_NativeDef_tie<TAO_NativeDef_i>;
+template class POA_CORBA_ValueBoxDef_tie<TAO_ValueBoxDef_i>;
+template class POA_CORBA_UnionDef_tie<TAO_UnionDef_i>;
+template class POA_CORBA_StructDef_tie<TAO_StructDef_i>;
+template class POA_IR::ConsumesDef_tie<TAO_ConsumesDef_i>;
+template class POA_IR::PublishesDef_tie<TAO_PublishesDef_i>;
+template class POA_IR::EmitsDef_tie<TAO_EmitsDef_i>;
+template class POA_IR::PrimaryKeyDef_tie<TAO_PrimaryKeyDef_i>;
+template class POA_IR::ProvidesDef_tie<TAO_ProvidesDef_i>;
+template class POA_IR::UsesDef_tie<TAO_UsesDef_i>;
+template class POA_CORBA_ValueMemberDef_tie<TAO_ValueMemberDef_i>;
+template class POA_IR::FactoryDef_tie<TAO_FactoryDef_i>;
+template class POA_IR::FinderDef_tie<TAO_FinderDef_i>;
+template class POA_CORBA_AttributeDef_tie<TAO_AttributeDef_i>;
+template class POA_CORBA_ConstantDef_tie<TAO_ConstantDef_i>;
+template class POA_IR::ComponentDef_tie<TAO_ComponentDef_i>;
+template class POA_IR::HomeDef_tie<TAO_HomeDef_i>;
+template class POA_CORBA_ValueDef_tie<TAO_ValueDef_i>;
+template class POA_CORBA_ExceptionDef_tie<TAO_ExceptionDef_i>;
+template class POA_CORBA_ModuleDef_tie<TAO_ModuleDef_i>;
+template class POA_CORBA_OperationDef_tie<TAO_OperationDef_i>;
+template class POA_CORBA_InterfaceDef_tie<TAO_InterfaceDef_i>;
+template class POA_CORBA_AbstractInterfaceDef_tie<TAO_AbstractInterfaceDef_i>;
+template class POA_CORBA_LocalInterfaceDef_tie<TAO_LocalInterfaceDef_i>;
+
+template class auto_ptr<TAO_Repository_i>;
+template class ACE_Auto_Basic_Ptr<TAO_Repository_i>;
+template class auto_ptr<TAO_ComponentRepository_i>;
+template class ACE_Auto_Basic_Ptr<TAO_ComponentRepository_i>;
+template class auto_ptr<TAO_PrimitiveDef_i>;
+template class ACE_Auto_Basic_Ptr<TAO_PrimitiveDef_i>;
+template class auto_ptr<TAO_StringDef_i>;
+template class ACE_Auto_Basic_Ptr<TAO_StringDef_i>;
+template class auto_ptr<TAO_WstringDef_i>;
+template class ACE_Auto_Basic_Ptr<TAO_WstringDef_i>;
+template class auto_ptr<TAO_SequenceDef_i>;
+template class ACE_Auto_Basic_Ptr<TAO_SequenceDef_i>;
+template class auto_ptr<TAO_ArrayDef_i>;
+template class ACE_Auto_Basic_Ptr<TAO_ArrayDef_i>;
+template class auto_ptr<TAO_FixedDef_i>;
+template class ACE_Auto_Basic_Ptr<TAO_FixedDef_i>;
+template class auto_ptr<TAO_EnumDef_i>;
+template class ACE_Auto_Basic_Ptr<TAO_EnumDef_i>;
+template class auto_ptr<TAO_AliasDef_i>;
+template class ACE_Auto_Basic_Ptr<TAO_AliasDef_i>;
+template class auto_ptr<TAO_NativeDef_i>;
+template class ACE_Auto_Basic_Ptr<TAO_NativeDef_i>;
+template class auto_ptr<TAO_ValueBoxDef_i>;
+template class ACE_Auto_Basic_Ptr<TAO_ValueBoxDef_i>;
+template class auto_ptr<TAO_UnionDef_i>;
+template class ACE_Auto_Basic_Ptr<TAO_UnionDef_i>;
+template class auto_ptr<TAO_StructDef_i>;
+template class ACE_Auto_Basic_Ptr<TAO_StructDef_i>;
+template class auto_ptr<TAO_ConsumesDef_i>;
+template class ACE_Auto_Basic_Ptr<TAO_ConsumesDef_i>;
+template class auto_ptr<TAO_PublishesDef_i>;
+template class ACE_Auto_Basic_Ptr<TAO_PublishesDef_i>;
+template class auto_ptr<TAO_EmitsDef_i>;
+template class ACE_Auto_Basic_Ptr<TAO_EmitsDef_i>;
+template class auto_ptr<TAO_PrimaryKeyDef_i>;
+template class ACE_Auto_Basic_Ptr<TAO_PrimaryKeyDef_i>;
+template class auto_ptr<TAO_ProvidesDef_i>;
+template class ACE_Auto_Basic_Ptr<TAO_ProvidesDef_i>;
+template class auto_ptr<TAO_UsesDef_i>;
+template class ACE_Auto_Basic_Ptr<TAO_UsesDef_i>;
+template class auto_ptr<TAO_ValueMemberDef_i>;
+template class ACE_Auto_Basic_Ptr<TAO_ValueMemberDef_i>;
+template class auto_ptr<TAO_FactoryDef_i>;
+template class ACE_Auto_Basic_Ptr<TAO_FactoryDef_i>;
+template class auto_ptr<TAO_FinderDef_i>;
+template class ACE_Auto_Basic_Ptr<TAO_FinderDef_i>;
+template class auto_ptr<TAO_AttributeDef_i>;
+template class ACE_Auto_Basic_Ptr<TAO_AttributeDef_i>;
+template class auto_ptr<TAO_ConstantDef_i>;
+template class ACE_Auto_Basic_Ptr<TAO_ConstantDef_i>;
+template class auto_ptr<TAO_ComponentDef_i>;
+template class ACE_Auto_Basic_Ptr<TAO_ComponentDef_i>;
+template class auto_ptr<TAO_HomeDef_i>;
+template class ACE_Auto_Basic_Ptr<TAO_HomeDef_i>;
+template class auto_ptr<TAO_ValueDef_i>;
+template class ACE_Auto_Basic_Ptr<TAO_ValueDef_i>;
+template class auto_ptr<TAO_ExceptionDef_i>;
+template class ACE_Auto_Basic_Ptr<TAO_ExceptionDef_i>;
+template class auto_ptr<TAO_ModuleDef_i>;
+template class ACE_Auto_Basic_Ptr<TAO_ModuleDef_i>;
+template class auto_ptr<TAO_OperationDef_i>;
+template class ACE_Auto_Basic_Ptr<TAO_OperationDef_i>;
+template class auto_ptr<TAO_InterfaceDef_i>;
+template class ACE_Auto_Basic_Ptr<TAO_InterfaceDef_i>;
+template class auto_ptr<TAO_AbstractInterfaceDef_i>;
+template class ACE_Auto_Basic_Ptr<TAO_AbstractInterfaceDef_i>;
+template class auto_ptr<TAO_LocalInterfaceDef_i>;
+template class ACE_Auto_Basic_Ptr<TAO_LocalInterfaceDef_i>;
+template class auto_ptr<TAO_Container_i>;
+template class ACE_Auto_Basic_Ptr<TAO_Container_i>;
+template class auto_ptr<TAO_Contained_i>;
+template class ACE_Auto_Basic_Ptr<TAO_Contained_i>;
+template class auto_ptr<TAO_IDLType_i>;
+template class ACE_Auto_Basic_Ptr<TAO_IDLType_i>;
+
+template class ACE_Auto_Basic_Ptr<char>;
+
+#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA)
+
+#pragma instantiate ACE_Node<CORBA::DefinitionKind>
+#pragma instantiate ACE_Unbounded_Queue<CORBA::DefinitionKind>
+#pragma instantiate ACE_Unbounded_Queue_Iterator<CORBA::DefinitionKind>
+#pragma instantiate ACE_Node<ACE_Configuration_Section_Key>
+#pragma instantiate ACE_Unbounded_Queue<ACE_Configuration_Section_Key>
+#pragma instantiate ACE_Unbounded_Queue_Iterator<ACE_Configuration_Section_Key>
+
+#pragma instantiate POA_CORBA_Repository_tie<TAO_Repository_i>
+#pragma instantiate POA_IR::ComponentRepository_tie<TAO_ComponentRepository_i>
+#pragma instantiate POA_CORBA_PrimitiveDef_tie<TAO_PrimitiveDef_i>
+#pragma instantiate POA_CORBA_StringDef_tie<TAO_StringDef_i>
+#pragma instantiate POA_CORBA_WstringDef_tie<TAO_WstringDef_i>
+#pragma instantiate POA_CORBA_SequenceDef_tie<TAO_SequenceDef_i>
+#pragma instantiate POA_CORBA_ArrayDef_tie<TAO_ArrayDef_i>
+#pragma instantiate POA_CORBA_FixedDef_tie<TAO_FixedDef_i>
+#pragma instantiate POA_CORBA_EnumDef_tie<TAO_EnumDef_i>
+#pragma instantiate POA_CORBA_AliasDef_tie<TAO_AliasDef_i>
+#pragma instantiate POA_CORBA_NativeDef_tie<TAO_NativeDef_i>
+#pragma instantiate POA_CORBA_ValueBoxDef_tie<TAO_ValueBoxDef_i>
+#pragma instantiate POA_CORBA_UnionDef_tie<TAO_UnionDef_i>
+#pragma instantiate POA_CORBA_StructDef_tie<TAO_StructDef_i>
+#pragma instantiate POA_IR::ConsumesDef_tie<TAO_ConsumesDef_i>
+#pragma instantiate POA_IR::PublishesDef_tie<TAO_PublishesDef_i>
+#pragma instantiate POA_IR::EmitsDef_tie<TAO_EmitsDef_i>
+#pragma instantiate POA_IR::PrimaryKeyDef_tie<TAO_PrimaryKeyDef_i>
+#pragma instantiate POA_IR::ProvidesDef_tie<TAO_ProvidesDef_i>
+#pragma instantiate POA_IR::UsesDef_tie<TAO_UsesDef_i>
+#pragma instantiate POA_CORBA_ValueMemberDef_tie<TAO_ValueMemberDef_i>
+#pragma instantiate POA_IR::FactoryDef_tie<TAO_FactoryDef_i>
+#pragma instantiate POA_IR::FinderDef_tie<TAO_FinderDef_i>
+#pragma instantiate POA_CORBA_AttributeDef_tie<TAO_AttributeDef_i>
+#pragma instantiate POA_CORBA_ConstantDef_tie<TAO_ConstantDef_i>
+#pragma instantiate POA_IR::ComponentDef_tie<TAO_ComponentDef_i>
+#pragma instantiate POA_IR::HomeDef_tie<TAO_HomeDef_i>
+#pragma instantiate POA_CORBA_ValueDef_tie<TAO_ValueDef_i>
+#pragma instantiate POA_CORBA_ExceptionDef_tie<TAO_ExceptionDef_i>
+#pragma instantiate POA_CORBA_ModuleDef_tie<TAO_ModuleDef_i>
+#pragma instantiate POA_CORBA_OperationDef_tie<TAO_OperationDef_i>
+#pragma instantiate POA_CORBA_InterfaceDef_tie<TAO_>
+#pragma instantiate POA_CORBA_AbstractInterfaceDef_tie<TAO_AbstractInterfaceDef_i>
+#pragma instantiate POA_CORBA_LocalInterfaceDef_tie<TAO_LocalInterfaceDef_i>
+
+#pragma instantiate auto_ptr<TAO_Repository_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_Repository_i>
+#pragma instantiate auto_ptr<TAO_ComponentRepository_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_ComponentRepository_i>
+#pragma instantiate auto_ptr<TAO_PrimitiveDef_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_PrimitiveDef_i>
+#pragma instantiate auto_ptr<TAO_StringDef_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_StringDef_i>
+#pragma instantiate auto_ptr<TAO_WstringDef_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_WstringDef_i>
+#pragma instantiate auto_ptr<TAO_SequenceDef_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_SequenceDef_i>
+#pragma instantiate auto_ptr<TAO_ArrayDef_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_ArrayDef_i>
+#pragma instantiate auto_ptr<TAO_FixedDef_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_FixedDef_i>
+#pragma instantiate auto_ptr<TAO_EnumDef_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_EnumDef_i>
+#pragma instantiate auto_ptr<TAO_AliasDef_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_AliasDef_i>
+#pragma instantiate auto_ptr<TAO_NativeDef_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_NativeDef_i>
+#pragma instantiate auto_ptr<TAO_ValueBoxDef_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_ValueBoxDef_i>
+#pragma instantiate auto_ptr<TAO_UnionDef_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_UnionDef_i>
+#pragma instantiate auto_ptr<TAO_StructDef_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_StructDef_i>
+#pragma instantiate auto_ptr<TAO_ConsumesDef_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_ConsumesDef_i>
+#pragma instantiate auto_ptr<TAO_PublishesDef_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_PublishesDef_i>
+#pragma instantiate auto_ptr<TAO_EmitsDef_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_EmitsDef_i>
+#pragma instantiate auto_ptr<TAO_PrimaryKeyDef_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_PrimaryKeyDef_i>
+#pragma instantiate auto_ptr<TAO_ProvidesDef_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_ProvidesDef_i>
+#pragma instantiate auto_ptr<TAO_UsesDef_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_UsesDef_i>
+#pragma instantiate auto_ptr<TAO_ValueMemberDef_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_ValueMemberDef_i>
+#pragma instantiate auto_ptr<TAO_FactoryDef_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_FactoryDef_i>
+#pragma instantiate auto_ptr<TAO_FinderDef_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_FinderDef_i>
+#pragma instantiate auto_ptr<TAO_AttributeDef_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_AttributeDef_i>
+#pragma instantiate auto_ptr<TAO_ConstantDef_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_ConstantDef_i>
+#pragma instantiate auto_ptr<TAO_ComponentDef_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_ComponentDef_i>
+#pragma instantiate auto_ptr<TAO_HomeDef_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_HomeDef_i>
+#pragma instantiate auto_ptr<TAO_ValueDef_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_ValueDef_i>
+#pragma instantiate auto_ptr<TAO_ExceptionDef_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_ExceptionDef_i>
+#pragma instantiate auto_ptr<TAO_ModuleDef_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_ModuleDef_i>
+#pragma instantiate auto_ptr<TAO_OperationDef_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_OperationDef_i>
+#pragma instantiate auto_ptr<TAO_InterfaceDef_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_InterfaceDef_i>
+#pragma instantiate auto_ptr<TAO_AbstractInterfaceDef_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_AbstractInterfaceDef_i>
+#pragma instantiate auto_ptr<TAO_LocalInterfaceDef_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_LocalInterfaceDef_i>
+#pragma instantiate auto_ptr<TAO_Container_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_Container_i>
+#pragma instantiate auto_ptr<TAO_Contained_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_Contained_i>
+#pragma instantiate auto_ptr<TAO_IDLType_i>
+#pragma instantiate ACE_Auto_Basic_Ptr<TAO_IDLType_i>
+
+#pragma instantiate ACE_Auto_Basic_Ptr<char>
+
+#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */