summaryrefslogtreecommitdiff
path: root/daemon/datalogmanager.cpp
diff options
context:
space:
mode:
authorTomasz Sterna <tomek@xiaoka.com>2015-01-03 16:38:02 +0100
committerTomasz Sterna <tomek@xiaoka.com>2015-01-03 19:07:48 +0100
commit4e7da1944f5fa75a0739c0757d40a8102f045365 (patch)
tree5f3fe179256536e4135eb4d5031a1d754af5e26c /daemon/datalogmanager.cpp
parent4150005566bec7827ce1cdd759a2397d47eba583 (diff)
parente6ec758b364fcaf9fda35e56740c3fcd7e8fe25e (diff)
Merge remote-tracking branch 'javispedro/js-testing'
Conflicts: daemon/daemon.pro daemon/dbusconnector.cpp daemon/manager.cpp daemon/watchcommands.cpp daemon/watchcommands.h daemon/watchconnector.cpp daemon/watchconnector.h log4qt-debug.conf log4qt-release.conf rpm/pebble.spec rpm/pebble.yaml
Diffstat (limited to 'daemon/datalogmanager.cpp')
-rw-r--r--daemon/datalogmanager.cpp42
1 files changed, 42 insertions, 0 deletions
diff --git a/daemon/datalogmanager.cpp b/daemon/datalogmanager.cpp
new file mode 100644
index 0000000..c3562ef
--- /dev/null
+++ b/daemon/datalogmanager.cpp
@@ -0,0 +1,42 @@
+#include "datalogmanager.h"
+#include "unpacker.h"
+
+DataLogManager::DataLogManager(WatchConnector *watch, QObject *parent) :
+ QObject(parent), l(metaObject()->className()), watch(watch)
+{
+ watch->setEndpointHandler(WatchConnector::watchDATA_LOGGING, [this](const QByteArray& data) {
+ if (data.size() < 2) {
+ qCWarning(l) << "small data_logging packet";
+ return false;
+ }
+
+ const char command = data[0];
+ const int session = data[1];
+
+ switch (command) {
+ case WatchConnector::datalogOPEN:
+ qCDebug(l) << "open datalog session" << session;
+ return true;
+ case WatchConnector::datalogCLOSE:
+ qCDebug(l) << "close datalog session" << session;
+ return true;
+ case WatchConnector::datalogTIMEOUT:
+ qCDebug(l) << "timeout datalog session" << session;
+ return true;
+ case WatchConnector::datalogDATA:
+ handleDataCommand(session, data.mid(2));
+ return true;
+ default:
+ return false;
+ }
+ });
+}
+
+void DataLogManager::handleDataCommand(int session, const QByteArray &data)
+{
+ Unpacker u(data);
+
+ // TODO Seemingly related to analytics, so not important.
+
+ qCDebug(l) << "got datalog data" << session << data.size();
+}