Skip to content

Commit 0568e4f

Browse files
committed
BUGFIX: Use queue className from options
With t3n/JobQueue.RabbitMQ#17 there may be different implementations of the RabbitQueue. When using anything but the default one, we have to respect the className given by the queueSettings.
1 parent 8d418f6 commit 0568e4f

1 file changed

Lines changed: 6 additions & 1 deletion

File tree

bin/fast-rabbit

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,12 @@ $queueSettings = $config['queueSettings'];
2020
$queueOptions = $queueSettings['options'];
2121
$command = $config['command'];
2222

23-
$queue = new RabbitQueue($queueName, $queueOptions);
23+
$queueClassName = $queueSettings['className'] ?? RabbitQueue::class;
24+
if (!is_a($queueClassName, RabbitQueue::class, true)) {
25+
throw new RuntimeException(sprintf('Queue "%s" must be a type of RabbitQueue!', $queueName), 1646058608);
26+
}
27+
28+
$queue = new $queueClassName($queueName, $queueOptions);
2429
$messageCache = CacheFactory::get($config);
2530
$lock = new Lock($config['workerPool']['numberOfWorkers'], $config['workerPool']['lockFileDirectory']);
2631

0 commit comments

Comments
 (0)