Readd files lost during rebasing, fix minor issues
authorJanne Koschinski <janne@kuschku.de>
Thu, 31 Aug 2017 23:57:42 +0000 (01:57 +0200)
committerManuel Nickschas <sputnick@quassel-irc.org>
Tue, 19 Dec 2017 20:09:13 +0000 (21:09 +0100)
src/core/SQL/PostgreSQL/version/24/upgrade_000_alter_buffer_add_bufferactivity.sql [moved from src/core/SQL/PostgreSQL/version/23/upgrade_000_alter_buffer_add_bufferactivity.sql with 100% similarity]
src/core/SQL/SQLite/version/25/upgrade_000_alter_buffer_add_bufferactivity.sql [moved from src/core/SQL/SQLite/version/24/upgrade_000_alter_buffer_add_bufferactivity.sql with 100% similarity]
src/core/core.h
src/core/sql.qrc
src/core/sqlitestorage.h

index 333d067..420cc62 100644 (file)
@@ -531,6 +531,39 @@ public:
         return instance()->_storage->bufferMarkerLineMsgIds(user);
     }
 
         return instance()->_storage->bufferMarkerLineMsgIds(user);
     }
 
+    //! Update the BufferActivity for a Buffer
+    /** This Method is used to make the activity state of a Buffer persistent
+     *  \note This method is threadsafe.
+     *
+     * \param user      The Owner of that Buffer
+     * \param bufferId  The buffer id
+     * \param MsgId     The Message id where the marker line should be placed
+     */
+    static inline void setBufferActivity(UserId user, const BufferId &bufferId, const Message::Types &activity) {
+        return instance()->_storage->setBufferActivity(user, bufferId, activity);
+    }
+
+
+    //! Get a Hash of all buffer activity states
+    /** This Method is called when the Quassel Core is started to restore the BufferActivity
+     *  \note This method is threadsafe.
+     *
+     * \param user      The Owner of the buffers
+     */
+    static inline QHash<BufferId, Message::Types> bufferActivities(UserId user) {
+        return instance()->_storage->bufferActivities(user);
+    }
+
+    //! Get the bitset of buffer activity states for a buffer
+    /** This method is used to load the activity state of a buffer when its last seen message changes.
+     *  \note This method is threadsafe.
+     *
+     * \param bufferId The buffer
+     * \param lastSeenMsgId     The last seen message
+     */
+    static inline Message::Types bufferActivity(BufferId &bufferId, const MsgId &lastSeenMsgId) {
+        return instance()->_storage->bufferActivity(bufferId, lastSeenMsgId);
+    }
 
     static inline QDateTime startTime() { return instance()->_startTime; }
     static inline bool isConfigured() { return instance()->_configured; }
 
     static inline QDateTime startTime() { return instance()->_startTime; }
     static inline bool isConfigured() { return instance()->_configured; }
index b99a8e0..a6f3b3e 100644 (file)
     <file>./SQL/PostgreSQL/version/21/upgrade_000_add_function_backlog_lastmsgid_update.sql</file>
     <file>./SQL/PostgreSQL/version/21/upgrade_001_add_trigger_backlog_lastmsgid_update.sql</file>
     <file>./SQL/PostgreSQL/version/22/upgrade_000_alter_quasseluser_add_authenticator.sql</file>
     <file>./SQL/PostgreSQL/version/21/upgrade_000_add_function_backlog_lastmsgid_update.sql</file>
     <file>./SQL/PostgreSQL/version/21/upgrade_001_add_trigger_backlog_lastmsgid_update.sql</file>
     <file>./SQL/PostgreSQL/version/22/upgrade_000_alter_quasseluser_add_authenticator.sql</file>
-    <file>./SQL/PostgreSQL/version/23/upgrade_000_alter_buffer_add_bufferactivity.sql</file>
     <file>./SQL/PostgreSQL/version/23/upgrade_000_create_senderprefixes.sql</file>
     <file>./SQL/PostgreSQL/version/23/upgrade_000_create_senderprefixes.sql</file>
+    <file>./SQL/PostgreSQL/version/24/upgrade_000_alter_buffer_add_bufferactivity.sql</file>
     <file>./SQL/SQLite/delete_backlog_by_uid.sql</file>
     <file>./SQL/SQLite/delete_backlog_for_buffer.sql</file>
     <file>./SQL/SQLite/delete_backlog_for_network.sql</file>
     <file>./SQL/SQLite/delete_backlog_by_uid.sql</file>
     <file>./SQL/SQLite/delete_backlog_for_buffer.sql</file>
     <file>./SQL/SQLite/delete_backlog_for_network.sql</file>
     <file>./SQL/SQLite/version/22/upgrade_000_add_trigger_backlog_lastmsgid_update_direct_insert.sql</file>
     <file>./SQL/SQLite/version/22/upgrade_001_add_trigger_backlog_lastmsgid_update_direct_update.sql</file>
     <file>./SQL/SQLite/version/23/upgrade_000_alter_quasseluser_add_authenticator.sql</file>
     <file>./SQL/SQLite/version/22/upgrade_000_add_trigger_backlog_lastmsgid_update_direct_insert.sql</file>
     <file>./SQL/SQLite/version/22/upgrade_001_add_trigger_backlog_lastmsgid_update_direct_update.sql</file>
     <file>./SQL/SQLite/version/23/upgrade_000_alter_quasseluser_add_authenticator.sql</file>
-    <file>./SQL/SQLite/version/24/upgrade_000_alter_buffer_add_bufferactivity.sql</file>
     <file>./SQL/SQLite/version/24/upgrade_000_create_senderprefixes.sql</file>
     <file>./SQL/SQLite/version/24/upgrade_000_create_senderprefixes.sql</file>
+    <file>./SQL/SQLite/version/25/upgrade_000_alter_buffer_add_bufferactivity.sql</file>
 </qresource>
 </RCC>
 </qresource>
 </RCC>
index 8b6e1bb..04381e2 100644 (file)
@@ -98,7 +98,7 @@ public slots:
     virtual void setBufferMarkerLineMsg(UserId user, const BufferId &bufferId, const MsgId &msgId);
     virtual QHash<BufferId, MsgId> bufferMarkerLineMsgIds(UserId user);
     virtual void setBufferActivity(UserId id, const BufferId &bufferId, const Message::Types &type);
     virtual void setBufferMarkerLineMsg(UserId user, const BufferId &bufferId, const MsgId &msgId);
     virtual QHash<BufferId, MsgId> bufferMarkerLineMsgIds(UserId user);
     virtual void setBufferActivity(UserId id, const BufferId &bufferId, const Message::Types &type);
-    virtual QHash<BufferId, Message::Types> bufferActivities(UserId id);
+    virtual QHash<BufferId, Message::Types> bufferActivities(UserId id) override;
     virtual Message::Types bufferActivity(BufferId &bufferId, const MsgId &lastSeenMsgId);
 
     /* Message handling */
     virtual Message::Types bufferActivity(BufferId &bufferId, const MsgId &lastSeenMsgId);
 
     /* Message handling */