/
dbmanager.h
94 lines (68 loc) · 2.68 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
/*
* Copyright (c) 2013 - 2019 Jolla Ltd.
*
* All rights reserved.
*
* This file is part of Sailfish Transfer Engine package.
*
* You may use this file under the terms of the GNU Lesser General
* Public License version 2.1 as published by the Free Software Foundation
* and appearing in the file license.lgpl included in the packaging
* of this file.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License version 2.1 as published by the Free Software Foundation
* and appearing in the file license.lgpl included in the packaging
* of this file.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*/
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#ifndef DBMANAGER_H
#define DBMANAGER_H
#include <QObject>
#include "transferdbrecord.h"
#include "mediatransferinterface.h"
class MediaItem;
class DbManagerPrivate;
class DbManager
{
public:
static DbManager *instance();
~DbManager();
int createMetadataEntry(int key, const QString &title, const QString &description);
QStringList callback(int key) const;
int createCallbackEntry(int key,
const QString &service,
const QString &path,
const QString &interface,
const QString &cancelMethod,
const QString &restartMethod);
52
int createTransferEntry(const MediaItem *mediaItem);
53
54
55
56
57
58
59
bool updateTransferStatus(int key, TransferEngineData::TransferStatus status);
bool updateProgress(int key, qreal progress);
bool removeTransfer(int key);
60
61
bool clearFailedTransfers(int excludeKey, TransferEngineData::TransferType type);
62
63
bool clearTransfer(int key);
64
65
bool clearTransfers();
66
67
68
69
int transferCount() const;
int activeTransferCount() const;
70
71
QList<TransferDBRecord> transfers() const;
72
73
QList<TransferDBRecord> activeTransfers() const;
74
75
76
77
TransferEngineData::TransferType transferType(int key) const;
TransferEngineData::TransferStatus transferStatus(int key) const;
78
79
80
81
82
qreal transferProgress(int key) const;
int notificationId(int key);
bool setNotificationId(int key, int notificationId);
83
84
85
86
87
88
bool callbackMethods(int key, QString &cancelMethod, QString &restartMethod) const;
MediaItem * mediaItem(int key) const;
private:
DbManager();
89
QList<TransferDBRecord> transfers(TransferEngineData::TransferStatus status) const;
90
91
92
93
94
DbManagerPrivate *d_ptr;
Q_DECLARE_PRIVATE(DbManager)
};
#endif // DBMANAGER_H