1 #ifndef USERMANAGEMENT_H
2 #define USERMANAGEMENT_H
4 #define REAL_SERVER "ws://localhost:1212/api?token=hello"
7 #include "applicationmodel.h"
10 #include <QtWebSockets/QWebSocket>
12 #include <QtWebSockets/QWebSocketServer>
14 //{"postal_address":"201 Mission Street","loc":"37.7914374,-122.3950694","country":"USA","mail":"bjensen@example.com",
15 //"city":"San Francisco","graphEmail":"bjensen@example.com","graphPreferredLanguage":"en","ccNumberMasked":"************1212",
16 //"ccExpYear":"19","description":"Original description","ccExpMonth":"01","groups":[],"last_name":"Jensen"
17 //"ccNumber":"123-1111-2222-3333-1212","house_identifier":"ForgeRock","phone":"+1 408 555 1862","name":"bjensen"
18 //"state":"CA","fax":"+1 408 555 1862","common_name":"Barbara Jensen","postal_code":"94105","first_name":"Barbara","keytoken":"EB:7C:23:C6:21:BF"}
20 QString postal_address;
26 QString graphPreferredLanguage;
27 QString ccNumberMasked;
34 QString house_identifier;
45 class UserManagement : public QObject
49 explicit UserManagement(QObject *root);
54 void connectWebsockets();
57 void onTextMessageReceived(QString message);
58 void onWebSocketError(QAbstractSocket::SocketError);
61 void onServerNewConnection();
62 void onServerClosed();
63 void processBinaryMessage(QByteArray message);
64 void processTextMessage(QString message);
65 void serverSocketDisconnected();
66 void slot_timerTest();
70 QObject *shortcutArea;
74 ApplicationModel *appModel;
77 bool jsonToMap(const QByteArray &buf, QVariantMap *map) const;
78 bool mapToJson(const QVariantMap &map, QByteArray *json) const;
79 bool jsonToList(const QByteArray &buf, QList<QVariant> *list) const;
80 bool listToJson(const QList<QVariant> &list, QByteArray *json) const;
81 void setUser(const User &user);
85 QWebSocketServer *webSocketServer;
90 #endif // USERMANAGEMENT_H