summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CIAO/ChangeLog8
-rw-r--r--CIAO/ciao/Contexts/Extension/ExtensionContext.cpp98
-rw-r--r--CIAO/ciao/Contexts/Extension/ExtensionContext_T.cpp77
-rw-r--r--CIAO/ciao/Contexts/Extension/ExtensionContext_T.h (renamed from CIAO/ciao/Contexts/Extension/ExtensionContext.h)44
4 files changed, 105 insertions, 122 deletions
diff --git a/CIAO/ChangeLog b/CIAO/ChangeLog
index 2a5f5e4e11c..7f5e6932bc5 100644
--- a/CIAO/ChangeLog
+++ b/CIAO/ChangeLog
@@ -1,3 +1,11 @@
+Tue Sep 21 10:22:45 UTC 2010 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * ciao/Contexts/Extension/ExtensionContext_T.h:
+ * ciao/Contexts/Extension/ExtensionContext_T.cpp:
+ * ciao/Contexts/Extension/ExtensionContext.h:
+ * ciao/Contexts/Extension/ExtensionContext.cpp:
+ Renamed to _T and converted to a C++ template
+
Tue Sep 21 07:06:44 UTC 2010 Johnny Willemsen <jwillemsen@remedy.nl>
* ciao/Contexts/Context_Impl_Base.h:
diff --git a/CIAO/ciao/Contexts/Extension/ExtensionContext.cpp b/CIAO/ciao/Contexts/Extension/ExtensionContext.cpp
deleted file mode 100644
index 7592e2b97d2..00000000000
--- a/CIAO/ciao/Contexts/Extension/ExtensionContext.cpp
+++ /dev/null
@@ -1,98 +0,0 @@
-// $Id$
-
-#include "ExtensionContext.h"
-
-namespace CIAO
-{
- ExtensionContext_Impl::ExtensionContext_Impl (Components::CCMHome_ptr home,
- Session_Container * c)
- : CIAO::Context_Impl_Base (home, c)
- {
- }
-
- ExtensionContext_Impl::~ExtensionContext_Impl (void)
- {
- }
-
- ::Components::ContainerPortableInterceptor::ClientContainerInterceptorRegistration_ptr
- ExtensionContext_Impl::get_client_interceptor_registration (void)
- {
- throw CORBA::NO_IMPLEMENT ();
- }
-
- ::Components::ContainerPortableInterceptor::ServerContainerInterceptorRegistration_ptr
- ExtensionContext_Impl::get_server_interceptor_registration (void)
- {
- throw CORBA::NO_IMPLEMENT ();
- }
-
- ::Components::ContainerPortableInterceptor::StubContainerInterceptorRegistration_ptr
- ExtensionContext_Impl::get_stub_interceptor_registration (void)
- {
- throw CORBA::NO_IMPLEMENT ();
- }
-
- ::Components::ContainerPortableInterceptor::ServantContainerInterceptorRegistration_ptr
- ExtensionContext_Impl::get_servant_interceptor_registration (void)
- {
- throw CORBA::NO_IMPLEMENT ();
- }
-
- ::Components::Cookie *
- ExtensionContext_Impl::install_service_reference (
- const char * /*service_id*/,
- ::CORBA::Object_ptr /*objref*/)
- {
- throw CORBA::NO_IMPLEMENT ();
- }
-
- ::CORBA::Object_ptr
- ExtensionContext_Impl::uninstall_service_reference (::Components::Cookie * /*ck*/)
- {
- throw CORBA::NO_IMPLEMENT ();
- }
-
- // Operations from ::Components::CCMContext.
-
- Components::Principal_ptr
- ExtensionContext_Impl::get_caller_principal (void)
- {
- return CIAO::Context_Impl_Base::get_caller_principal ();
- }
-
- Components::CCMHome_ptr
- ExtensionContext_Impl::get_CCM_home (void)
- {
- return CIAO::Context_Impl_Base::get_CCM_home ();
- }
-
- CORBA::Boolean
- ExtensionContext_Impl::get_rollback_only (void)
- {
- return CIAO::Context_Impl_Base::get_rollback_only ();
- }
-
- Components::Transaction::UserTransaction_ptr
- ExtensionContext_Impl::get_user_transaction (void)
- {
- return CIAO::Context_Impl_Base::get_user_transaction ();
- }
-
- CORBA::Boolean
- ExtensionContext_Impl::is_caller_in_role (const char * role)
- {
- return CIAO::Context_Impl_Base::is_caller_in_role (role);
- }
-
- void
- ExtensionContext_Impl::set_rollback_only (void)
- {
- CIAO::Context_Impl_Base::set_rollback_only ();
- }
-
- CORBA::Object_ptr
- ExtensionContext_Impl::resolve_service_reference(const char *service_id)
- {
- return CIAO::Context_Impl_Base::resolve_service_reference (service_id);
- }
-}
diff --git a/CIAO/ciao/Contexts/Extension/ExtensionContext_T.cpp b/CIAO/ciao/Contexts/Extension/ExtensionContext_T.cpp
new file mode 100644
index 00000000000..9735627ddb5
--- /dev/null
+++ b/CIAO/ciao/Contexts/Extension/ExtensionContext_T.cpp
@@ -0,0 +1,77 @@
+// $Id$
+
+#ifndef CIAO_EXTENSION_CONTEXT_IMPL_T_C
+#define CIAO_EXTENSION_CONTEXT_IMPL_T_C
+
+namespace CIAO
+{
+ template <typename BASE_CTX,
+ typename COMP>
+ ExtensionContext_Impl<BASE_CTX, COMP>::ExtensionContext_Impl (
+ Components::CCMHome_ptr the_home,
+ Container_ptr c,
+ PortableServer::Servant sv,
+ const char* id)
+ : Context_Impl_Base (the_home, c, id),
+ servant_ (sv)
+ {
+ }
+
+ template <typename BASE_CTX,
+ typename COMP>
+ ExtensionContext_Impl<BASE_CTX, COMP>::~ExtensionContext_Impl (void)
+ {
+ }
+
+ template <typename BASE_CTX,
+ typename COMP>
+ ::Components::ContainerPortableInterceptor::ClientContainerInterceptorRegistration_ptr
+ ExtensionContext_Impl<BASE_CTX, COMP>::get_client_interceptor_registration (void)
+ {
+ throw CORBA::NO_IMPLEMENT ();
+ }
+
+ template <typename BASE_CTX,
+ typename COMP>
+ ::Components::ContainerPortableInterceptor::ServerContainerInterceptorRegistration_ptr
+ ExtensionContext_Impl<BASE_CTX, COMP>::get_server_interceptor_registration (void)
+ {
+ throw CORBA::NO_IMPLEMENT ();
+ }
+
+ template <typename BASE_CTX,
+ typename COMP>
+ ::Components::ContainerPortableInterceptor::StubContainerInterceptorRegistration_ptr
+ ExtensionContext_Impl<BASE_CTX, COMP>::get_stub_interceptor_registration (void)
+ {
+ throw CORBA::NO_IMPLEMENT ();
+ }
+
+ template <typename BASE_CTX,
+ typename COMP>
+ ::Components::ContainerPortableInterceptor::ServantContainerInterceptorRegistration_ptr
+ ExtensionContext_Impl<BASE_CTX, COMP>::get_servant_interceptor_registration (void)
+ {
+ throw CORBA::NO_IMPLEMENT ();
+ }
+
+ template <typename BASE_CTX,
+ typename COMP>
+ ::Components::Cookie *
+ ExtensionContext_Impl<BASE_CTX, COMP>::install_service_reference (
+ const char * /*service_id*/,
+ ::CORBA::Object_ptr /*objref*/)
+ {
+ throw CORBA::NO_IMPLEMENT ();
+ }
+
+ template <typename BASE_CTX,
+ typename COMP>
+ ::CORBA::Object_ptr
+ ExtensionContext_Impl<BASE_CTX, COMP>::uninstall_service_reference (::Components::Cookie * /*ck*/)
+ {
+ throw CORBA::NO_IMPLEMENT ();
+ }
+}
+
+#endif /* CIAO_EXTENSION_CONTEXT_IMPL_T_C */ \ No newline at end of file
diff --git a/CIAO/ciao/Contexts/Extension/ExtensionContext.h b/CIAO/ciao/Contexts/Extension/ExtensionContext_T.h
index 44d86033f53..7f725253812 100644
--- a/CIAO/ciao/Contexts/Extension/ExtensionContext.h
+++ b/CIAO/ciao/Contexts/Extension/ExtensionContext_T.h
@@ -40,38 +40,32 @@ namespace Components
namespace CIAO
{
- class CIAO_SERVER_Export ExtensionContext_Impl
- : public virtual Components::ExtensionContext,
- public virtual CIAO::Context_Impl_Base
+ template <typename BASE_CTX>
+ typename COMP>
+ class ExtensionContext_Impl
+ : public virtual BASE_CTX,
+ public virtual ::CIAO::Context_Impl_Base,
+ public virtual ::CORBA::LocalObject
{
public:
- ExtensionContext_Impl(Components::CCMHome_ptr home, Session_Container * c);
+ ExtensionContext_Impl(Components::CCMHome_ptr home,
+ Session_Container * c,
+ PortableServer::Servant sv,
+ const char* id);
virtual ~ExtensionContext_Impl (void);
- // Operations from ::Components::CCMContext.
+ virtual ::Components::ContainerPortableInterceptor::ClientContainerInterceptorRegistration_ptr
+ get_client_interceptor_registration (void);
- virtual Components::Principal_ptr get_caller_principal (void);
+ virtual ::Components::ContainerPortableInterceptor::ServerContainerInterceptorRegistration_ptr
+ get_server_interceptor_registration (void);
- virtual Components::CCMHome_ptr get_CCM_home (void);
+ virtual ::Components::ContainerPortableInterceptor::StubContainerInterceptorRegistration_ptr
+ get_stub_interceptor_registration (void);
- virtual CORBA::Boolean get_rollback_only (void);
-
- virtual Components::Transaction::UserTransaction_ptr get_user_transaction (void);
-
- virtual CORBA::Boolean is_caller_in_role (const char *role);
-
- virtual void set_rollback_only (void);
-
- virtual CORBA::Object_ptr resolve_service_reference(const char *service_id);
-
- virtual ::Components::ContainerPortableInterceptor::ClientContainerInterceptorRegistration_ptr get_client_interceptor_registration (void);
-
- virtual ::Components::ContainerPortableInterceptor::ServerContainerInterceptorRegistration_ptr get_server_interceptor_registration (void);
-
- virtual ::Components::ContainerPortableInterceptor::StubContainerInterceptorRegistration_ptr get_stub_interceptor_registration (void);
-
- virtual ::Components::ContainerPortableInterceptor::ServantContainerInterceptorRegistration_ptr get_servant_interceptor_registration (void);
+ virtual ::Components::ContainerPortableInterceptor::ServantContainerInterceptorRegistration_ptr
+ get_servant_interceptor_registration (void);
virtual ::Components::Cookie * install_service_reference (
const char * service_id,
@@ -82,6 +76,8 @@ namespace CIAO
private:
ExtensionContext_Impl (void);
+ PortableServer::Servant servant_;
+ typename COMP::_var_type component_;
};
}