/** * @param Message $message * * @return bool */ private function closeSentMessage(Message $message) { $queue = $message->getQueue(); if (empty($queue)) { return false; } $allSent = true; foreach ($queue as $queueItem) { if (null === $queueItem->getSentAt()) { $allSent = false; break; } } if ($this->isVerbose()) { $messageAsString = $this->messageToString($message, count($queue)); if ($allSent) { $this->logger->info('Message to be closed: ' . $messageAsString); } else { $this->logger->info('Message is still being sent: ' . $messageAsString); } } if ($allSent) { $this->messageRepository->closeMessage($message); return true; } return false; }