diff --git a/release-notes-10.0.1.md b/release-notes-10.0.1.md index b3654639..2e362750 100644 --- a/release-notes-10.0.1.md +++ b/release-notes-10.0.1.md @@ -1,8 +1,12 @@ -!not-ready-for-release! - #### Version Number ${version-number} #### New Features +- None + +#### Bug Fixes +- **D1054456:** Corrected invalid queue configuration to be optional + Workers do not have to supply an invalid task queue. #### Known Issues +- None diff --git a/worker-queue-rabbit/src/main/java/com/github/workerframework/queues/rabbit/RabbitWorkerQueue.java b/worker-queue-rabbit/src/main/java/com/github/workerframework/queues/rabbit/RabbitWorkerQueue.java index d7200b19..8eb866bf 100644 --- a/worker-queue-rabbit/src/main/java/com/github/workerframework/queues/rabbit/RabbitWorkerQueue.java +++ b/worker-queue-rabbit/src/main/java/com/github/workerframework/queues/rabbit/RabbitWorkerQueue.java @@ -99,12 +99,27 @@ public RabbitWorkerQueue( { this.config = Objects.requireNonNull(config); this.maxTasks = maxTasks; - this.invalidQueue = Objects.requireNonNull(invalidQueue); + this.invalidQueue = getInvalidQueueName(config, invalidQueue); this.dataStore = Objects.requireNonNull(dataStore); this.codec = Objects.requireNonNull(codec); LOG.debug("Initialised"); } + private static String getInvalidQueueName(final RabbitWorkerQueueConfiguration config, final String invalidQueue) + { + if (invalidQueue != null) { + return invalidQueue; + } + + final String inputQueue = config.getInputQueue(); + + final String invalidQueuePrefix = inputQueue.endsWith("-in") + ? inputQueue.substring(0, inputQueue.length() - 3) + : inputQueue; + + return invalidQueuePrefix + "-invalid"; + } + /** * {@inheritDoc} *