File indexing completed on 2024-05-12 05:11:15
0001 /* 0002 * SPDX-FileCopyrightText: 2014 Christian Mollekopf <mollekopf@kolabsys.com> 0003 * 0004 * SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL 0005 * 0006 */ 0007 0008 #pragma once 0009 0010 #include <Akonadi/Collection> 0011 0012 #include <QObject> 0013 #include <QString> 0014 0015 namespace Xapian 0016 { 0017 class WritableDatabase; 0018 } 0019 0020 class CollectionIndexer : public QObject 0021 { 0022 Q_OBJECT 0023 public: 0024 explicit CollectionIndexer(const QString &path); 0025 ~CollectionIndexer() override; 0026 0027 void index(const Akonadi::Collection &collection); 0028 void change(const Akonadi::Collection &collection); 0029 void remove(const Akonadi::Collection &col); 0030 void move(const Akonadi::Collection &collection, const Akonadi::Collection &from, const Akonadi::Collection &to); 0031 void commit(); 0032 0033 private: 0034 Xapian::WritableDatabase *m_db; 0035 };