libquentier
0.8.0
The library for rich desktop clients of Evernote service
Toggle main menu visibility
Loading...
Searching...
No Matches
headers
quentier
synchronization
types
ISyncOptionsBuilder.h
1
/*
2
* Copyright 2022-2023 Dmitry Ivanov
3
*
4
* This file is part of libquentier
5
*
6
* libquentier is free software; you can redistribute it and/or modify
7
* it under the terms of the GNU Lesser General Public License as published by
8
* the Free Software Foundation, version 3 of the License.
9
*
10
* libquentier is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
* GNU Lesser General Public License for more details.
14
*
15
* You should have received a copy of the GNU Lesser General Public License
16
* along with libquentier. If not, see <http://www.gnu.org/licenses/>.
17
*/
18
19
#pragma once
20
21
#include <quentier/synchronization/types/Fwd.h>
22
#include <quentier/utility/Linkage.h>
23
24
#include <qevercloud/Fwd.h>
25
26
#include <QDir>
27
28
#include <optional>
29
30
namespace
quentier::synchronization {
31
32
class
QUENTIER_EXPORT
ISyncOptionsBuilder
33
{
34
public
:
35
virtual
~ISyncOptionsBuilder
()
noexcept
;
36
37
virtual
ISyncOptionsBuilder
& setDownloadNoteThumbnails(
bool
value) = 0;
38
39
virtual
ISyncOptionsBuilder
& setInkNoteImagesStorageDir(
40
std::optional<QDir> dir) = 0;
41
42
virtual
ISyncOptionsBuilder
& setRequestContext(
43
qevercloud::IRequestContextPtr ctx) = 0;
44
45
virtual
ISyncOptionsBuilder
& setRetryPolicy(
46
qevercloud::IRetryPolicyPtr retryPolicy) = 0;
47
48
virtual
ISyncOptionsBuilder
& setMaxConcurrentNoteDownloads(
49
std::optional<quint32> maxConcurrentNoteDownloads) = 0;
50
51
virtual
ISyncOptionsBuilder
& setMaxConcurrentResourceDownloads(
52
std::optional<quint32> maxConcurrentResourceDownloads) = 0;
53
54
[[nodiscard]]
virtual
ISyncOptionsPtr build() = 0;
55
};
56
57
[[nodiscard]] QUENTIER_EXPORT ISyncOptionsBuilderPtr createSyncOptionsBuilder();
58
59
}
// namespace quentier::synchronization
quentier::synchronization::ISyncOptionsBuilder
Definition
ISyncOptionsBuilder.h:33
Generated on
for libquentier by
1.18.0