mirror of
https://gitlab.com/spaceti-app/integrations/acs/colnod-connector.git
synced 2026-07-12 12:00:37 +02:00
continue with fixing
This commit is contained in:
parent
5dea3592e5
commit
7ac0df57e5
@ -18,11 +18,13 @@ ColnodAPI::ColnodAPI(serversdk::RequestManager* reqMan, const bool &dryMode, con
|
|||||||
* @return signal with nullptr when something went wrong
|
* @return signal with nullptr when something went wrong
|
||||||
* @return signal with data when valid data returned
|
* @return signal with data when valid data returned
|
||||||
*/
|
*/
|
||||||
void ColnodAPI::downloadData(const Timestamp &time)
|
void ColnodAPI::downloadData(const qint64 &time)
|
||||||
{
|
{
|
||||||
// Have to get Login
|
// Have to get Login
|
||||||
|
Timestamp timestamp;
|
||||||
|
timestamp.setTimestamp(time);
|
||||||
auto login = requestLogin();
|
auto login = requestLogin();
|
||||||
connect(login.get(), &serversdk::Request::finished, this, [=](){
|
connect(login.get(), &serversdk::Request::finished, this, [&](){
|
||||||
// Get login token
|
// Get login token
|
||||||
if (!checkRequest(login)) {
|
if (!checkRequest(login)) {
|
||||||
emit downloadDataFinished(nullptr);
|
emit downloadDataFinished(nullptr);
|
||||||
@ -47,31 +49,32 @@ void ColnodAPI::downloadData(const Timestamp &time)
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
// if I have all data emit downloadDataFinished
|
// if I have all data emit downloadDataFinished
|
||||||
connect(this, &ColnodAPI::partOfDataReady, this, &ColnodAPI::areDataReady);
|
connect(this, &ColnodAPI::partOfDataReady, this, &ColnodAPI::areDataReady);
|
||||||
|
|
||||||
auto tokensRequest = getTokensUpdated(time);
|
auto tokensRequest = getTokensUpdated(timestamp);
|
||||||
connect(tokensRequest.get(), &serversdk::Request::finished, errorHandler);
|
connect(tokensRequest.get(), &serversdk::Request::finished, errorHandler);
|
||||||
connect(tokensRequest.get(), &serversdk::Request::finished, [=](){
|
connect(tokensRequest.get(), &serversdk::Request::finished, [=](){
|
||||||
saveUpdatedTokens(data, tokensRequest->responseData());
|
saveUpdatedTokens(data, tokensRequest->responseData());
|
||||||
emit partOfDataReady(data);
|
emit partOfDataReady(data);
|
||||||
});
|
});
|
||||||
|
|
||||||
auto deletedTokensRequest = getTokensDeleted(time);
|
auto deletedTokensRequest = getTokensDeleted(timestamp);
|
||||||
connect(deletedTokensRequest.get(), &serversdk::Request::finished, errorHandler);
|
connect(deletedTokensRequest.get(), &serversdk::Request::finished, errorHandler);
|
||||||
connect(deletedTokensRequest.get(), &serversdk::Request::finished, [=](){
|
connect(deletedTokensRequest.get(), &serversdk::Request::finished, [=](){
|
||||||
saveDeletedTokens(data, deletedTokensRequest->responseData());
|
saveDeletedTokens(data, deletedTokensRequest->responseData());
|
||||||
emit partOfDataReady(data);
|
emit partOfDataReady(data);
|
||||||
});
|
});
|
||||||
|
|
||||||
auto subjectsRequest = getSubjectsUpdated(time);
|
auto subjectsRequest = getSubjectsUpdated(timestamp);
|
||||||
connect(subjectsRequest.get(), &serversdk::Request::finished, errorHandler);
|
connect(subjectsRequest.get(), &serversdk::Request::finished, errorHandler);
|
||||||
connect(subjectsRequest.get(), &serversdk::Request::finished, [=](){
|
connect(subjectsRequest.get(), &serversdk::Request::finished, [=](){
|
||||||
saveUpdatedSubjects(data, subjectsRequest->responseData());
|
saveUpdatedSubjects(data, subjectsRequest->responseData());
|
||||||
emit partOfDataReady(data);
|
emit partOfDataReady(data);
|
||||||
});
|
});
|
||||||
|
|
||||||
auto deletedSubjectsRequest = getSubjectsDeleted(time);
|
auto deletedSubjectsRequest = getSubjectsDeleted(timestamp);
|
||||||
connect(deletedSubjectsRequest.get(), &serversdk::Request::finished, errorHandler);
|
connect(deletedSubjectsRequest.get(), &serversdk::Request::finished, errorHandler);
|
||||||
connect(deletedSubjectsRequest.get(), &serversdk::Request::finished, [=](){
|
connect(deletedSubjectsRequest.get(), &serversdk::Request::finished, [=](){
|
||||||
saveDeletedSubjects(data, deletedSubjectsRequest->responseData());
|
saveDeletedSubjects(data, deletedSubjectsRequest->responseData());
|
||||||
@ -114,14 +117,14 @@ std::shared_ptr<serversdk::Request> ColnodAPI::requestLogin()
|
|||||||
{
|
{
|
||||||
Q_ASSERT(mReqMan);
|
Q_ASSERT(mReqMan);
|
||||||
LoginResp login;
|
LoginResp login;
|
||||||
login.set_username(userName());
|
login.setUsername(userName());
|
||||||
|
|
||||||
// password
|
// password
|
||||||
QString encodedPassword = QCryptographicHash::hash(
|
QString encodedPassword = QCryptographicHash::hash(
|
||||||
password().toLocal8Bit(), // -> bytearray
|
password().toLocal8Bit(), // -> bytearray
|
||||||
QCryptographicHash::Sha512 // SHA 512
|
QCryptographicHash::Sha512 // SHA 512
|
||||||
).toHex().toUpper();
|
).toHex().toUpper();
|
||||||
login.set_password(encodedPassword);
|
login.setPassword(encodedPassword);
|
||||||
|
|
||||||
auto loginRequest = composeRequest("/AaaManager/authSession", login.jsonData());
|
auto loginRequest = composeRequest("/AaaManager/authSession", login.jsonData());
|
||||||
loginRequest->setUserName(login.username());
|
loginRequest->setUserName(login.username());
|
||||||
|
|||||||
@ -43,8 +43,8 @@ public:
|
|||||||
ColnodAPI() = default;
|
ColnodAPI() = default;
|
||||||
ColnodAPI(serversdk::RequestManager* reqManconst, const bool &dryMode = false, const QString &userName = "spaceti", const QString &password = "spaceti1");
|
ColnodAPI(serversdk::RequestManager* reqManconst, const bool &dryMode = false, const QString &userName = "spaceti", const QString &password = "spaceti1");
|
||||||
|
|
||||||
void downloadData(const Timestamp &time);
|
void downloadData(const qint64 &time);
|
||||||
bool processData(const std::shared_ptr<Data> &data);
|
void processData(const std::shared_ptr<Data> &data);
|
||||||
|
|
||||||
// New approach
|
// New approach
|
||||||
std::shared_ptr<serversdk::Request> requestLogin();
|
std::shared_ptr<serversdk::Request> requestLogin();
|
||||||
|
|||||||
@ -58,7 +58,7 @@ bool SyncManager::startSynchronization()
|
|||||||
// NOW I HAVE DATA FROM DATABASE
|
// NOW I HAVE DATA FROM DATABASE
|
||||||
|
|
||||||
|
|
||||||
colnod->downloadData(Timestamp(syncBegin));
|
colnod->downloadData(syncBegin);
|
||||||
connect(colnod.get(), &ColnodAPI::downloadDataFinished, [=](std::shared_ptr<Data> colnodData) {
|
connect(colnod.get(), &ColnodAPI::downloadDataFinished, [=](std::shared_ptr<Data> colnodData) {
|
||||||
if (!colnodData) {
|
if (!colnodData) {
|
||||||
qCritical(syncmanager) << "Not possible to get correct data from colnod";
|
qCritical(syncmanager) << "Not possible to get correct data from colnod";
|
||||||
@ -78,9 +78,9 @@ bool SyncManager::startSynchronization()
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!colnod->processData(preparedData->colnodData)) {
|
colnod->processData(preparedData->colnodData);
|
||||||
qCritical(syncmanager) << "Not possible to upload data to colnod";
|
qCritical(syncmanager) << "Not possible to upload data to colnod";
|
||||||
}
|
|
||||||
if (!database->processData(preparedData->databaseData)) {
|
if (!database->processData(preparedData->databaseData)) {
|
||||||
qCritical(syncmanager) << "Not possible to upload data to database";
|
qCritical(syncmanager) << "Not possible to upload data to database";
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user