X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcore%2Fstorage.h;h=1561673183b46e984bc7bdaf280a280a8a10fd9b;hp=f7495f45a392e8bd87af83ba91c15ca2dae85290;hb=d54b44bc5b6e1ff4308f9d143babf29028ae47cd;hpb=7b4bac1b744a407d51f0ece67e0d531206ddad0b diff --git a/src/core/storage.h b/src/core/storage.h index f7495f45..15616731 100644 --- a/src/core/storage.h +++ b/src/core/storage.h @@ -101,8 +101,9 @@ public slots: //! Update a core user's password. /** \param user The user's id * \param password The user's new password + * \return true on success. */ - virtual void updateUser(UserId user, const QString &password) = 0; + virtual bool updateUser(UserId user, const QString &password) = 0; //! Rename a user /** \param user The user's id @@ -117,6 +118,12 @@ public slots: */ virtual UserId validateUser(const QString &user, const QString &password) = 0; + //! Check if a user with given username exists. Do not use for login purposes! + /** \param username The username to validate + * \return A valid UserId if the user exists; 0 else + */ + virtual UserId getUserId(const QString &username) = 0; + //! Determine the UserId of the internal user /** \return A valid UserId if the password matches the username; 0 else */ @@ -342,6 +349,24 @@ public slots: */ virtual QHash bufferLastSeenMsgIds(UserId user) = 0; + //! Update the MarkerLineMsgId for a Buffer + /** This Method is used to make the marker line position 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 + */ + virtual void setBufferMarkerLineMsg(UserId user, const BufferId &bufferId, const MsgId &msgId) = 0; + + //! Get a Hash of all marker line message ids + /** This Method is called when the Quassel Core is started to restore the MarkerLineMsgIds + * \note This method is threadsafe. + * + * \param user The Owner of the buffers + */ + virtual QHash bufferMarkerLineMsgIds(UserId user) = 0; + /* Message handling */