extensions/WinUserInfo: create instances with uno constructors
See tdf#74608 for motivation.
Change-Id: I16e7da267af4d6e45522b502515cebe52352b2f0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99460
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
diff --git a/extensions/Library_WinUserInfoBe.mk b/extensions/Library_WinUserInfoBe.mk
index 8d9835d..34a6358 100644
--- a/extensions/Library_WinUserInfoBe.mk
+++ b/extensions/Library_WinUserInfoBe.mk
@@ -16,7 +16,6 @@ $(eval $(call gb_Library_set_componentfile,WinUserInfoBe,extensions/source/confi
$(eval $(call gb_Library_use_sdk_api,WinUserInfoBe))
$(eval $(call gb_Library_add_exception_objects,WinUserInfoBe,\
extensions/source/config/WinUserInfo/componentdef \
extensions/source/config/WinUserInfo/WinUserInfoBe \
))
diff --git a/extensions/source/config/WinUserInfo/WinUserInfoBe.component b/extensions/source/config/WinUserInfo/WinUserInfoBe.component
index 90c3e00..5dd7d21 100644
--- a/extensions/source/config/WinUserInfo/WinUserInfoBe.component
+++ b/extensions/source/config/WinUserInfo/WinUserInfoBe.component
@@ -8,8 +8,9 @@
-->
<component loader="com.sun.star.loader.SharedLibrary" environment="@CPPU_ENV@"
prefix="WinUserInfoBe" xmlns="http://openoffice.org/2010/uno-components">
<implementation name="com.sun.star.comp.configuration.backend.WinUserInfoBe">
xmlns="http://openoffice.org/2010/uno-components">
<implementation name="com.sun.star.comp.configuration.backend.WinUserInfoBe"
constructor="extensions_WinUserInfoBe_get_implementation">
<service name="com.sun.star.configuration.backend.WinUserInfoBe"/>
</implementation>
</component>
diff --git a/extensions/source/config/WinUserInfo/WinUserInfoBe.cxx b/extensions/source/config/WinUserInfo/WinUserInfoBe.cxx
index f9ebaca..83223d9 100644
--- a/extensions/source/config/WinUserInfo/WinUserInfoBe.cxx
+++ b/extensions/source/config/WinUserInfo/WinUserInfoBe.cxx
@@ -448,19 +448,11 @@ css::uno::Any WinUserInfoBe::getPropertyValue(OUString const& PropertyName)
!sValue.isEmpty(), sValue.isEmpty() ? css::uno::Any() : css::uno::makeAny(sValue)));
}
OUString WinUserInfoBe::getWinUserInfoBeName()
OUString SAL_CALL WinUserInfoBe::getImplementationName()
{
return "com.sun.star.comp.configuration.backend.WinUserInfoBe";
}
OUString SAL_CALL WinUserInfoBe::getImplementationName() { return getWinUserInfoBeName(); }
css::uno::Sequence<OUString> WinUserInfoBe::getWinUserInfoBeServiceNames()
{
css::uno::Sequence<OUString> aServices{ "com.sun.star.configuration.backend.WinUserInfoBe" };
return aServices;
}
sal_Bool SAL_CALL WinUserInfoBe::supportsService(const OUString& aServiceName)
{
return cppu::supportsService(this, aServiceName);
@@ -468,10 +460,17 @@ sal_Bool SAL_CALL WinUserInfoBe::supportsService(const OUString& aServiceName)
css::uno::Sequence<OUString> SAL_CALL WinUserInfoBe::getSupportedServiceNames()
{
return getWinUserInfoBeServiceNames();
return { "com.sun.star.configuration.backend.WinUserInfoBe" };
}
}
}
}
extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface*
extensions_WinUserInfoBe_get_implementation(css::uno::XComponentContext* context,
css::uno::Sequence<css::uno::Any> const&)
{
return cppu::acquire(new extensions::config::WinUserInfo::WinUserInfoBe(context));
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/extensions/source/config/WinUserInfo/WinUserInfoBe.hxx b/extensions/source/config/WinUserInfo/WinUserInfoBe.hxx
index 766b88c..4ebca26 100644
--- a/extensions/source/config/WinUserInfo/WinUserInfoBe.hxx
+++ b/extensions/source/config/WinUserInfo/WinUserInfoBe.hxx
@@ -92,17 +92,6 @@ public:
{
}
/**
Provides the implementation name.
@return implementation name
*/
static OUString getWinUserInfoBeName();
/**
Provides the supported services names
@return service names
*/
static css::uno::Sequence<OUString> getWinUserInfoBeServiceNames();
private:
std::unique_ptr<WinUserInfoBe_Impl> m_pImpl;
};
diff --git a/extensions/source/config/WinUserInfo/componentdef.cxx b/extensions/source/config/WinUserInfo/componentdef.cxx
deleted file mode 100644
index e2d38e9..0000000
--- a/extensions/source/config/WinUserInfo/componentdef.cxx
+++ /dev/null
@@ -1,35 +0,0 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
* This file is part of the LibreOffice project.
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*/
#include "WinUserInfoBe.hxx"
#include <cppuhelper/implementationentry.hxx>
using namespace extensions::config::WinUserInfo;
static css::uno::Reference<css::uno::XInterface>
createWinUserInfoBe(const css::uno::Reference<css::uno::XComponentContext>& aContext)
{
return *new WinUserInfoBe(aContext);
}
static const cppu::ImplementationEntry kImplementations_entries[]
= { { createWinUserInfoBe, WinUserInfoBe::getWinUserInfoBeName,
WinUserInfoBe::getWinUserInfoBeServiceNames, cppu::createSingleComponentFactory, nullptr,
0 },
{ nullptr, nullptr, nullptr, nullptr, nullptr, 0 } };
extern "C" SAL_DLLPUBLIC_EXPORT void*
WinUserInfoBe_component_getFactory(const char* aImplementationName, void* aServiceManager,
void* aRegistryKey)
{
return cppu::component_getFactoryHelper(aImplementationName, aServiceManager, aRegistryKey,
kImplementations_entries);
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */