X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fclient%2Fbacklogrequester.cpp;h=3f5765e3805b0a5bd632fb5317c450947d6289e2;hp=b1ed56c59a231ebf7c4537b7d857830f3c1851dd;hb=c1cf157116de7fc3da96203aa6f03c38c7ebb650;hpb=30b159cb876a9495de42e9a3e70ca050516f0805;ds=sidebyside diff --git a/src/client/backlogrequester.cpp b/src/client/backlogrequester.cpp index b1ed56c5..3f5765e3 100644 --- a/src/client/backlogrequester.cpp +++ b/src/client/backlogrequester.cpp @@ -26,38 +26,34 @@ #include "bufferviewoverlay.h" #include "clientbacklogmanager.h" -BacklogRequester::BacklogRequester(bool buffering, RequesterType requesterType, ClientBacklogManager *backlogManager) - : backlogManager(backlogManager), - _isBuffering(buffering), - _requesterType(requesterType), - _totalBuffers(0) +BacklogRequester::BacklogRequester(bool buffering, RequesterType requesterType, ClientBacklogManager* backlogManager) + : backlogManager(backlogManager) + , _isBuffering(buffering) + , _requesterType(requesterType) + , _totalBuffers(0) { Q_ASSERT(backlogManager); } - -void BacklogRequester::setWaitingBuffers(const QSet &buffers) +void BacklogRequester::setWaitingBuffers(const QSet& buffers) { _buffersWaiting = buffers; _totalBuffers = _buffersWaiting.count(); } - void BacklogRequester::addWaitingBuffer(BufferId buffer) { _buffersWaiting << buffer; _totalBuffers++; } - -bool BacklogRequester::buffer(BufferId bufferId, const MessageList &messages) +bool BacklogRequester::buffer(BufferId bufferId, const MessageList& messages) { _bufferedMessages << messages; _buffersWaiting.remove(bufferId); return !_buffersWaiting.isEmpty(); } - BufferIdList BacklogRequester::allBufferIds() const { QSet bufferIds = Client::bufferViewOverlay()->bufferIds(); @@ -65,44 +61,41 @@ BufferIdList BacklogRequester::allBufferIds() const return bufferIds.toList(); } - void BacklogRequester::flushBuffer() { if (!_buffersWaiting.isEmpty()) { - qWarning() << Q_FUNC_INFO << "was called before all backlog was received:" - << _buffersWaiting.count() << "buffers are waiting."; + qWarning() << Q_FUNC_INFO << "was called before all backlog was received:" << _buffersWaiting.count() << "buffers are waiting."; } _bufferedMessages.clear(); _totalBuffers = 0; _buffersWaiting.clear(); } - // ======================================== // FIXED BACKLOG REQUESTER // ======================================== -FixedBacklogRequester::FixedBacklogRequester(ClientBacklogManager *backlogManager) +FixedBacklogRequester::FixedBacklogRequester(ClientBacklogManager* backlogManager) : BacklogRequester(true, BacklogRequester::PerBufferFixed, backlogManager) { BacklogSettings backlogSettings; _backlogCount = backlogSettings.fixedBacklogAmount(); } - -void FixedBacklogRequester::requestBacklog(const BufferIdList &bufferIds) +void FixedBacklogRequester::requestBacklog(const BufferIdList& bufferIds) { setWaitingBuffers(bufferIds); - backlogManager->emitMessagesRequested(QObject::tr("Requesting a total of up to %1 backlog messages for %2 buffers").arg(_backlogCount * bufferIds.count()).arg(bufferIds.count())); - foreach(BufferId bufferId, bufferIds) { + backlogManager->emitMessagesRequested(QObject::tr("Requesting a total of up to %1 backlog messages for %2 buffers") + .arg(_backlogCount * bufferIds.count()) + .arg(bufferIds.count())); + foreach (BufferId bufferId, bufferIds) { backlogManager->requestBacklog(bufferId, -1, -1, _backlogCount); } } - // ======================================== // GLOBAL UNREAD BACKLOG REQUESTER // ======================================== -GlobalUnreadBacklogRequester::GlobalUnreadBacklogRequester(ClientBacklogManager *backlogManager) +GlobalUnreadBacklogRequester::GlobalUnreadBacklogRequester(ClientBacklogManager* backlogManager) : BacklogRequester(false, BacklogRequester::GlobalUnread, backlogManager) { BacklogSettings backlogSettings; @@ -110,24 +103,23 @@ GlobalUnreadBacklogRequester::GlobalUnreadBacklogRequester(ClientBacklogManager _additional = backlogSettings.globalUnreadBacklogAdditional(); } - void GlobalUnreadBacklogRequester::requestInitialBacklog() { MsgId oldestUnreadMessage; - foreach(BufferId bufferId, allBufferIds()) { + foreach (BufferId bufferId, allBufferIds()) { MsgId msgId = Client::networkModel()->lastSeenMsgId(bufferId); if (!oldestUnreadMessage.isValid() || oldestUnreadMessage > msgId) oldestUnreadMessage = msgId; } - backlogManager->emitMessagesRequested(QObject::tr("Requesting up to %1 of all unread backlog messages (plus additional %2)").arg(_limit).arg(_additional)); + backlogManager->emitMessagesRequested( + QObject::tr("Requesting up to %1 of all unread backlog messages (plus additional %2)").arg(_limit).arg(_additional)); backlogManager->requestBacklogAll(oldestUnreadMessage, -1, _limit, _additional); } - // ======================================== // PER BUFFER UNREAD BACKLOG REQUESTER // ======================================== -PerBufferUnreadBacklogRequester::PerBufferUnreadBacklogRequester(ClientBacklogManager *backlogManager) +PerBufferUnreadBacklogRequester::PerBufferUnreadBacklogRequester(ClientBacklogManager* backlogManager) : BacklogRequester(true, BacklogRequester::PerBufferUnread, backlogManager) { BacklogSettings backlogSettings; @@ -135,12 +127,13 @@ PerBufferUnreadBacklogRequester::PerBufferUnreadBacklogRequester(ClientBacklogMa _additional = backlogSettings.perBufferUnreadBacklogAdditional(); } - -void PerBufferUnreadBacklogRequester::requestBacklog(const BufferIdList &bufferIds) +void PerBufferUnreadBacklogRequester::requestBacklog(const BufferIdList& bufferIds) { setWaitingBuffers(bufferIds); - backlogManager->emitMessagesRequested(QObject::tr("Requesting a total of up to %1 unread backlog messages for %2 buffers").arg((_limit + _additional) * bufferIds.count()).arg(bufferIds.count())); - foreach(BufferId bufferId, bufferIds) { + backlogManager->emitMessagesRequested(QObject::tr("Requesting a total of up to %1 unread backlog messages for %2 buffers") + .arg((_limit + _additional) * bufferIds.count()) + .arg(bufferIds.count())); + foreach (BufferId bufferId, bufferIds) { backlogManager->requestBacklog(bufferId, Client::networkModel()->lastSeenMsgId(bufferId), -1, _limit, _additional); } }