diff options
| author | Javier <dev.git@javispedro.com> | 2014-11-29 21:08:56 +0100 |
|---|---|---|
| committer | Javier <dev.git@javispedro.com> | 2014-11-29 21:08:56 +0100 |
| commit | 67e85358bc789e93f3f17527d9f721d6a9e5f94d (patch) | |
| tree | 27fb32f683289308434821fabb86f7d4c53a0e50 | |
| parent | ecba425f8c029e103211446e9f250927a832315f (diff) | |
introduce the appmanager
| -rw-r--r-- | daemon/appmanager.cpp | 15 | ||||
| -rw-r--r-- | daemon/appmanager.h | 20 | ||||
| -rw-r--r-- | daemon/daemon.cpp | 3 | ||||
| -rw-r--r-- | daemon/daemon.pro | 6 | ||||
| -rw-r--r-- | daemon/manager.cpp | 6 | ||||
| -rw-r--r-- | daemon/manager.h | 4 |
6 files changed, 47 insertions, 7 deletions
diff --git a/daemon/appmanager.cpp b/daemon/appmanager.cpp new file mode 100644 index 0000000..b4a3d68 --- /dev/null +++ b/daemon/appmanager.cpp @@ -0,0 +1,15 @@ +#include <QStandardPaths> +#include <QUuid> +#include "appmanager.h" + +AppManager::AppManager(QObject *parent) + : QObject(parent) +{ +} + +QString AppManager::getAppDir(const QUuid& uuid) const +{ + return QStandardPaths::locate(QStandardPaths::DataLocation, + QString("apps/%1").arg(uuid.toString()), + QStandardPaths::LocateDirectory); +} diff --git a/daemon/appmanager.h b/daemon/appmanager.h new file mode 100644 index 0000000..59d0bd7 --- /dev/null +++ b/daemon/appmanager.h @@ -0,0 +1,20 @@ +#ifndef APPMANAGER_H +#define APPMANAGER_H + +#include <QObject> + +class AppManager : public QObject +{ + Q_OBJECT + +public: + explicit AppManager(QObject *parent = 0); + + bool installPebbleApp(const QString &pbwFile); + + QList<QUuid> allInstalledApps() const; + + QString getAppDir(const QUuid &uuid) const; +}; + +#endif // APPMANAGER_H diff --git a/daemon/daemon.cpp b/daemon/daemon.cpp index 9d89980..80ae667 100644 --- a/daemon/daemon.cpp +++ b/daemon/daemon.cpp @@ -82,7 +82,8 @@ int main(int argc, char *argv[]) DBusConnector dbus; VoiceCallManager voice(&settings); NotificationManager notifications(&settings); - Manager manager(&watch, &dbus, &voice, ¬ifications, &settings); + AppManager apps(&settings); + Manager manager(&watch, &dbus, &voice, ¬ifications, &apps, &settings); signal(SIGINT, signalhandler); signal(SIGTERM, signalhandler); diff --git a/daemon/daemon.pro b/daemon/daemon.pro index 0528ec9..78091e0 100644 --- a/daemon/daemon.pro +++ b/daemon/daemon.pro @@ -22,7 +22,8 @@ SOURCES += \ watchconnector.cpp \ dbusconnector.cpp \ dbusadaptor.cpp \ - watchcommands.cpp + watchcommands.cpp \ + appmanager.cpp HEADERS += \ manager.h \ @@ -33,7 +34,8 @@ HEADERS += \ dbusconnector.h \ dbusadaptor.h \ watchcommands.h \ - settings.h + settings.h \ + appmanager.h OTHER_FILES += \ org.pebbled.xml \ diff --git a/daemon/manager.cpp b/daemon/manager.cpp index b01006c..7761864 100644 --- a/daemon/manager.cpp +++ b/daemon/manager.cpp @@ -5,9 +5,9 @@ #include <QtContacts/QContact> #include <QtContacts/QContactPhoneNumber> -Manager::Manager(watch::WatchConnector *watch, DBusConnector *dbus, VoiceCallManager *voice, NotificationManager *notifications, Settings *settings) : - QObject(0), watch(watch), dbus(dbus), voice(voice), notifications(notifications), commands(new WatchCommands(watch, this)), - settings(settings), notification(MNotification::DeviceEvent) +Manager::Manager(watch::WatchConnector *watch, DBusConnector *dbus, VoiceCallManager *voice, NotificationManager *notifications, AppManager *apps, Settings *settings) : + QObject(0), watch(watch), dbus(dbus), voice(voice), notifications(notifications), apps(apps), + commands(new WatchCommands(watch, this)), settings(settings), notification(MNotification::DeviceEvent) { connect(settings, SIGNAL(valueChanged(QString)), SLOT(onSettingChanged(const QString&))); connect(settings, SIGNAL(valuesChanged()), SLOT(onSettingsChanged())); diff --git a/daemon/manager.h b/daemon/manager.h index 9de5667..5946bf0 100644 --- a/daemon/manager.h +++ b/daemon/manager.h @@ -5,6 +5,7 @@ #include "dbusconnector.h" #include "voicecallmanager.h" #include "notificationmanager.h" +#include "appmanager.h" #include "watchcommands.h" #include "settings.h" @@ -38,6 +39,7 @@ class Manager : DBusConnector *dbus; VoiceCallManager *voice; NotificationManager *notifications; + AppManager *apps; WatchCommands *commands; @@ -55,7 +57,7 @@ class Manager : QScopedPointer<icu::Transliterator> transliterator; public: - explicit Manager(watch::WatchConnector *watch, DBusConnector *dbus, VoiceCallManager *voice, NotificationManager *notifications, Settings *settings); + explicit Manager(watch::WatchConnector *watch, DBusConnector *dbus, VoiceCallManager *voice, NotificationManager *notifications, AppManager *apps, Settings *settings); Q_INVOKABLE QString findPersonByNumber(QString number); Q_INVOKABLE QString getCurrentProfile(); |
