00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef TAO_IOR_MANIPULATION_H
00021 #define TAO_IOR_MANIPULATION_H
00022
00023 #include "ace/pre.h"
00024
00025 #include "tao/LocalObject.h"
00026 #include "tao/IORManipulation/IORManip_Loader.h"
00027
00028 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00029 # pragma once
00030 #endif
00031
00032 #include "tao/IORManipulation/IORC.h"
00033
00034 #if defined(_MSC_VER)
00035 #pragma warning(push)
00036 #pragma warning(disable:4250)
00037 #endif
00038
00039 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00040
00041 class TAO_IOR_Manipulation_impl
00042 : public TAO_IOP::TAO_IOR_Manipulation,
00043 public TAO_Local_RefCounted_Object
00044 {
00045
00046
00047
00048
00049
00050
00051 public:
00052
00053 TAO_IOR_Manipulation_impl (void);
00054
00055
00056 virtual CORBA::Object_ptr merge_iors (
00057 const TAO_IOP::TAO_IOR_Manipulation::IORList & iors
00058 ACE_ENV_ARG_DECL_WITH_DEFAULTS)
00059 ACE_THROW_SPEC ((
00060 CORBA::SystemException,
00061 TAO_IOP::EmptyProfileList,
00062 TAO_IOP::Duplicate,
00063 TAO_IOP::Invalid_IOR
00064 ));
00065
00066 virtual CORBA::Object_ptr add_profiles (
00067 CORBA::Object_ptr ior1,
00068 CORBA::Object_ptr ior2
00069 ACE_ENV_ARG_DECL_WITH_DEFAULTS)
00070 ACE_THROW_SPEC ((
00071 CORBA::SystemException,
00072 TAO_IOP::EmptyProfileList,
00073 TAO_IOP::Duplicate,
00074 TAO_IOP::Invalid_IOR
00075 ));
00076
00077 virtual CORBA::Object_ptr remove_profiles (
00078 CORBA::Object_ptr group,
00079 CORBA::Object_ptr ior2
00080 ACE_ENV_ARG_DECL_WITH_DEFAULTS)
00081 ACE_THROW_SPEC ((
00082 CORBA::SystemException,
00083 TAO_IOP::Invalid_IOR,
00084 TAO_IOP::EmptyProfileList,
00085 TAO_IOP::NotFound
00086 ));
00087
00088 virtual CORBA::Boolean set_property (
00089 TAO_IOP::TAO_IOR_Property_ptr prop,
00090 CORBA::Object_ptr group
00091 ACE_ENV_ARG_DECL_WITH_DEFAULTS)
00092
00093 ACE_THROW_SPEC ((
00094 CORBA::SystemException,
00095 TAO_IOP::Invalid_IOR,
00096 TAO_IOP::Duplicate
00097 ));
00098
00099
00100 virtual CORBA::Boolean set_primary (
00101 TAO_IOP::TAO_IOR_Property_ptr prop,
00102 CORBA::Object_ptr new_primary,
00103 CORBA::Object_ptr group
00104 ACE_ENV_ARG_DECL_WITH_DEFAULTS)
00105
00106 ACE_THROW_SPEC ((
00107 CORBA::SystemException,
00108 TAO_IOP::Invalid_IOR,
00109 TAO_IOP::Duplicate,
00110 TAO_IOP::MultiProfileList
00111 ));
00112
00113 virtual CORBA::Object_ptr get_primary (
00114 TAO_IOP::TAO_IOR_Property_ptr prop,
00115 CORBA::Object_ptr group
00116 ACE_ENV_ARG_DECL_WITH_DEFAULTS)
00117
00118 ACE_THROW_SPEC ((
00119 CORBA::SystemException,
00120 TAO_IOP::NotFound
00121 ));
00122
00123 virtual CORBA::Boolean is_primary_set (
00124 TAO_IOP::TAO_IOR_Property_ptr prop,
00125 CORBA::Object_ptr group
00126 ACE_ENV_ARG_DECL_WITH_DEFAULTS)
00127
00128 ACE_THROW_SPEC ((
00129 CORBA::SystemException
00130 ));
00131
00132 virtual CORBA::Boolean remove_primary_tag (
00133 TAO_IOP::TAO_IOR_Property_ptr prop,
00134 CORBA::Object_ptr iogr
00135 ACE_ENV_ARG_DECL_WITH_DEFAULTS)
00136 ACE_THROW_SPEC ((
00137 CORBA::SystemException
00138 ));
00139
00140 virtual CORBA::ULong is_in_ior (
00141 CORBA::Object_ptr ior1,
00142 CORBA::Object_ptr ior2
00143 ACE_ENV_ARG_DECL_WITH_DEFAULTS)
00144 ACE_THROW_SPEC ((
00145 CORBA::SystemException,
00146 TAO_IOP::NotFound
00147 ));
00148
00149 virtual CORBA::ULong get_profile_count (
00150 CORBA::Object_ptr group
00151 ACE_ENV_ARG_DECL_WITH_DEFAULTS)
00152 ACE_THROW_SPEC ((
00153 CORBA::SystemException,
00154 TAO_IOP::EmptyProfileList
00155 ));
00156
00157 protected:
00158
00159 ~TAO_IOR_Manipulation_impl (void);
00160
00161
00162 };
00163
00164 TAO_END_VERSIONED_NAMESPACE_DECL
00165
00166 #if defined(_MSC_VER)
00167 #pragma warning(pop)
00168 #endif
00169
00170 #include "ace/post.h"
00171
00172 #endif