On/Off for activity logger

This commit is contained in:
Atlante45 2014-07-16 12:22:27 -07:00
parent 8128214144
commit 5dca794322
4 changed files with 22 additions and 4 deletions

View file

@ -32,6 +32,7 @@
#include <AccountManager.h> #include <AccountManager.h>
#include <XmppClient.h> #include <XmppClient.h>
#include <UUID.h> #include <UUID.h>
#include <UserActivityLogger.h>
#include "Application.h" #include "Application.h"
#include "AccountManager.h" #include "AccountManager.h"
@ -433,8 +434,14 @@ Menu::Menu() :
addCheckableActionToQMenuAndActionHash(handOptionsMenu, MenuOption::ShowIKConstraints, 0, false); addCheckableActionToQMenuAndActionHash(handOptionsMenu, MenuOption::ShowIKConstraints, 0, false);
addCheckableActionToQMenuAndActionHash(handOptionsMenu, MenuOption::AlignForearmsWithWrists, 0, true); addCheckableActionToQMenuAndActionHash(handOptionsMenu, MenuOption::AlignForearmsWithWrists, 0, true);
addCheckableActionToQMenuAndActionHash(handOptionsMenu, MenuOption::AlternateIK, 0, false); addCheckableActionToQMenuAndActionHash(handOptionsMenu, MenuOption::AlternateIK, 0, false);
addCheckableActionToQMenuAndActionHash(developerMenu, MenuOption::DisableNackPackets, 0, false); addCheckableActionToQMenuAndActionHash(developerMenu, MenuOption::DisableNackPackets, 0, false);
addCheckableActionToQMenuAndActionHash(developerMenu,
MenuOption::DisableActivityLogger,
0,
false,
&UserActivityLogger::getInstance(),
SLOT(disable(bool)));
addDisabledActionAndSeparator(developerMenu, "Testing"); addDisabledActionAndSeparator(developerMenu, "Testing");

View file

@ -341,6 +341,7 @@ namespace MenuOption {
const QString Console = "Console..."; const QString Console = "Console...";
const QString DecreaseAvatarSize = "Decrease Avatar Size"; const QString DecreaseAvatarSize = "Decrease Avatar Size";
const QString DecreaseVoxelSize = "Decrease Voxel Size"; const QString DecreaseVoxelSize = "Decrease Voxel Size";
const QString DisableActivityLogger = "Disable Activity Logger";
const QString DisableAutoAdjustLOD = "Disable Automatically Adjusting LOD"; const QString DisableAutoAdjustLOD = "Disable Automatically Adjusting LOD";
const QString DisableNackPackets = "Disable NACK Packets"; const QString DisableNackPackets = "Disable NACK Packets";
const QString DisableQAudioOutputOverflowCheck = "Disable QAudioOutput Overflow Check"; const QString DisableQAudioOutputOverflowCheck = "Disable QAudioOutput Overflow Check";

View file

@ -9,13 +9,13 @@
// See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
// //
#include "UserActivityLogger.h"
#include <QEventLoop> #include <QEventLoop>
#include <QJsonDocument> #include <QJsonDocument>
#include <QHttpMultiPart> #include <QHttpMultiPart>
#include <QTimer> #include <QTimer>
#include "UserActivityLogger.h"
static const QString USER_ACTIVITY_URL = "/api/v1/user_activities"; static const QString USER_ACTIVITY_URL = "/api/v1/user_activities";
UserActivityLogger& UserActivityLogger::getInstance() { UserActivityLogger& UserActivityLogger::getInstance() {
@ -23,10 +23,18 @@ UserActivityLogger& UserActivityLogger::getInstance() {
return sharedInstance; return sharedInstance;
} }
UserActivityLogger::UserActivityLogger() { UserActivityLogger::UserActivityLogger() : _disabled(false) {
}
void UserActivityLogger::disable(bool disable) {
_disabled = disable;
} }
void UserActivityLogger::logAction(QString action, QJsonObject details, JSONCallbackParameters params) { void UserActivityLogger::logAction(QString action, QJsonObject details, JSONCallbackParameters params) {
if (_disabled) {
return;
}
AccountManager& accountManager = AccountManager::getInstance(); AccountManager& accountManager = AccountManager::getInstance();
QHttpMultiPart* multipart = new QHttpMultiPart(QHttpMultiPart::FormDataType); QHttpMultiPart* multipart = new QHttpMultiPart(QHttpMultiPart::FormDataType);

View file

@ -26,6 +26,7 @@ public:
static UserActivityLogger& getInstance(); static UserActivityLogger& getInstance();
public slots: public slots:
void disable(bool disable);
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);
@ -43,6 +44,7 @@ private slots:
private: private:
UserActivityLogger(); UserActivityLogger();
bool _disabled;
}; };
#endif // hifi_UserActivityLogger_h #endif // hifi_UserActivityLogger_h