class Core : public QObject {
Q_OBJECT
- public:
- static Core * instance();
+public:
+ static Core *instance();
static void destroy();
static void saveState();
/**
* \param userId The users Id
* \param settingName The Name of the Setting
- * \param default Value to return in case it's unset.
+ * \param defaultValue Value to return in case it's unset.
* \return the Value of the Setting or the default value if it is unset.
*/
- static inline QVariant getUserSetting(UserId userId, const QString &settingName, const QVariant &data = QVariant()) {
- return instance()->_storage->getUserSetting(userId, settingName, data);
+ static inline QVariant getUserSetting(UserId userId, const QString &settingName, const QVariant &defaultValue = QVariant()) {
+ return instance()->_storage->getUserSetting(userId, settingName, defaultValue);
}
/* Identity handling */
static inline QTimer &syncTimer() { return instance()->_storageSyncTimer; }
+ static const int AddClientEventId;
+
public slots:
//! Make storage data persistent
/** \note This method is threadsafe.
*/
void syncStorage();
void setupInternalClientSession(SignalProxy *proxy);
+
signals:
//! Sent when a BufferInfo is updated in storage.
void bufferInfoUpdated(UserId user, const BufferInfo &info);
//! Relay From CoreSession::sessionState(const QVariant &). Used for internal connection only
void sessionState(const QVariant &);
+protected:
+ virtual void customEvent(QEvent *event);
+
private slots:
bool startListening();
void stopListening(const QString &msg = QString());
SessionThread *createSession(UserId userId, bool restoreState = false);
void setupClientSession(QTcpSocket *socket, UserId uid);
+ void addClientHelper(QTcpSocket *socket, UserId uid);
void processClientMessage(QTcpSocket *socket, const QVariantMap &msg);
//void processCoreSetup(QTcpSocket *socket, QVariantMap &msg);
QString setupCoreForInternalUsage();