making away state and user modes persistent
[quassel.git] / src / core / sqlitestorage.h
index c1f55d8..fbb366f 100644 (file)
@@ -73,6 +73,12 @@ public slots:
   virtual void setChannelPersistent(UserId user, const NetworkId &networkId, const QString &channel, bool isJoined);
   virtual void setPersistentChannelKey(UserId user, const NetworkId &networkId, const QString &channel, const QString &key);
 
+  /* persistent user states */
+  virtual QString awayMessage(UserId user, NetworkId networkId);
+  virtual void setAwayMessage(UserId user, NetworkId networkId, const QString &awayMsg);
+  virtual QString userModes(UserId user, NetworkId networkId);
+  virtual void setUserModes(UserId user, NetworkId networkId, const QString &userModes);
+  
   /* Buffer handling */
   virtual BufferInfo bufferInfo(UserId user, const NetworkId &networkId, BufferInfo::Type type, const QString &buffer = "", bool create = true);
   virtual BufferInfo getBufferInfo(UserId user, const BufferId &bufferId);
@@ -94,6 +100,8 @@ protected:
   inline virtual QString driverName() { return "QSQLITE"; }
   inline virtual QString databaseName() { return backlogFile(); }
   virtual int installedSchemaVersion();
+  virtual bool updateSchemaVersion(int newVersion);
+  virtual bool setupSchemaVersion(int version);
   bool safeExec(QSqlQuery &query, int retryCount = 0);
 
 private: