[Libreoffice-commits] core.git: 2 commits - package/inc package/Library_package2.mk package/source package/util shell/Library_losessioninstall.mk shell/source solenv/bin
Noel Grandin (via logerrit)
logerrit at kemper.freedesktop.org
Fri Jul 17 06:48:39 UTC 2020
package/Library_package2.mk | 1
package/inc/ZipPackage.hxx | 5 -
package/inc/zipfileaccess.hxx | 7 -
package/source/manifest/ManifestReader.cxx | 30 ++-----
package/source/manifest/ManifestReader.hxx | 5 -
package/source/manifest/ManifestWriter.cxx | 32 +------
package/source/manifest/ManifestWriter.hxx | 5 -
package/source/manifest/UnoRegister.cxx | 70 -----------------
package/source/zippackage/ZipPackage.cxx | 38 ++-------
package/source/zippackage/zipfileaccess.cxx | 31 ++-----
package/util/package2.component | 14 ++-
shell/Library_losessioninstall.mk | 1
shell/source/sessioninstall/SyncDbusSessionHelper.cxx | 23 +++++
shell/source/sessioninstall/SyncDbusSessionHelper.hxx | 8 +
shell/source/sessioninstall/losessioninstall.component | 5 -
shell/source/sessioninstall/services.cxx | 36 --------
solenv/bin/native-code.py | 6 +
17 files changed, 84 insertions(+), 233 deletions(-)
New commits:
commit ae777762c15258be6598f8b8a056b2924e1fe756
Author: Noel Grandin <noel.grandin at collabora.co.uk>
AuthorDate: Thu Jul 16 11:18:27 2020 +0200
Commit: Noel Grandin <noel.grandin at collabora.co.uk>
CommitDate: Fri Jul 17 08:48:02 2020 +0200
shell/sessioninstall: create instances with uno constructors
See tdf#74608 for motivation.
Change-Id: I1878cf052b3f250927d5bb72ddd523af28cf9337
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98917
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin at collabora.co.uk>
diff --git a/shell/Library_losessioninstall.mk b/shell/Library_losessioninstall.mk
index b3334092cdb2..c83b8fa9c358 100644
--- a/shell/Library_losessioninstall.mk
+++ b/shell/Library_losessioninstall.mk
@@ -31,7 +31,6 @@ $(eval $(call gb_Library_use_externals,losessioninstall,\
$(eval $(call gb_Library_add_exception_objects,losessioninstall,\
shell/source/sessioninstall/SyncDbusSessionHelper \
- shell/source/sessioninstall/services \
))
# vim:set noet sw=4 ts=4:
diff --git a/shell/source/sessioninstall/SyncDbusSessionHelper.cxx b/shell/source/sessioninstall/SyncDbusSessionHelper.cxx
index 6e35a069f588..fc90c19a8fca 100644
--- a/shell/source/sessioninstall/SyncDbusSessionHelper.cxx
+++ b/shell/source/sessioninstall/SyncDbusSessionHelper.cxx
@@ -9,6 +9,7 @@
#include "SyncDbusSessionHelper.hxx"
+#include <cppuhelper/supportsservice.hxx>
#include <gio/gio.h>
#include <memory>
#include <vector>
@@ -99,6 +100,21 @@ namespace shell::sessioninstall
#endif
}
+Sequence< OUString > SAL_CALL SyncDbusSessionHelper::getSupportedServiceNames()
+{
+ return { "org.freedesktop.PackageKit.SyncDbusSessionHelper" };
+}
+
+OUString SAL_CALL SyncDbusSessionHelper::getImplementationName()
+{
+ return "org.libreoffice.comp.shell.sessioninstall.SyncDbusSessionHelper";
+}
+
+sal_Bool SAL_CALL SyncDbusSessionHelper::supportsService(const OUString& aServiceName)
+{
+ return cppu::supportsService(this, aServiceName);
+}
+
void SyncDbusSessionHelper::InstallPackageFiles(
css::uno::Sequence<OUString> const & files,
OUString const & interaction)
@@ -181,6 +197,13 @@ void SAL_CALL SyncDbusSessionHelper::IsInstalled( const OUString& sPackagename,
o_isInstalled = bool(g_variant_get_boolean(g_variant_get_child_value(result.get(),0)));
}
+extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface*
+shell_sessioninstall_get_implementation(
+ css::uno::XComponentContext* context , css::uno::Sequence<css::uno::Any> const&)
+{
+ return cppu::acquire(new SyncDbusSessionHelper(context));
+}
+
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/shell/source/sessioninstall/SyncDbusSessionHelper.hxx b/shell/source/sessioninstall/SyncDbusSessionHelper.hxx
index 8a8dd3bf235f..7812604c9e01 100644
--- a/shell/source/sessioninstall/SyncDbusSessionHelper.hxx
+++ b/shell/source/sessioninstall/SyncDbusSessionHelper.hxx
@@ -11,16 +11,22 @@
#define INCLUDED_SHELL_SOURCE_SESSIONINSTALL_SYNCDBUSSESSIONHELPER_HXX
#include <com/sun/star/uno/XComponentContext.hpp>
+#include <com/sun/star/lang/XServiceInfo.hpp>
#include <org/freedesktop/PackageKit/SyncDbusSessionHelper.hpp>
#include <cppuhelper/implbase.hxx>
namespace shell::sessioninstall
{
- class SyncDbusSessionHelper : public ::cppu::WeakImplHelper< ::org::freedesktop::PackageKit::XSyncDbusSessionHelper >
+ class SyncDbusSessionHelper : public ::cppu::WeakImplHelper< ::org::freedesktop::PackageKit::XSyncDbusSessionHelper, css::lang::XServiceInfo >
{
public:
SyncDbusSessionHelper(css::uno::Reference< css::uno::XComponentContext> const&);
+ // XServiceInfo
+ virtual OUString SAL_CALL getImplementationName() override;
+ virtual sal_Bool SAL_CALL supportsService(const OUString& ServiceName) override;
+ virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames () override;
+
// XModify Methods
virtual void SAL_CALL InstallPackageFiles( const css::uno::Sequence< OUString >& files, const OUString& interaction ) override;
diff --git a/shell/source/sessioninstall/losessioninstall.component b/shell/source/sessioninstall/losessioninstall.component
index 9d63cd5ecca7..4dbc3bf0f2a3 100644
--- a/shell/source/sessioninstall/losessioninstall.component
+++ b/shell/source/sessioninstall/losessioninstall.component
@@ -8,8 +8,9 @@
*
-->
<component loader="com.sun.star.loader.SharedLibrary" environment="@CPPU_ENV@"
- prefix="sessioninstall" xmlns="http://openoffice.org/2010/uno-components">
- <implementation name="org.libreoffice.comp.shell.sessioninstall.SyncDbusSessionHelper">
+ xmlns="http://openoffice.org/2010/uno-components">
+ <implementation name="org.libreoffice.comp.shell.sessioninstall.SyncDbusSessionHelper"
+ constructor="shell_sessioninstall_get_implementation">
<service name="org.freedesktop.PackageKit.SyncDbusSessionHelper"/>
</implementation>
</component>
diff --git a/shell/source/sessioninstall/services.cxx b/shell/source/sessioninstall/services.cxx
deleted file mode 100644
index 69a7b2e4924e..000000000000
--- a/shell/source/sessioninstall/services.cxx
+++ /dev/null
@@ -1,36 +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 "SyncDbusSessionHelper.hxx"
-#include <comphelper/servicedecl.hxx>
-
-namespace sdecl = ::comphelper::service_decl;
-
-sdecl::class_< ::shell::sessioninstall::SyncDbusSessionHelper> const SyncDbusSessionHelperServiceImpl;
-
-const sdecl::ServiceDecl SyncDbusSessionHelperServiceDecl(
- SyncDbusSessionHelperServiceImpl,
- "org.libreoffice.comp.shell.sessioninstall.SyncDbusSessionHelper",
- "org.freedesktop.PackageKit.SyncDbusSessionHelper");
-
-extern "C"
-SAL_DLLPUBLIC_EXPORT void* losessioninstall_component_getFactory( char const* pImplName,
- void*, void* )
-{
- return sdecl::component_getFactoryHelper( pImplName, {&SyncDbusSessionHelperServiceDecl} );
-}
-
-extern "C"
-SAL_DLLPUBLIC_EXPORT void* sessioninstall_component_getFactory( char const* pImplName, void* pServiceManager, void* pRegistryKey )
-{
- return losessioninstall_component_getFactory(pImplName, pServiceManager, pRegistryKey);
-}
-
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
commit 2fc112e98ddcb46038eaff341734331a8558934f
Author: Noel Grandin <noel.grandin at collabora.co.uk>
AuthorDate: Thu Jul 16 12:19:14 2020 +0200
Commit: Noel Grandin <noel.grandin at collabora.co.uk>
CommitDate: Fri Jul 17 08:47:55 2020 +0200
package: create instances with uno constructors
See tdf#74608 for motivation.
Change-Id: I17627bdd2f4f595343ad9bf524dc57cd03170b2a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98921
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin at collabora.co.uk>
diff --git a/package/Library_package2.mk b/package/Library_package2.mk
index adca76fba2ed..9bb7e3194b98 100644
--- a/package/Library_package2.mk
+++ b/package/Library_package2.mk
@@ -46,7 +46,6 @@ $(eval $(call gb_Library_add_exception_objects,package2,\
package/source/manifest/ManifestImport \
package/source/manifest/ManifestReader \
package/source/manifest/ManifestWriter \
- package/source/manifest/UnoRegister \
package/source/zipapi/blowfishcontext \
package/source/zipapi/ByteChucker \
package/source/zipapi/ByteGrabber \
diff --git a/package/inc/ZipPackage.hxx b/package/inc/ZipPackage.hxx
index 779e5cd7ed41..ec39666fbbb1 100644
--- a/package/inc/ZipPackage.hxx
+++ b/package/inc/ZipPackage.hxx
@@ -161,11 +161,6 @@ public:
virtual OUString SAL_CALL getImplementationName( ) override;
virtual sal_Bool SAL_CALL supportsService( const OUString& ServiceName ) override;
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames( ) override;
-
- // Uno componentiseralation
- static OUString static_getImplementationName();
- static css::uno::Sequence < OUString > static_getSupportedServiceNames();
- static css::uno::Reference < css::lang::XSingleServiceFactory > createServiceFactory( css::uno::Reference < css::lang::XMultiServiceFactory > const & rServiceFactory );
};
#endif
diff --git a/package/inc/zipfileaccess.hxx b/package/inc/zipfileaccess.hxx
index 2cd403d54545..a3f96346d6ec 100644
--- a/package/inc/zipfileaccess.hxx
+++ b/package/inc/zipfileaccess.hxx
@@ -61,13 +61,6 @@ public:
static bool StringGoodForPattern_Impl( const OUString& aString,
const css::uno::Sequence< OUString >& aPattern );
- static css::uno::Sequence< OUString > impl_staticGetSupportedServiceNames();
-
- static OUString impl_staticGetImplementationName();
-
- static css::uno::Reference< css::uno::XInterface > impl_staticCreateSelfInstance(
- const css::uno::Reference< css::lang::XMultiServiceFactory >& rxMSF );
-
// XInitialization
virtual void SAL_CALL initialize( const css::uno::Sequence< css::uno::Any >& aArguments ) override;
diff --git a/package/source/manifest/ManifestReader.cxx b/package/source/manifest/ManifestReader.cxx
index 50fd851b31b8..dcb296d7e6f0 100644
--- a/package/source/manifest/ManifestReader.cxx
+++ b/package/source/manifest/ManifestReader.cxx
@@ -81,24 +81,10 @@ Sequence< Sequence< PropertyValue > > SAL_CALL ManifestReader::readManifestSeque
}
// Component functions
-static Reference < XInterface > ManifestReader_createInstance( Reference< XMultiServiceFactory > const & rServiceFactory )
-{
- return *new ManifestReader( comphelper::getComponentContext(rServiceFactory) );
-}
-OUString ManifestReader::static_getImplementationName()
-{
- return "com.sun.star.packages.manifest.comp.ManifestReader";
-}
-
-Sequence < OUString > ManifestReader::static_getSupportedServiceNames()
-{
- Sequence < OUString > aNames { "com.sun.star.packages.manifest.ManifestReader" };
- return aNames;
-}
OUString ManifestReader::getImplementationName()
{
- return static_getImplementationName();
+ return "com.sun.star.packages.manifest.comp.ManifestReader";
}
sal_Bool SAL_CALL ManifestReader::supportsService(OUString const & rServiceName)
@@ -108,14 +94,16 @@ sal_Bool SAL_CALL ManifestReader::supportsService(OUString const & rServiceName)
Sequence < OUString > ManifestReader::getSupportedServiceNames()
{
- return static_getSupportedServiceNames();
+ return { "com.sun.star.packages.manifest.ManifestReader" };
}
-Reference < XSingleServiceFactory > ManifestReader::createServiceFactory( Reference < XMultiServiceFactory > const & rServiceFactory )
+
+
+extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface*
+package_ManifestReader_get_implementation(
+ css::uno::XComponentContext* context , css::uno::Sequence<css::uno::Any> const&)
{
- return cppu::createSingleFactory (rServiceFactory,
- static_getImplementationName(),
- ManifestReader_createInstance,
- static_getSupportedServiceNames());
+ return cppu::acquire(new ManifestReader(context));
}
+
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/package/source/manifest/ManifestReader.hxx b/package/source/manifest/ManifestReader.hxx
index e30884424f77..d9546cd30ddf 100644
--- a/package/source/manifest/ManifestReader.hxx
+++ b/package/source/manifest/ManifestReader.hxx
@@ -49,11 +49,6 @@ public:
virtual OUString SAL_CALL getImplementationName( ) override;
virtual sal_Bool SAL_CALL supportsService( const OUString& ServiceName ) override;
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames( ) override;
-
- // Component constructor
- static OUString static_getImplementationName();
- static css::uno::Sequence < OUString > static_getSupportedServiceNames();
- static css::uno::Reference < css::lang::XSingleServiceFactory > createServiceFactory( css::uno::Reference < css::lang::XMultiServiceFactory > const & rServiceFactory );
};
#endif
diff --git a/package/source/manifest/ManifestWriter.cxx b/package/source/manifest/ManifestWriter.cxx
index 8fbb9bd6a177..08c12510afee 100644
--- a/package/source/manifest/ManifestWriter.cxx
+++ b/package/source/manifest/ManifestWriter.cxx
@@ -72,26 +72,9 @@ void SAL_CALL ManifestWriter::writeManifestSequence( const Reference< XOutputStr
}
}
-// Component methods
-static Reference < XInterface > ManifestWriter_createInstance( Reference< XMultiServiceFactory > const & rServiceFactory )
-{
- return *new ManifestWriter( comphelper::getComponentContext(rServiceFactory) );
-}
-
-OUString ManifestWriter::static_getImplementationName()
-{
- return "com.sun.star.packages.manifest.comp.ManifestWriter";
-}
-
-Sequence < OUString > ManifestWriter::static_getSupportedServiceNames()
-{
- Sequence<OUString> aNames { "com.sun.star.packages.manifest.ManifestWriter" };
- return aNames;
-}
-
OUString ManifestWriter::getImplementationName()
{
- return static_getImplementationName();
+ return "com.sun.star.packages.manifest.comp.ManifestWriter";
}
sal_Bool SAL_CALL ManifestWriter::supportsService(OUString const & rServiceName)
@@ -100,14 +83,15 @@ sal_Bool SAL_CALL ManifestWriter::supportsService(OUString const & rServiceName)
}
Sequence < OUString > ManifestWriter::getSupportedServiceNames()
{
- return static_getSupportedServiceNames();
+ return { "com.sun.star.packages.manifest.ManifestWriter" };
}
-Reference < XSingleServiceFactory > ManifestWriter::createServiceFactory( Reference < XMultiServiceFactory > const & rServiceFactory )
+
+
+extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface*
+package_ManifestWriter_get_implementation(
+ css::uno::XComponentContext* context , css::uno::Sequence<css::uno::Any> const&)
{
- return cppu::createSingleFactory (rServiceFactory,
- static_getImplementationName(),
- ManifestWriter_createInstance,
- static_getSupportedServiceNames());
+ return cppu::acquire(new ManifestWriter(context));
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/package/source/manifest/ManifestWriter.hxx b/package/source/manifest/ManifestWriter.hxx
index 7d83a7383bc9..1378ebf8edd7 100644
--- a/package/source/manifest/ManifestWriter.hxx
+++ b/package/source/manifest/ManifestWriter.hxx
@@ -49,11 +49,6 @@ public:
virtual OUString SAL_CALL getImplementationName( ) override;
virtual sal_Bool SAL_CALL supportsService( const OUString& ServiceName ) override;
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames( ) override;
-
- // Component constructor
- static OUString static_getImplementationName();
- static css::uno::Sequence < OUString > static_getSupportedServiceNames();
- static css::uno::Reference < css::lang::XSingleServiceFactory > createServiceFactory( css::uno::Reference < css::lang::XMultiServiceFactory > const & rServiceFactory );
};
#endif
diff --git a/package/source/manifest/UnoRegister.cxx b/package/source/manifest/UnoRegister.cxx
deleted file mode 100644
index aa14db7d7c6f..000000000000
--- a/package/source/manifest/UnoRegister.cxx
+++ /dev/null
@@ -1,70 +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/.
- *
- * This file incorporates work covered by the following license notice:
- *
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed
- * with this work for additional information regarding copyright
- * ownership. The ASF licenses this file to you under the Apache
- * License, Version 2.0 (the "License"); you may not use this file
- * except in compliance with the License. You may obtain a copy of
- * the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-#include "ManifestReader.hxx"
-#include "ManifestWriter.hxx"
-#include <cppuhelper/factory.hxx>
-#include <com/sun/star/registry/XRegistryKey.hpp>
-#include <ZipPackage.hxx>
-
-#include <zipfileaccess.hxx>
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::beans;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star::registry;
-using namespace ::com::sun::star::packages;
-
-/**
- * This function is called to get service factories for an implementation.
- * @param pImplName name of implementation
- * @param pServiceManager generic uno interface providing a service manager to instantiate components
- * @param pRegistryKey registry data key to read and write component persistent data
- * @return a component factory (generic uno interface)
- */
-extern "C" SAL_DLLPUBLIC_EXPORT void * package2_component_getFactory(
- const char * pImplName, void * pServiceManager, void * /*pRegistryKey*/ )
-{
- void * pRet = nullptr;
- uno::Reference< XMultiServiceFactory > xSMgr(
- static_cast< XMultiServiceFactory * >( pServiceManager ) );
- uno::Reference< XSingleServiceFactory > xFactory;
-
- if (ManifestReader::static_getImplementationName().equalsAscii( pImplName ) )
- xFactory = ManifestReader::createServiceFactory ( xSMgr );
- else if (ManifestWriter::static_getImplementationName().equalsAscii( pImplName ) )
- xFactory = ManifestWriter::createServiceFactory ( xSMgr );
- else if (ZipPackage::static_getImplementationName().equalsAscii( pImplName ) )
- xFactory = ZipPackage::createServiceFactory ( xSMgr );
- else if ( OZipFileAccess::impl_staticGetImplementationName().equalsAscii( pImplName ) )
- xFactory = ::cppu::createSingleFactory( xSMgr,
- OZipFileAccess::impl_staticGetImplementationName(),
- OZipFileAccess::impl_staticCreateSelfInstance,
- OZipFileAccess::impl_staticGetSupportedServiceNames() );
-
- if ( xFactory.is() )
- {
- xFactory->acquire();
- pRet = xFactory.get();
- }
- return pRet;
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/package/source/zippackage/ZipPackage.cxx b/package/source/zippackage/ZipPackage.cxx
index 02aed7a66a2e..4e113e91d3bb 100644
--- a/package/source/zippackage/ZipPackage.cxx
+++ b/package/source/zippackage/ZipPackage.cxx
@@ -1661,34 +1661,15 @@ Sequence< ElementChange > SAL_CALL ZipPackage::getPendingChanges()
return uno::Sequence < ElementChange > ();
}
-/**
- * Function to create a new component instance; is needed by factory helper implementation.
- * @param xMgr service manager to if the components needs other component instances
- */
-static uno::Reference < XInterface > ZipPackage_createInstance(
- const uno::Reference< XMultiServiceFactory > & xMgr )
-{
- return uno::Reference< XInterface >( *new ZipPackage( comphelper::getComponentContext(xMgr) ) );
-}
-
-OUString ZipPackage::static_getImplementationName()
-{
- return "com.sun.star.packages.comp.ZipPackage";
-}
-
-Sequence< OUString > ZipPackage::static_getSupportedServiceNames()
-{
- return { "com.sun.star.packages.Package" };
-}
OUString ZipPackage::getImplementationName()
{
- return static_getImplementationName();
+ return "com.sun.star.packages.comp.ZipPackage";
}
Sequence< OUString > ZipPackage::getSupportedServiceNames()
{
- return static_getSupportedServiceNames();
+ return { "com.sun.star.packages.Package" };
}
sal_Bool SAL_CALL ZipPackage::supportsService( OUString const & rServiceName )
@@ -1696,14 +1677,6 @@ sal_Bool SAL_CALL ZipPackage::supportsService( OUString const & rServiceName )
return cppu::supportsService(this, rServiceName);
}
-uno::Reference < XSingleServiceFactory > ZipPackage::createServiceFactory( uno::Reference < XMultiServiceFactory > const & rServiceFactory )
-{
- return cppu::createSingleFactory ( rServiceFactory,
- static_getImplementationName(),
- ZipPackage_createInstance,
- static_getSupportedServiceNames() );
-}
-
Sequence< sal_Int8 > ZipPackage::getUnoTunnelId()
{
static ::cppu::OImplementationId implId;
@@ -1872,4 +1845,11 @@ void SAL_CALL ZipPackage::removeVetoableChangeListener( const OUString& /*Proper
{
}
+extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface*
+package_ZipPackage_get_implementation(
+ css::uno::XComponentContext* context , css::uno::Sequence<css::uno::Any> const&)
+{
+ return cppu::acquire(new ZipPackage(context));
+}
+
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/package/source/zippackage/zipfileaccess.cxx b/package/source/zippackage/zipfileaccess.cxx
index 31e38aff1dcd..b813c165d46e 100644
--- a/package/source/zippackage/zipfileaccess.cxx
+++ b/package/source/zippackage/zipfileaccess.cxx
@@ -449,38 +449,29 @@ void SAL_CALL OZipFileAccess::removeEventListener( const uno::Reference< lang::X
m_pListenersContainer->removeInterface( xListener );
}
-uno::Sequence< OUString > OZipFileAccess::impl_staticGetSupportedServiceNames()
-{
- uno::Sequence< OUString > aRet(2);
- aRet[0] = "com.sun.star.packages.zip.ZipFileAccess";
- aRet[1] = "com.sun.star.comp.packages.zip.ZipFileAccess";
- return aRet;
-}
-
-OUString OZipFileAccess::impl_staticGetImplementationName()
+OUString SAL_CALL OZipFileAccess::getImplementationName()
{
return "com.sun.star.comp.package.zip.ZipFileAccess";
}
-uno::Reference< uno::XInterface > OZipFileAccess::impl_staticCreateSelfInstance(
- const uno::Reference< lang::XMultiServiceFactory >& rxMSF )
+sal_Bool SAL_CALL OZipFileAccess::supportsService( const OUString& ServiceName )
{
- return uno::Reference< uno::XInterface >( *new OZipFileAccess( comphelper::getComponentContext(rxMSF) ) );
+ return cppu::supportsService(this, ServiceName);
}
-OUString SAL_CALL OZipFileAccess::getImplementationName()
+uno::Sequence< OUString > SAL_CALL OZipFileAccess::getSupportedServiceNames()
{
- return impl_staticGetImplementationName();
+ return { "com.sun.star.packages.zip.ZipFileAccess",
+ "com.sun.star.comp.packages.zip.ZipFileAccess" };
}
-sal_Bool SAL_CALL OZipFileAccess::supportsService( const OUString& ServiceName )
-{
- return cppu::supportsService(this, ServiceName);
-}
-uno::Sequence< OUString > SAL_CALL OZipFileAccess::getSupportedServiceNames()
+extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface*
+package_OZipFileAccess_get_implementation(
+ css::uno::XComponentContext* context , css::uno::Sequence<css::uno::Any> const&)
{
- return impl_staticGetSupportedServiceNames();
+ return cppu::acquire(new OZipFileAccess(context));
}
+
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/package/util/package2.component b/package/util/package2.component
index 6691a0173bbe..d436d9a35a81 100644
--- a/package/util/package2.component
+++ b/package/util/package2.component
@@ -18,18 +18,22 @@
-->
<component loader="com.sun.star.loader.SharedLibrary" environment="@CPPU_ENV@"
- prefix="package2" xmlns="http://openoffice.org/2010/uno-components">
- <implementation name="com.sun.star.comp.package.zip.ZipFileAccess">
+ xmlns="http://openoffice.org/2010/uno-components">
+ <implementation name="com.sun.star.comp.package.zip.ZipFileAccess"
+ constructor="package_OZipFileAccess_get_implementation">
<service name="com.sun.star.comp.packages.zip.ZipFileAccess"/>
<service name="com.sun.star.packages.zip.ZipFileAccess"/>
</implementation>
- <implementation name="com.sun.star.packages.comp.ZipPackage">
+ <implementation name="com.sun.star.packages.comp.ZipPackage"
+ constructor="package_ZipPackage_get_implementation">
<service name="com.sun.star.packages.Package"/>
</implementation>
- <implementation name="com.sun.star.packages.manifest.comp.ManifestReader">
+ <implementation name="com.sun.star.packages.manifest.comp.ManifestReader"
+ constructor="package_ManifestReader_get_implementation">
<service name="com.sun.star.packages.manifest.ManifestReader"/>
</implementation>
- <implementation name="com.sun.star.packages.manifest.comp.ManifestWriter">
+ <implementation name="com.sun.star.packages.manifest.comp.ManifestWriter"
+ constructor="package_ManifestWriter_get_implementation">
<service name="com.sun.star.packages.manifest.ManifestWriter"/>
</implementation>
</component>
diff --git a/solenv/bin/native-code.py b/solenv/bin/native-code.py
index 8153cebb6596..164b8039735d 100755
--- a/solenv/bin/native-code.py
+++ b/solenv/bin/native-code.py
@@ -23,7 +23,6 @@ core_factory_list = [
("libembobj.a", "embobj_component_getFactory"),
("libfilterconfiglo.a", "filterconfig1_component_getFactory"),
("libi18npoollo.a", "i18npool_component_getFactory"),
- ("libpackage2.a", "package2_component_getFactory"),
("libsmlo.a", "sm_component_getFactory"),
("libsrtrs1.a", "srtrs1_component_getFactory"),
("libucb1.a", "ucb_component_getFactory"),
@@ -244,6 +243,11 @@ core_constructor_list = [
("lingucomponent_SpellChecker_get_implementation", "#ifndef IOS"),
"lingucomponent_LangGuess_get_implementation",
"lingucomponent_Hyphenator_get_implementation",
+# package/util/package2.component
+ "package_OZipFileAccess_get_implementation",
+ "package_ZipPackage_get_implementation",
+ "package_ManifestReader_get_implementation",
+ "package_ManifestWriter_get_implementation",
# sax/source/expatwrap/expwrap.component
"com_sun_star_comp_extensions_xml_sax_FastParser_get_implementation",
"com_sun_star_comp_extensions_xml_sax_ParserExpat_get_implementation",
More information about the Libreoffice-commits
mailing list