+class FixedBacklogRequester : public BacklogRequester
+{
+public:
+ FixedBacklogRequester(ClientBacklogManager *backlogManager);
+ void requestBacklog(const BufferIdList &bufferIds) override;
+
+private:
+ int _backlogCount;
+};
+
+
+// ========================================
+// GLOBAL UNREAD BACKLOG REQUESTER
+// ========================================
+class GlobalUnreadBacklogRequester : public BacklogRequester
+{
+public:
+ GlobalUnreadBacklogRequester(ClientBacklogManager *backlogManager);
+ void requestInitialBacklog() override;
+ void requestBacklog(const BufferIdList &) override {}
+
+private:
+ int _limit;
+ int _additional;
+};
+
+
+// ========================================
+// PER BUFFER UNREAD BACKLOG REQUESTER
+// ========================================
+class PerBufferUnreadBacklogRequester : public BacklogRequester
+{