File indexing completed on 2025-02-16 04:55:53
0001 /* 0002 SPDX-FileCopyrightText: 2017-2024 Laurent Montel <montel@kde.org> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #pragma once 0008 0009 #include "abstractakonadiimapsettinginterface.h" 0010 #include <memory> 0011 class OrgKdeAkonadiImapSettingsInterface; 0012 namespace KSieveCore 0013 { 0014 class AkonadiImapSettingInterface : public KSieveCore::AbstractAkonadiImapSettingInterface 0015 { 0016 public: 0017 AkonadiImapSettingInterface(std::unique_ptr<OrgKdeAkonadiImapSettingsInterface> &interface); 0018 ~AkonadiImapSettingInterface() override; 0019 0020 [[nodiscard]] bool sieveSupport() const override; 0021 [[nodiscard]] bool sieveReuseConfig() const override; 0022 [[nodiscard]] QString imapServer() const override; 0023 [[nodiscard]] QString userName() const override; 0024 [[nodiscard]] int sievePort() const override; 0025 [[nodiscard]] QString sieveCustomUsername() const override; 0026 [[nodiscard]] QString sieveCustomAuthentification() const override; 0027 [[nodiscard]] QString sieveVacationFilename() const override; 0028 [[nodiscard]] QString safety() const override; 0029 [[nodiscard]] int alternateAuthentication() const override; 0030 [[nodiscard]] int authentication() const override; 0031 [[nodiscard]] QString sieveAlternateUrl() const override; 0032 [[nodiscard]] int imapPort() const override; 0033 0034 private: 0035 std::unique_ptr<OrgKdeAkonadiImapSettingsInterface> mInterface; 0036 }; 0037 }