summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--extensions/source/logging/log_module.cxx19
-rw-r--r--extensions/source/logging/log_module.hxx50
-rw-r--r--extensions/source/logging/log_services.cxx7
-rw-r--r--extensions/source/oooimprovecore/core.cxx1
-rw-r--r--extensions/source/oooimprovecore/oooimprovecore_module.cxx19
-rw-r--r--extensions/source/oooimprovecore/oooimprovecore_module.hxx51
-rw-r--r--extensions/source/oooimprovecore/oooimprovecore_services.cxx7
7 files changed, 147 insertions, 7 deletions
diff --git a/extensions/source/logging/log_module.cxx b/extensions/source/logging/log_module.cxx
index 5cdf5e737..8fbdb094a 100644
--- a/extensions/source/logging/log_module.cxx
+++ b/extensions/source/logging/log_module.cxx
@@ -36,7 +36,24 @@ namespace logging
{
//........................................................................
- IMPLEMENT_COMPONENT_MODULE( LogModule );
+ struct LogModuleCreator
+ {
+ LogModule m_aLogModule;
+ };
+ namespace
+ {
+ class theLogModuleInstance : public rtl::Static<LogModuleCreator, theLogModuleInstance> {};
+ }
+
+ LogModule::LogModule()
+ :BaseClass()
+ {
+ }
+
+ LogModule& LogModule::getInstance()
+ {
+ return theLogModuleInstance::get().m_aLogModule;
+ }
//........................................................................
} // namespace logging
diff --git a/extensions/source/logging/log_module.hxx b/extensions/source/logging/log_module.hxx
index dbc06816c..7f825dabf 100644
--- a/extensions/source/logging/log_module.hxx
+++ b/extensions/source/logging/log_module.hxx
@@ -36,7 +36,55 @@ namespace logging
{
//........................................................................
- DECLARE_COMPONENT_MODULE( LogModule, LogModuleClient )
+ class LogModule : public ::comphelper::OModule
+ {
+ friend struct LogModuleCreator;
+ typedef ::comphelper::OModule BaseClass;
+
+ public:
+ static LogModule& getInstance();
+
+ private:
+ LogModule();
+ };
+
+ /* -------------------------------------------------------------------- */
+ class LogModuleClient : public ::comphelper::OModuleClient
+ {
+ private:
+ typedef ::comphelper::OModuleClient BaseClass;
+
+ public:
+ LogModuleClient() : BaseClass( LogModule::getInstance() )
+ {
+ }
+ };
+
+ /* -------------------------------------------------------------------- */
+ template < class TYPE >
+ class OAutoRegistration : public ::comphelper::OAutoRegistration< TYPE >
+ {
+ private:
+ typedef ::comphelper::OAutoRegistration< TYPE > BaseClass;
+
+ public:
+ OAutoRegistration() : BaseClass( LogModule::getInstance() )
+ {
+ }
+ };
+
+ /* -------------------------------------------------------------------- */
+ template < class TYPE >
+ class OSingletonRegistration : public ::comphelper::OSingletonRegistration< TYPE >
+ {
+ private:
+ typedef ::comphelper::OSingletonRegistration< TYPE > BaseClass;
+
+ public:
+ OSingletonRegistration() : BaseClass( LogModule::getInstance() )
+ {
+ }
+ };
//........................................................................
} // namespace logging
diff --git a/extensions/source/logging/log_services.cxx b/extensions/source/logging/log_services.cxx
index 224febd0d..f568f634b 100644
--- a/extensions/source/logging/log_services.cxx
+++ b/extensions/source/logging/log_services.cxx
@@ -59,6 +59,11 @@ namespace logging
} // namespace logging
//........................................................................
-IMPLEMENT_COMPONENT_LIBRARY_API( ::logging::LogModule, ::logging::initializeModule )
+extern "C" SAL_DLLPUBLIC_EXPORT void* SAL_CALL component_getFactory(
+ const sal_Char* pImplementationName, void* pServiceManager, void* pRegistryKey )
+{
+ ::logging::initializeModule();
+ return ::logging::LogModule::getInstance().getComponentFactory( pImplementationName, pServiceManager, pRegistryKey );
+}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/extensions/source/oooimprovecore/core.cxx b/extensions/source/oooimprovecore/core.cxx
index ac8363b56..1836e4dc2 100644
--- a/extensions/source/oooimprovecore/core.cxx
+++ b/extensions/source/oooimprovecore/core.cxx
@@ -36,7 +36,6 @@
#include <com/sun/star/lang/XServiceInfo.hpp>
#include <com/sun/star/oooimprovement/XCoreController.hpp>
#include <com/sun/star/uno/XComponentContext.hpp>
-#include <comphelper/componentmodule.hxx>
#include <comphelper/configurationhelper.hxx>
#include <comphelper/processfactory.hxx>
#include <comphelper/uieventslogger.hxx>
diff --git a/extensions/source/oooimprovecore/oooimprovecore_module.cxx b/extensions/source/oooimprovecore/oooimprovecore_module.cxx
index c686bee94..6457da10d 100644
--- a/extensions/source/oooimprovecore/oooimprovecore_module.cxx
+++ b/extensions/source/oooimprovecore/oooimprovecore_module.cxx
@@ -33,7 +33,24 @@
namespace oooimprovecore
{
- IMPLEMENT_COMPONENT_MODULE( OooimprovecoreModule );
+ struct OooimprovecoreModuleCreator
+ {
+ OooimprovecoreModule m_aOooimprovecoreModule;
+ };
+ namespace
+ {
+ class theOooimprovecoreModuleInstance : public rtl::Static<OooimprovecoreModuleCreator, theOooimprovecoreModuleInstance> {};
+ }
+
+ OooimprovecoreModule::OooimprovecoreModule()
+ :BaseClass()
+ {
+ }
+
+ OooimprovecoreModule& OooimprovecoreModule::getInstance()
+ {
+ return theOooimprovecoreModuleInstance::get().m_aOooimprovecoreModule;
+ }
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/extensions/source/oooimprovecore/oooimprovecore_module.hxx b/extensions/source/oooimprovecore/oooimprovecore_module.hxx
index 3cf4d7155..aeb1ff0ed 100644
--- a/extensions/source/oooimprovecore/oooimprovecore_module.hxx
+++ b/extensions/source/oooimprovecore/oooimprovecore_module.hxx
@@ -33,7 +33,56 @@
namespace oooimprovecore
{
- DECLARE_COMPONENT_MODULE( OooimprovecoreModule, OooimprovecoreModuleClient )
+ /* -------------------------------------------------------------------- */
+ class OooimprovecoreModule : public ::comphelper::OModule
+ {
+ friend struct OooimprovecoreModuleCreator;
+ typedef ::comphelper::OModule BaseClass;
+
+ public:
+ static OooimprovecoreModule& getInstance();
+
+ private:
+ OooimprovecoreModule();
+ };
+
+ /* -------------------------------------------------------------------- */
+ class OooimprovecoreModuleClient : public ::comphelper::OModuleClient
+ {
+ private:
+ typedef ::comphelper::OModuleClient BaseClass;
+
+ public:
+ OooimprovecoreModuleClient() : BaseClass( OooimprovecoreModule::getInstance() )
+ {
+ }
+ };
+
+ /* -------------------------------------------------------------------- */
+ template < class TYPE >
+ class OAutoRegistration : public ::comphelper::OAutoRegistration< TYPE >
+ {
+ private:
+ typedef ::comphelper::OAutoRegistration< TYPE > BaseClass;
+
+ public:
+ OAutoRegistration() : BaseClass( OooimprovecoreModule::getInstance() )
+ {
+ }
+ };
+
+ /* -------------------------------------------------------------------- */
+ template < class TYPE >
+ class OSingletonRegistration : public ::comphelper::OSingletonRegistration< TYPE >
+ {
+ private:
+ typedef ::comphelper::OSingletonRegistration< TYPE > BaseClass;
+
+ public:
+ OSingletonRegistration() : BaseClass( OooimprovecoreModule::getInstance() )
+ {
+ }
+ };
}
#endif
diff --git a/extensions/source/oooimprovecore/oooimprovecore_services.cxx b/extensions/source/oooimprovecore/oooimprovecore_services.cxx
index dbfdd4ea9..d0800869f 100644
--- a/extensions/source/oooimprovecore/oooimprovecore_services.cxx
+++ b/extensions/source/oooimprovecore/oooimprovecore_services.cxx
@@ -43,6 +43,11 @@ namespace oooimprovecore
}
-IMPLEMENT_COMPONENT_LIBRARY_API( ::oooimprovecore::OooimprovecoreModule, ::oooimprovecore::initializeModule)
+extern "C" SAL_DLLPUBLIC_EXPORT void* SAL_CALL component_getFactory(
+ const sal_Char* pImplementationName, void* pServiceManager, void* pRegistryKey )
+{
+ ::oooimprovecore::initializeModule();
+ return ::oooimprovecore::OooimprovecoreModule::getInstance().getComponentFactory( pImplementationName, pServiceManager, pRegistryKey );
+}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */