Akonadi

relationsync.h
1/*
2 SPDX-FileCopyrightText: 2014 Christian Mollekopf <mollekopf@kolabsys.com>
3
4 SPDX-License-Identifier: LGPL-2.0-or-later
5*/
6#pragma once
7
8#include "akonadicore_export.h"
9
10#include "jobs/job.h"
11#include "relation.h"
12
13namespace Akonadi
14{
15class AKONADICORE_EXPORT RelationSync : public Akonadi::Job
16{
17 Q_OBJECT
18public:
19 explicit RelationSync(QObject *parent = nullptr);
20 ~RelationSync() override;
21
22 void setRemoteRelations(const Akonadi::Relation::List &relations);
23
24protected:
25 void doStart() override;
26
27private Q_SLOTS:
28 void onLocalFetchDone(KJob *job);
29 void slotResult(KJob *job) override;
30
31private:
32 void diffRelations();
33 void checkDone();
34
35private:
36 Akonadi::Relation::List mRemoteRelations;
37 Akonadi::Relation::List mLocalRelations;
38 bool mRemoteRelationsSet = false;
39 bool mLocalRelationsFetched = false;
40};
41
42}
Base class for all actions in the Akonadi storage.
Definition job.h:81
Helper integration between Akonadi and Qt.
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Tue Mar 26 2024 11:13:38 by doxygen 1.10.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.