File indexing completed on 2024-05-12 05:25:34
0001 /* 0002 SPDX-FileCopyrightText: 2020-2024 Laurent Montel <montel@kde.org> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #pragma once 0008 0009 #include "pimdataexporter_export.h" 0010 #include <Akonadi/Collection> 0011 #include <KSharedConfig> 0012 #include <QString> 0013 class KZip; 0014 class PIMDATAEXPORTER_EXPORT ResourceConverterBase 0015 { 0016 public: 0017 ResourceConverterBase(); 0018 virtual ~ResourceConverterBase(); 0019 [[nodiscard]] QString agentFileName(const QString &filename); 0020 void convertCollectionToRealPath(KConfigGroup &group, const QString ¤tKey); 0021 void convertCollectionListToRealPath(KConfigGroup &group, const QString ¤tKey); 0022 void convertCollectionIdsToRealPath(KConfigGroup &group, const QString ¤tKey, const QString &prefixCollection = QString()); 0023 [[nodiscard]] QString resourcePath(const QString &agentIdentifier, const QString &defaultPath = QString()); 0024 [[nodiscard]] QString adaptResourcePath(const KSharedConfigPtr &resourceConfig, const QString &storedData); 0025 [[nodiscard]] QString resourcePath(const KSharedConfigPtr &resourceConfig, const QString &defaultPath = QString()); 0026 [[nodiscard]] virtual QString changeResourcePath(QString url) const; 0027 0028 [[nodiscard]] virtual QString convertToFullCollectionPath(const qlonglong collectionValue) = 0; 0029 [[nodiscard]] virtual Akonadi::Collection::Id convertFolderPathToCollectionId(const QString &path) = 0; 0030 [[nodiscard]] QString storeResources(KZip *archive, const QString &identifier, const QString &path); 0031 [[nodiscard]] virtual QString installDefaultDirectory() = 0; 0032 virtual QString adaptNewResourceUrl(bool overwriteResources, const KSharedConfig::Ptr &resourceConfig, const QString &storePath) = 0; 0033 };