19#ifndef LOMIRI_DOWNLOADMANAGER_CLIENT_MANAGER_IMPL_H
20#define LOMIRI_DOWNLOADMANAGER_CLIENT_MANAGER_IMPL_H
22#include <QDBusConnection>
23#include <QDBusObjectPath>
25#include <lomiri/transfers/visibility.h>
26#include <lomiri/transfers/system/dbus_connection.h>
46class ManagerInterface;
48class LOMIRI_TRANSFERS_PRIVATE ManagerImpl :
public Manager {
53 friend class DownloadManagerPCW;
54 friend class GroupManagerPCW;
57 virtual ~ManagerImpl();
58 virtual Download* getDownloadForId(
const QString&
id);
59 virtual void createDownload(DownloadStruct downStruct);
60 virtual void createDownload(DownloadStruct downStruct,
63 virtual void createDownload(StructList downs,
64 const QString &algorithm,
66 const QVariantMap &metadata,
68 virtual void createDownload(StructList downs,
69 const QString &algorithm,
71 const QVariantMap &metadata,
75 virtual void getAllDownloads(
const QString &appId,
bool uncollected);
76 virtual void getAllDownloads(
const QString &appId,
79 DownloadsListCb errCb);
80 virtual void getAllDownloadsWithMetadata(
const QString &name,
81 const QString &value);
82 virtual void getAllDownloadsWithMetadata(
const QString &name,
84 MetadataDownloadsListCb cb,
85 MetadataDownloadsListCb errCb);
88 Error* lastError()
const;
89 void allowMobileDataDownload(
bool allowed);
90 bool isMobileDataDownload();
91 qulonglong defaultThrottle();
92 void setDefaultThrottle(qulonglong speed);
96 ManagerImpl(
const QDBusConnection& conn,
97 const QString& path =
"",
100 ManagerImpl(
const QDBusConnection& conn,
102 ManagerInterface* interface,
107 void onWatcherDone();
108 void setLastError(
const QDBusError& err);
111 bool _isError =
false;
112 QDBusConnection _conn;
113 QString _servicePath;
114 Error* _lastError =
nullptr;
115 ManagerInterface* _dbusInterface =
nullptr;
The Download class allows to control a download that was created in the download manager.
The Error class is the base class that represents an error in the download manager API.
The Manager class is the entry point of the download manager API and allows the client to create down...