Finishing the switch to types.h and the resulting cleanup.
[quassel.git] / src / core / core.h
index eef6a2f..ae1c05c 100644 (file)
@@ -27,6 +27,7 @@
 #include <QTcpSocket>
 
 #include "global.h"
+#include "types.h"
 
 class CoreSession;
 class Storage;
@@ -46,19 +47,20 @@ class Core : public QObject {
     static void disconnectLocalClient();
 
   private slots:
-    //void recvProxySignal(CoreSignal, QVariant, QVariant, QVariant);
     bool startListening(uint port = DEFAULT_PORT);
     void stopListening();
     void incomingConnection();
     void clientHasData();
     void clientDisconnected();
 
+    bool initStorageSqlite(QVariantMap dbSettings, bool setup);
+
   private:
     Core();
     ~Core();
     void init();
     static Core *instanceptr;
-
+    
     //! Initiate a session for the user with the given credentials if one does not already exist.
     /** This function is called during the init process for a new client. If there is no session for the
      *  given user, one is created.
@@ -66,15 +68,19 @@ class Core : public QObject {
      * \return A QVariant containing the session data, e.g. global data and buffers
      */
     QVariant initSession(UserId userId);
-    void processClientInit(QTcpSocket *socket, const QVariant &v);
+    void processClientInit(QTcpSocket *socket, const QVariantMap &msg);
+    void processCoreSetup(QTcpSocket *socket, QVariantMap &msg);
+    
+    QStringList availableStorageProviders();
 
     UserId guiUser;
     QHash<UserId, CoreSession *> sessions;
     Storage *storage;
 
     QTcpServer server; // TODO: implement SSL
-    QHash<QTcpSocket *, UserId> validClients;
     QHash<QTcpSocket *, quint32> blockSizes;
+    
+    bool configured;
 };
 
 #endif