diff --git a/server-sdk b/server-sdk index f387b60..5025a68 160000 --- a/server-sdk +++ b/server-sdk @@ -1 +1 @@ -Subproject commit f387b600f787fe4d71f647ad4a90ff41bbb4b412 +Subproject commit 5025a68891fc7ffd72300327de7a1a43b6ca80b6 diff --git a/src/app/main.cpp b/src/app/main.cpp index 00849fd..56d76ae 100644 --- a/src/app/main.cpp +++ b/src/app/main.cpp @@ -39,7 +39,7 @@ int main(int argc, char *argv[]) //filters << "*=false"; QLoggingCategory::setFilterRules(filters.join(QStringLiteral("\n"))); - SyncManager api; + SyncManager api(parser.isSet(dryModeOption)); // TODO: handle error in init if (api.init()) { diff --git a/src/colnod/colnodapi.cpp b/src/colnod/colnodapi.cpp index 099fcba..8b4585f 100644 --- a/src/colnod/colnodapi.cpp +++ b/src/colnod/colnodapi.cpp @@ -6,8 +6,8 @@ ColnodAPI::ColnodAPI() { } -ColnodAPI::ColnodAPI(serversdk::RequestManager* reqMan, qint64 lastSync, QString userName, QString password) - :mReqMan(reqMan), mUserName(userName), mPassword(password) +ColnodAPI::ColnodAPI(serversdk::RequestManager* reqMan, qint64 lastSync, bool dryMode, QString userName, QString password) + :mReqMan(reqMan), mUserName(userName), mPassword(password), mDryMode(dryMode) { mLastSync.set_timestamp(lastSync); data = std::make_shared(); @@ -25,7 +25,7 @@ void ColnodAPI::downloadData() // Get token AuthToken token; token.fromJson(login->responseData()); - authToken = token.idWithoutCurlyBraces(); + authToken = token.id(); // if I have all data emit downloadDataFinished connect(this, &ColnodAPI::partOfDataReady, this, &ColnodAPI::areDataReady); @@ -39,12 +39,12 @@ void ColnodAPI::downloadData() void ColnodAPI::processData(std::shared_ptr data) { connect(this, &ColnodAPI::partOfDataProcessFinished, this, &ColnodAPI::isDataProcessFinished); - if ( !data->updatedTokens.isEmpty()) { + if ( !data->updatedTokens.isEmpty() && !mDryMode) { setTokens(data->updatedTokens); } else { emit partOfDataProcessFinished(); } - if ( !data->deletedTokens.isEmpty()) { + if ( !data->deletedTokens.isEmpty() && !mDryMode) { deleteTokens(data->deletedTokens); } else { emit partOfDataProcessFinished(); diff --git a/src/colnod/colnodapi.h b/src/colnod/colnodapi.h index 5b5502c..8fb1267 100644 --- a/src/colnod/colnodapi.h +++ b/src/colnod/colnodapi.h @@ -16,12 +16,7 @@ class LoginResp : public serversdk::DatabaseTable { class AuthToken : public serversdk::DatabaseTable { Q_OBJECT - TABLE_PROPERTY(QUuid, id, set_id, QUuid()) - public: - QString idWithoutCurlyBraces() - { - return a_id.toString().mid(1, 36); - } + TABLE_PROPERTY(QString, id, set_id, QString()) }; class Timestamp : public serversdk::DatabaseTable { @@ -39,7 +34,7 @@ class ColnodAPI: public QObject Q_OBJECT public: ColnodAPI(); - ColnodAPI(serversdk::RequestManager* reqMan, qint64 lastSync = 0, QString userName = "spaceti", QString password = "spaceti1"); + ColnodAPI(serversdk::RequestManager* reqMan, qint64 lastSync = 0, bool dryMode = false, QString userName = "spaceti", QString password = "spaceti1"); void downloadData(); void processData(std::shared_ptr data); @@ -94,6 +89,7 @@ private: QString mUserName; QString mPassword; Timestamp mLastSync; + bool mDryMode; std::shared_ptr data; diff --git a/src/colnod/databaseapi.cpp b/src/colnod/databaseapi.cpp index 99b81e5..2db3a51 100644 --- a/src/colnod/databaseapi.cpp +++ b/src/colnod/databaseapi.cpp @@ -4,10 +4,12 @@ Q_LOGGING_CATEGORY(database, "db.api"); #define STH 803 -DatabaseAPI::DatabaseAPI(serversdk::DatabaseManager *dbMan) - :mDbMan(dbMan), utils(std::make_unique(dbMan)) +DatabaseAPI::DatabaseAPI(serversdk::DatabaseManager *dbMan, bool dryMode) + : mDryMode(dryMode), + mDbMan(dbMan), + utils(std::make_unique(dbMan)) { - + mDbMan->setDryMode(dryMode); } bool DatabaseAPI::open() diff --git a/src/colnod/databaseapi.h b/src/colnod/databaseapi.h index 183d386..07fae20 100644 --- a/src/colnod/databaseapi.h +++ b/src/colnod/databaseapi.h @@ -15,7 +15,7 @@ class DatabaseAPI : public QObject { Q_OBJECT public: - explicit DatabaseAPI(serversdk::DatabaseManager *dbMan); + explicit DatabaseAPI(serversdk::DatabaseManager *dbMan, bool dryMode); bool open(); @@ -47,6 +47,7 @@ signals: void downloadDataFinished(std::shared_ptr = std::shared_ptr()); private: + bool mDryMode; serversdk::DatabaseManager *mDbMan = nullptr; std::unique_ptr utils; }; diff --git a/src/colnod/syncmanager.cpp b/src/colnod/syncmanager.cpp index 68a9161..5498b40 100644 --- a/src/colnod/syncmanager.cpp +++ b/src/colnod/syncmanager.cpp @@ -4,15 +4,20 @@ Q_LOGGING_CATEGORY(syncmanager, "sync.manager"); +SyncManager::SyncManager(bool dryMode) + :mDryMode(dryMode) +{ + +} bool SyncManager::init() { - database = std::make_shared(&dbMan); + database = std::make_shared(&dbMan, mDryMode); if (database->open()){ mlastSync.set_timestamp(database->getLastSync()); - colnod = std::make_shared(&reqMan, mlastSync.timestamp()); + colnod = std::make_shared(&reqMan, mlastSync.timestamp(), mDryMode); // -1 --> some error with getting data from DB if (mlastSync.timestamp() >= 0){ @@ -22,6 +27,7 @@ bool SyncManager::init() return false; } + void SyncManager::run() { qint64 syncBegin = database->getNow(); @@ -157,8 +163,8 @@ void SyncManager::areDataReady() { if (++dataAmount == 2) { - qDebug(syncmanager) << "DOWNLOADING DATA -> FINISHED"; - qDebug(syncmanager) << EQUALS; + qInfo(syncmanager) << "DOWNLOADING DATA -> FINISHED"; + qInfo(syncmanager) << EQUALS; emit dataReady(); } diff --git a/src/colnod/syncmanager.h b/src/colnod/syncmanager.h index 07a2560..de1387e 100644 --- a/src/colnod/syncmanager.h +++ b/src/colnod/syncmanager.h @@ -10,6 +10,8 @@ class SyncManager : public QObject Q_OBJECT public: + + SyncManager(bool dryMode); bool init(); void run(); @@ -44,4 +46,5 @@ private: std::shared_ptr databaseDataToProcess; int dataAmount = 0; + bool mDryMode; }; diff --git a/test/unitTests/complextest.cpp b/test/unitTests/complextest.cpp index 3951dbb..b450688 100644 --- a/test/unitTests/complextest.cpp +++ b/test/unitTests/complextest.cpp @@ -12,8 +12,8 @@ void ComplexTest::initTestCase() // deleteTokensRespSpy.wait(timeout); // QTest::qWait(2500); // Logger *logger = Logger::getLogger(); - start = QDateTime::currentMSecsSinceEpoch()-2000; - api = new SyncManager(); + //start = QDateTime::currentMSecsSinceEpoch()-2000; + //api = new SyncManager(); qDebug() << start; }