X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fcore%2Fstorage.h;h=c7444b11995e6023ec2bb9f7fadb7a749bc8e693;hb=1f02b7201ab7b86238e705d2ce5b22f50bf6acfe;hp=95bbb2d3d233b4154196b442420314e5f490efd2;hpb=d3ea803d8977692f95bbe31fbaba3686fc2ce5a9;p=quassel.git diff --git a/src/core/storage.h b/src/core/storage.h index 95bbb2d3..c7444b11 100644 --- a/src/core/storage.h +++ b/src/core/storage.h @@ -152,12 +152,13 @@ class Storage : public QObject { /* Buffer handling */ //! Get the unique BufferInfo for the given combination of network and buffername for a user. - /** \param user The core user who owns this buffername - * \param network The network name + /** \param user The core user who owns this buffername + * \param networkId The network id + * \param type The type of the buffer (StatusBuffer, Channel, etc.) * \param buffer The buffer name (if empty, the net's status buffer is returned) * \return The BufferInfo corresponding to the given network and buffer name, or 0 if not found */ - virtual BufferInfo getBufferInfo(UserId user, const NetworkId &networkId, const QString &buffer = "") = 0; + virtual BufferInfo getBufferInfo(UserId user, const NetworkId &networkId, BufferInfo::Type type, const QString &buffer = "") = 0; //! Request a list of all buffers known to a user since a certain point in time. /** This method is used to get a list of all buffers we have stored a backlog from. @@ -169,6 +170,21 @@ class Storage : public QObject { */ virtual QList requestBuffers(UserId user, QDateTime since = QDateTime()) = 0; + //! Update the LastSeenDate for a Buffer + /** This Method is used to make the LastSeenDate of a Buffer persistent + * \param user The Owner of that Buffer + * \param bufferId The buffer id + * \param seenDate Time the Buffer has been visited the last time + */ + virtual void setBufferLastSeen(UserId user, const BufferId &bufferId, const QDateTime &seenDate) = 0; + + //! Get a Hash of all last seen dates. + /** This Method is called when the Quassel Core is started to restore the lastSeenDates + * \param user The Owner of the buffers + */ + virtual QHash bufferLastSeenDates(UserId user) = 0; + + /* Message handling */ //! Store a Message in the backlog.