Fix SQLite buffer setup, fix PostgreSQL migration
[quassel.git] / src / core / abstractsqlstorage.h
index d821e61..fc1f67e 100644 (file)
@@ -1,5 +1,5 @@
 /***************************************************************************
- *   Copyright (C) 2005-07 by the Quassel Project                          *
+ *   Copyright (C) 2005-2016 by the Quassel Project                        *
  *   devel@quassel-irc.org                                                 *
  *                                                                         *
  *   This program is free software; you can redistribute it and/or modify  *
@@ -15,7 +15,7 @@
  *   You should have received a copy of the GNU General Public License     *
  *   along with this program; if not, write to the                         *
  *   Free Software Foundation, Inc.,                                       *
- *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ *   51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.         *
  ***************************************************************************/
 
 #ifndef ABSTRACTSQLSTORAGE_H
@@ -80,13 +80,14 @@ protected:
      *  When reimplementing this method, don't use logDB() inside this function as
      *  this would cause as we're just about to initialize that DB connection.
      */
-    inline virtual void initDbSession(QSqlDatabase & /* db */) {}
+    inline virtual bool initDbSession(QSqlDatabase & /* db */) { return true; }
 
 private slots:
     void connectionDestroyed();
 
 private:
     void addConnectionToPool();
+    void dbConnect(QSqlDatabase &db);
 
     int _schemaVersion;
     bool _debug;
@@ -130,6 +131,7 @@ public:
         UserId id;
         QString username;
         QString password;
+        int hashversion;
     };
 
     struct SenderMO {
@@ -186,6 +188,12 @@ public:
         int autoreconnectretries;
         bool unlimitedconnectretries;
         bool rejoinchannels;
+        // Custom rate limiting
+        bool usecustommessagerate;
+        int messagerateburstsize;
+        int messageratedelay;
+        bool unlimitedmessagerate;
+        // ...
         bool connected;
         QString usermode;
         QString awaymessage;
@@ -204,6 +212,7 @@ public:
         QString buffername;
         QString buffercname;
         int buffertype;
+        int lastmsgid;
         int lastseenmsgid;
         int markerlinemsgid;
         QString key;
@@ -228,6 +237,7 @@ public:
         int port;
         QString password;
         bool ssl;
+        bool sslverify;     /// If true, validate SSL certificates
         int sslversion;
         bool useproxy;
         int proxytype;