Files
loongoffice/cppuhelper/source/loadsharedlibcomponentfactory.hxx
Michael Stahl 6ef0336697 cppuhelper: implement environment mapping for constructor functions
ae3a0c8da50b36db395984637f5ad74d3b4887bc unfortunately forgot to
implement mapping between UNO environments for constructor functions
in the UNO service manager, and due to the many componennt conversions
to constructor functions since then, the log UNO purpose environment
has become mostly useless.

Save the environment, create a closure today!

https://wiki.openoffice.org/wiki/Uno/Spec/Log_Environment

Change-Id: Idc03b5ed9529da8e81cd91efe50cbeceffa2b247
Reviewed-on: https://gerrit.libreoffice.org/33060
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2017-01-17 22:03:11 +00:00

46 lines
1.4 KiB
C++

/* -*- 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/.
*/
#ifndef INCLUDED_CPPUHELPER_SOURCE_LOADSHAREDLIBCOMPONENTFACTORY_HXX
#define INCLUDED_CPPUHELPER_SOURCE_LOADSHAREDLIBCOMPONENTFACTORY_HXX
#include <sal/config.h>
#include <com/sun/star/uno/Reference.hxx>
#include "servicemanager.hxx"
namespace com { namespace sun { namespace star {
namespace lang { class XMultiServiceFactory; }
namespace uno {
class Environment;
class XInterface;
}
} } }
namespace rtl { class OUString; }
namespace cppuhelper { namespace detail {
css::uno::Environment getEnvironment(
rtl::OUString const & name, rtl::OUString const & implementation);
void loadSharedLibComponentFactory(
rtl::OUString const & uri, rtl::OUString const & environment,
rtl::OUString const & prefix, rtl::OUString const & implementation,
rtl::OUString const & constructor,
css::uno::Reference<css::lang::XMultiServiceFactory> const & serviceManager,
WrapperConstructorFn * constructorFunction,
css::uno::Reference<css::uno::XInterface> * factory);
} }
#endif
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */