diff --git a/ocr-service-v1/ocr-service-server/src/main/java/com/knecon/fforesight/service/ocr/v1/server/queue/OcrMessageReceiver.java b/ocr-service-v1/ocr-service-server/src/main/java/com/knecon/fforesight/service/ocr/v1/server/queue/OcrMessageReceiver.java index 0e85bd4..05fabfe 100644 --- a/ocr-service-v1/ocr-service-server/src/main/java/com/knecon/fforesight/service/ocr/v1/server/queue/OcrMessageReceiver.java +++ b/ocr-service-v1/ocr-service-server/src/main/java/com/knecon/fforesight/service/ocr/v1/server/queue/OcrMessageReceiver.java @@ -6,6 +6,7 @@ import java.nio.file.Path; import java.time.OffsetDateTime; import java.time.temporal.ChronoUnit; +import org.springframework.amqp.AmqpRejectAndDontRequeueException; import org.springframework.amqp.core.Message; import org.springframework.amqp.rabbit.annotation.RabbitHandler; import org.springframework.amqp.rabbit.annotation.RabbitListener; @@ -40,6 +41,10 @@ public class OcrMessageReceiver { @RabbitListener(queues = MessagingConfiguration.OCR_REQUEST_QUEUE, concurrency = "1") public void receiveOcr(Message in) throws IOException { + if (in.getMessageProperties().isRedelivered()) { + throw new AmqpRejectAndDontRequeueException("Redelivered OCR Request, aborting..."); + } + DocumentRequest ocrRequestMessage = objectMapper.readValue(in.getBody(), DocumentRequest.class); String dossierId = ocrRequestMessage.getDossierId(); String fileId = ocrRequestMessage.getFileId();