1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3  * This file is part of the LibreOffice project.
4  *
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/.
8  */
9 
10 #ifndef INCLUDED_SHELL_SOURCE_SESSIONINSTALL_SYNCDBUSSESSIONHELPER_HXX
11 #define INCLUDED_SHELL_SOURCE_SESSIONINSTALL_SYNCDBUSSESSIONHELPER_HXX
12 
13 #include <com/sun/star/uno/XComponentContext.hpp>
14 #include <com/sun/star/lang/XServiceInfo.hpp>
15 #include <org/freedesktop/PackageKit/SyncDbusSessionHelper.hpp>
16 #include <cppuhelper/implbase.hxx>
17 
18 namespace shell::sessioninstall
19 {
20     class SyncDbusSessionHelper : public ::cppu::WeakImplHelper< ::org::freedesktop::PackageKit::XSyncDbusSessionHelper, css::lang::XServiceInfo >
21     {
22         public:
23             SyncDbusSessionHelper(css::uno::Reference< css::uno::XComponentContext> const&);
24 
25             // XServiceInfo
26             virtual OUString SAL_CALL getImplementationName() override;
27             virtual sal_Bool SAL_CALL supportsService(const OUString& ServiceName) override;
28             virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames () override;
29 
30             // XModify Methods
31             virtual void SAL_CALL InstallPackageFiles( const css::uno::Sequence< OUString >& files, const OUString& interaction ) override;
32 
33             virtual void SAL_CALL InstallProvideFiles( const css::uno::Sequence< OUString >& files, const OUString& interaction ) override;
34 
35             virtual void SAL_CALL InstallCatalogs( const css::uno::Sequence< OUString >& files, const OUString& interaction ) override;
36 
37             virtual void SAL_CALL InstallPackageNames( const css::uno::Sequence< OUString >& packages, const OUString& interaction ) override;
38 
39             virtual void SAL_CALL InstallMimeTypes( const css::uno::Sequence< OUString >& mimeTypes, const OUString& interaction ) override;
40 
41             virtual void SAL_CALL InstallFontconfigResources( const css::uno::Sequence< OUString >& resources, const OUString& interaction ) override;
42 
43             virtual void SAL_CALL InstallGStreamerResources( const css::uno::Sequence< OUString >& resources, const OUString& interaction ) override;
44 
InstallResources(const css::uno::Sequence<OUString> &,const css::uno::Sequence<OUString> &,const OUString &)45             virtual void SAL_CALL InstallResources( const css::uno::Sequence< OUString >& /* types */, const css::uno::Sequence< OUString >& /* resources */, const OUString& /* interaction */ ) override
46                 { throw css::uno::RuntimeException(u"InstallResources is not implemented"_ustr); } // not implemented
47 
48             virtual void SAL_CALL RemovePackageByFiles( const css::uno::Sequence< OUString >& files, const OUString& interaction ) override;
49 
50             virtual void SAL_CALL InstallPrinterDrivers( const css::uno::Sequence< OUString >& files, const OUString& interaction ) override;
51 
52             // XQuery Methods
53             virtual void SAL_CALL IsInstalled( const OUString& /* package_name */, const OUString& /* interaction */, sal_Bool& /* installed */ ) override;
54 
SearchFile(const OUString &,const OUString &,sal_Bool &,OUString &)55             virtual void SAL_CALL SearchFile( const OUString& /* file_name */, const OUString& /* interaction */, sal_Bool& /* installed */, OUString& /* package_name */ ) override
56                 { throw css::uno::RuntimeException(u"SearchFile is not implemented"_ustr); } // not implemented
57 
58         private:
59             SyncDbusSessionHelper( const SyncDbusSessionHelper& ) = delete;
60             SyncDbusSessionHelper& operator=( const SyncDbusSessionHelper& ) = delete;
61     };
62 }
63 
64 #endif // INCLUDED_SHELL_SOURCE_SESSIONINSTALL_SYNCDBUSSESSIONHELPER_HXX
65 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
66