1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
10 #ifndef INCLUDED_EXTENSIONS_SOURCE_CONFIG_WINUSERINFO_WINUSERINFOBE_HXX
11 #define INCLUDED_EXTENSIONS_SOURCE_CONFIG_WINUSERINFO_WINUSERINFOBE_HXX
13 #include <com/sun/star/beans/XPropertySet.hpp>
14 #include <com/sun/star/lang/XServiceInfo.hpp>
15 #include <cppuhelper/compbase.hxx>
26 class XComponentContext
;
38 class WinUserInfoBe_Impl
;
40 typedef cppu::WeakComponentImplHelper
<css::beans::XPropertySet
, css::lang::XServiceInfo
>
43 struct WinUserInfoMutexHolder
48 Implements the PlatformBackend service, a specialization of the
49 XPropertySet service for retrieving Active Directory user profile
50 configuration settings.
52 class WinUserInfoBe
: private WinUserInfoMutexHolder
, public BackendBase
55 explicit WinUserInfoBe(const css::uno::Reference
<css::uno::XComponentContext
>& xContext
);
56 virtual ~WinUserInfoBe() override
;
59 virtual OUString SAL_CALL
getImplementationName() override
;
61 virtual sal_Bool SAL_CALL
supportsService(const OUString
& aServiceName
) override
;
63 virtual css::uno::Sequence
<OUString
> SAL_CALL
getSupportedServiceNames() override
;
66 virtual css::uno::Reference
<css::beans::XPropertySetInfo
> SAL_CALL
getPropertySetInfo() override
68 return css::uno::Reference
<css::beans::XPropertySetInfo
>();
71 virtual void SAL_CALL
setPropertyValue(OUString
const&, css::uno::Any
const&) override
;
73 virtual css::uno::Any SAL_CALL
getPropertyValue(OUString
const& PropertyName
) override
;
75 virtual void SAL_CALL
addPropertyChangeListener(
76 OUString
const&, css::uno::Reference
<css::beans::XPropertyChangeListener
> const&) override
80 virtual void SAL_CALL
removePropertyChangeListener(
81 OUString
const&, css::uno::Reference
<css::beans::XPropertyChangeListener
> const&) override
85 virtual void SAL_CALL
addVetoableChangeListener(
86 OUString
const&, css::uno::Reference
<css::beans::XVetoableChangeListener
> const&) override
90 virtual void SAL_CALL
removeVetoableChangeListener(
91 OUString
const&, css::uno::Reference
<css::beans::XVetoableChangeListener
> const&) override
96 Provides the implementation name.
97 @return implementation name
99 static OUString
getWinUserInfoBeName();
101 Provides the supported services names
102 @return service names
104 static css::uno::Sequence
<OUString
> getWinUserInfoBeServiceNames();
107 std::unique_ptr
<WinUserInfoBe_Impl
> m_pImpl
;
113 #endif // INCLUDED_EXTENSIONS_SOURCE_CONFIG_WINUSERINFO_WINUSERINFOBE_HXX
115 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */