/** * @param $queue_key * @return array */ private function getQueueConfig($queue_key) { $queue_config = array_merge(['fetch_count' => 1, 'connection_type' => 'stream', 'max_messages_per_consume' => 1, 'max_time_per_consume' => 600], $this->config->getQueueConfig($queue_key)); foreach (['host', 'port', 'username', 'password', 'queue_name'] as $key) { if (empty($queue_config[$key])) { throw new LogicException("The queue config must contain a '{$key}' config."); } } return $queue_config; }