mirror of
https://github.com/HifiExperiments/overte.git
synced 2025-08-09 23:46:26 +02:00
CR
This commit is contained in:
parent
958367f579
commit
e9826250cb
3 changed files with 21 additions and 18 deletions
|
@ -398,22 +398,8 @@ Application::Application(int& argc, char** argv, QElapsedTimer &startup_time) :
|
||||||
}
|
}
|
||||||
|
|
||||||
Application::~Application() {
|
Application::~Application() {
|
||||||
// In order to get the end of the session, we nned to give the account manager enough time to send the packet.
|
|
||||||
QEventLoop loop;
|
|
||||||
// Here we connect the callbacks to stop the event loop
|
|
||||||
JSONCallbackParameters params;
|
|
||||||
params.jsonCallbackReceiver = &loop;
|
|
||||||
params.errorCallbackReceiver = &loop;
|
|
||||||
params.jsonCallbackMethod = "quit";
|
|
||||||
params.errorCallbackMethod = "quit";
|
|
||||||
// In case something goes wrong, we also setup a timer so that the delai is not greater than DELAY_TIME
|
|
||||||
int DELAY_TIME = 1000;
|
int DELAY_TIME = 1000;
|
||||||
QTimer timer;
|
UserActivityLogger::getInstance().close(DELAY_TIME);
|
||||||
connect(&timer, &QTimer::timeout, &loop, &QEventLoop::quit);
|
|
||||||
// Now we can log it
|
|
||||||
UserActivityLogger::getInstance().close(params);
|
|
||||||
timer.start(DELAY_TIME);
|
|
||||||
loop.exec();
|
|
||||||
|
|
||||||
qInstallMessageHandler(NULL);
|
qInstallMessageHandler(NULL);
|
||||||
|
|
||||||
|
|
|
@ -11,8 +11,10 @@
|
||||||
|
|
||||||
#include "UserActivityLogger.h"
|
#include "UserActivityLogger.h"
|
||||||
|
|
||||||
#include <QHttpMultiPart>
|
#include <QEventLoop>
|
||||||
#include <QJsonDocument>
|
#include <QJsonDocument>
|
||||||
|
#include <QHttpMultiPart>
|
||||||
|
#include <QTimer>
|
||||||
|
|
||||||
static const QString USER_ACTIVITY_URL = "/api/v1/user_activities";
|
static const QString USER_ACTIVITY_URL = "/api/v1/user_activities";
|
||||||
|
|
||||||
|
@ -76,9 +78,24 @@ void UserActivityLogger::launch(QString applicationVersion) {
|
||||||
logAction(ACTION_NAME, actionDetails);
|
logAction(ACTION_NAME, actionDetails);
|
||||||
}
|
}
|
||||||
|
|
||||||
void UserActivityLogger::close(JSONCallbackParameters params) {
|
void UserActivityLogger::close(int delayTime) {
|
||||||
const QString ACTION_NAME = "close";
|
const QString ACTION_NAME = "close";
|
||||||
|
|
||||||
|
// In order to get the end of the session, we need to give the account manager enough time to send the packet.
|
||||||
|
QEventLoop loop;
|
||||||
|
// Here we connect the callbacks to stop the event loop
|
||||||
|
JSONCallbackParameters params;
|
||||||
|
params.jsonCallbackReceiver = &loop;
|
||||||
|
params.errorCallbackReceiver = &loop;
|
||||||
|
params.jsonCallbackMethod = "quit";
|
||||||
|
params.errorCallbackMethod = "quit";
|
||||||
|
// In case something goes wrong, we also setup a timer so that the delai is not greater than delayTime
|
||||||
|
QTimer timer;
|
||||||
|
connect(&timer, &QTimer::timeout, &loop, &QEventLoop::quit);
|
||||||
|
// Now we can log it
|
||||||
logAction(ACTION_NAME, QJsonObject(), params);
|
logAction(ACTION_NAME, QJsonObject(), params);
|
||||||
|
timer.start(delayTime);
|
||||||
|
loop.exec();
|
||||||
}
|
}
|
||||||
|
|
||||||
void UserActivityLogger::changedDisplayName(QString displayName) {
|
void UserActivityLogger::changedDisplayName(QString displayName) {
|
||||||
|
|
|
@ -29,7 +29,7 @@ public slots:
|
||||||
void logAction(QString action, QJsonObject details = QJsonObject(), JSONCallbackParameters params = JSONCallbackParameters());
|
void logAction(QString action, QJsonObject details = QJsonObject(), JSONCallbackParameters params = JSONCallbackParameters());
|
||||||
|
|
||||||
void launch(QString applicationVersion);
|
void launch(QString applicationVersion);
|
||||||
void close(JSONCallbackParameters params = JSONCallbackParameters());
|
void close(int delayTime);
|
||||||
void changedDisplayName(QString displayName);
|
void changedDisplayName(QString displayName);
|
||||||
void changedModel(QString typeOfModel, QString modelURL);
|
void changedModel(QString typeOfModel, QString modelURL);
|
||||||
void changedDomain(QString domainURL);
|
void changedDomain(QString domainURL);
|
||||||
|
|
Loading…
Reference in a new issue