diff --git a/azure-ocr-service/azure-ocr-service-processor/build.gradle.kts b/azure-ocr-service/azure-ocr-service-processor/build.gradle.kts index d2c47e6..45ca213 100644 --- a/azure-ocr-service/azure-ocr-service-processor/build.gradle.kts +++ b/azure-ocr-service/azure-ocr-service-processor/build.gradle.kts @@ -15,7 +15,7 @@ dependencies { api("net.sourceforge.tess4j:tess4j:5.8.0") api("com.iqser.red.commons:metric-commons:2.1.0") api("com.iqser.red.commons:storage-commons:2.49.0") - api("com.knecon.fforesight:tenant-commons:0.26.0") + api("com.knecon.fforesight:tenant-commons:0.21.0") api("com.pdftron:PDFNet:10.7.0") api("org.apache.pdfbox:pdfbox:3.0.0") api("org.apache.commons:commons-math3:3.6.1") diff --git a/azure-ocr-service/azure-ocr-service-processor/src/main/java/com/knecon/fforesight/service/ocr/processor/OcrServiceSettings.java b/azure-ocr-service/azure-ocr-service-processor/src/main/java/com/knecon/fforesight/service/ocr/processor/OcrServiceSettings.java index b59d226..d1a6afd 100644 --- a/azure-ocr-service/azure-ocr-service-processor/src/main/java/com/knecon/fforesight/service/ocr/processor/OcrServiceSettings.java +++ b/azure-ocr-service/azure-ocr-service-processor/src/main/java/com/knecon/fforesight/service/ocr/processor/OcrServiceSettings.java @@ -20,7 +20,7 @@ public class OcrServiceSettings { boolean idpEnabled; // Enables table detection, paragraph classification, section detection, key-value detection. boolean tableDetection; // writes the tables to the PDF as invisible lines. boolean processAllPages; // if this parameter is set, ocr will be performed on any page, regardless if it has images or not - boolean fontStyleDetection = true; // Enables bold detection using ghostscript and leptonica + boolean fontStyleDetection; // Enables bold detection using ghostscript and leptonica String contentFormat; // Either markdown or text. But, for whatever reason, with markdown enabled, key-values are not written by azure.... } diff --git a/azure-ocr-service/azure-ocr-service-server/src/main/java/com/knecon/fforesight/service/ocr/v1/server/configuration/MessagingConfiguration.java b/azure-ocr-service/azure-ocr-service-server/src/main/java/com/knecon/fforesight/service/ocr/v1/server/configuration/MessagingConfiguration.java index 798222e..7096f14 100644 --- a/azure-ocr-service/azure-ocr-service-server/src/main/java/com/knecon/fforesight/service/ocr/v1/server/configuration/MessagingConfiguration.java +++ b/azure-ocr-service/azure-ocr-service-server/src/main/java/com/knecon/fforesight/service/ocr/v1/server/configuration/MessagingConfiguration.java @@ -8,13 +8,9 @@ import lombok.RequiredArgsConstructor; @RequiredArgsConstructor public class MessagingConfiguration { - public static final String OCR_REQUEST_QUEUE_PREFIX = "ocr_request_queue"; - public static final String OCR_REQUEST_EXCHANGE = "ocr_request_exchange"; - public static final String OCR_DLQ = "ocr_dlq"; - public static final String OCR_RESPONSE_EXCHANGE = "ocr_response_exchange"; - public static final String OCR_STATUS_UPDATE_EXCHANGE = "ocr_status_update_exchange"; - public static final String OCR_STATUS_UPDATE_DLQ = "ocr_status_update_dlq"; - + public static final String OCR_REQUEST_QUEUE = "ocr_request_queue"; + public static final String OCR_RESPONSE_QUEUE = "ocr_response_queue"; + public static final String OCR_STATUS_UPDATE_RESPONSE_QUEUE = "ocr_status_update_response_queue"; public static final String X_ERROR_INFO_HEADER = "x-error-message"; public static final String X_ERROR_INFO_TIMESTAMP_HEADER = "x-error-message-timestamp"; diff --git a/azure-ocr-service/azure-ocr-service-server/src/main/java/com/knecon/fforesight/service/ocr/v1/server/configuration/TenantMessagingConfigurationImpl.java b/azure-ocr-service/azure-ocr-service-server/src/main/java/com/knecon/fforesight/service/ocr/v1/server/configuration/TenantMessagingConfigurationImpl.java deleted file mode 100644 index 25804fb..0000000 --- a/azure-ocr-service/azure-ocr-service-server/src/main/java/com/knecon/fforesight/service/ocr/v1/server/configuration/TenantMessagingConfigurationImpl.java +++ /dev/null @@ -1,11 +0,0 @@ -package com.knecon.fforesight.service.ocr.v1.server.configuration; - -import org.springframework.context.annotation.Configuration; - -import com.knecon.fforesight.tenantcommons.queue.TenantMessagingConfiguration; - -@Configuration -public class TenantMessagingConfigurationImpl extends TenantMessagingConfiguration { - - -} diff --git a/azure-ocr-service/azure-ocr-service-server/src/main/java/com/knecon/fforesight/service/ocr/v1/server/queue/NoStatusUpdateOcrMessageSender.java b/azure-ocr-service/azure-ocr-service-server/src/main/java/com/knecon/fforesight/service/ocr/v1/server/queue/NoStatusUpdateOcrMessageSender.java index fe521f0..0508920 100644 --- a/azure-ocr-service/azure-ocr-service-server/src/main/java/com/knecon/fforesight/service/ocr/v1/server/queue/NoStatusUpdateOcrMessageSender.java +++ b/azure-ocr-service/azure-ocr-service-server/src/main/java/com/knecon/fforesight/service/ocr/v1/server/queue/NoStatusUpdateOcrMessageSender.java @@ -39,7 +39,7 @@ public class NoStatusUpdateOcrMessageSender implements IOcrMessageSender { public void sendOcrResponse(String dossierId, String fileId) { - rabbitTemplate.convertAndSend(MessagingConfiguration.OCR_RESPONSE_EXCHANGE, TenantContext.getTenantId(), new DocumentRequest(dossierId, fileId)); + rabbitTemplate.convertAndSend(MessagingConfiguration.OCR_RESPONSE_QUEUE, TenantContext.getTenantId(), new DocumentRequest(dossierId, fileId)); } } diff --git a/azure-ocr-service/azure-ocr-service-server/src/main/java/com/knecon/fforesight/service/ocr/v1/server/queue/OcrMessageReceiver.java b/azure-ocr-service/azure-ocr-service-server/src/main/java/com/knecon/fforesight/service/ocr/v1/server/queue/OcrMessageReceiver.java index 072706a..5d567e7 100644 --- a/azure-ocr-service/azure-ocr-service-server/src/main/java/com/knecon/fforesight/service/ocr/v1/server/queue/OcrMessageReceiver.java +++ b/azure-ocr-service/azure-ocr-service-server/src/main/java/com/knecon/fforesight/service/ocr/v1/server/queue/OcrMessageReceiver.java @@ -32,8 +32,6 @@ import lombok.extern.slf4j.Slf4j; @FieldDefaults(makeFinal = true, level = AccessLevel.PRIVATE) public class OcrMessageReceiver { - public static final String OCR_REQUEST_LISTENER_ID = "ocr-request-listener"; - FileStorageService fileStorageService; ObjectMapper objectMapper; OCRService ocrService; @@ -41,7 +39,7 @@ public class OcrMessageReceiver { @RabbitHandler - @RabbitListener(id = OCR_REQUEST_LISTENER_ID, concurrency = "1") + @RabbitListener(queues = MessagingConfiguration.OCR_REQUEST_QUEUE, concurrency = "1") public void receiveOcr(Message in) throws IOException { if (in.getMessageProperties().isRedelivered()) { diff --git a/azure-ocr-service/azure-ocr-service-server/src/main/java/com/knecon/fforesight/service/ocr/v1/server/queue/OcrMessageSender.java b/azure-ocr-service/azure-ocr-service-server/src/main/java/com/knecon/fforesight/service/ocr/v1/server/queue/OcrMessageSender.java index 81e76bd..dbe523a 100644 --- a/azure-ocr-service/azure-ocr-service-server/src/main/java/com/knecon/fforesight/service/ocr/v1/server/queue/OcrMessageSender.java +++ b/azure-ocr-service/azure-ocr-service-server/src/main/java/com/knecon/fforesight/service/ocr/v1/server/queue/OcrMessageSender.java @@ -27,7 +27,7 @@ public class OcrMessageSender implements IOcrMessageSender { public void sendOcrFinished(String fileId, int totalImages) { - rabbitTemplate.convertAndSend(MessagingConfiguration.OCR_STATUS_UPDATE_EXCHANGE, + rabbitTemplate.convertAndSend(MessagingConfiguration.OCR_STATUS_UPDATE_RESPONSE_QUEUE, TenantContext.getTenantId(), OCRStatusUpdateResponse.builder().fileId(fileId).numberOfPagesToOCR(totalImages).numberOfOCRedPages(totalImages).ocrFinished(true).build()); } @@ -35,7 +35,7 @@ public class OcrMessageSender implements IOcrMessageSender { public void sendOCRStarted(String fileId) { - rabbitTemplate.convertAndSend(MessagingConfiguration.OCR_STATUS_UPDATE_EXCHANGE, + rabbitTemplate.convertAndSend(MessagingConfiguration.OCR_STATUS_UPDATE_RESPONSE_QUEUE, TenantContext.getTenantId(), OCRStatusUpdateResponse.builder().fileId(fileId).ocrStarted(true).build()); @@ -44,7 +44,7 @@ public class OcrMessageSender implements IOcrMessageSender { public void sendUpdate(String fileId, int finishedImages, int totalImages) { - rabbitTemplate.convertAndSend(MessagingConfiguration.OCR_STATUS_UPDATE_EXCHANGE, + rabbitTemplate.convertAndSend(MessagingConfiguration.OCR_STATUS_UPDATE_RESPONSE_QUEUE, TenantContext.getTenantId(), OCRStatusUpdateResponse.builder().fileId(fileId).numberOfPagesToOCR(totalImages).numberOfOCRedPages(finishedImages).build()); @@ -53,7 +53,7 @@ public class OcrMessageSender implements IOcrMessageSender { public void sendOcrResponse(String dossierId, String fileId) { - rabbitTemplate.convertAndSend(MessagingConfiguration.OCR_RESPONSE_EXCHANGE, TenantContext.getTenantId(), new DocumentRequest(dossierId, fileId)); + rabbitTemplate.convertAndSend(MessagingConfiguration.OCR_RESPONSE_QUEUE, TenantContext.getTenantId(), new DocumentRequest(dossierId, fileId)); } } diff --git a/azure-ocr-service/azure-ocr-service-server/src/main/java/com/knecon/fforesight/service/ocr/v1/server/queue/TenantExchangeMessageReceiverImpl.java b/azure-ocr-service/azure-ocr-service-server/src/main/java/com/knecon/fforesight/service/ocr/v1/server/queue/TenantExchangeMessageReceiverImpl.java deleted file mode 100644 index 7e9bc76..0000000 --- a/azure-ocr-service/azure-ocr-service-server/src/main/java/com/knecon/fforesight/service/ocr/v1/server/queue/TenantExchangeMessageReceiverImpl.java +++ /dev/null @@ -1,70 +0,0 @@ -package com.knecon.fforesight.service.ocr.v1.server.queue; - -import static com.knecon.fforesight.service.ocr.v1.server.configuration.MessagingConfiguration.OCR_DLQ; -import static com.knecon.fforesight.service.ocr.v1.server.configuration.MessagingConfiguration.OCR_REQUEST_EXCHANGE; -import static com.knecon.fforesight.service.ocr.v1.server.configuration.MessagingConfiguration.OCR_REQUEST_QUEUE_PREFIX; - -import java.util.Map; -import java.util.Set; - -import org.springframework.amqp.rabbit.annotation.RabbitHandler; -import org.springframework.amqp.rabbit.annotation.RabbitListener; -import org.springframework.boot.context.event.ApplicationReadyEvent; -import org.springframework.context.event.EventListener; -import org.springframework.stereotype.Service; - -import com.knecon.fforesight.tenantcommons.TenantProvider; -import com.knecon.fforesight.tenantcommons.model.TenantCreatedEvent; -import com.knecon.fforesight.tenantcommons.model.TenantQueueConfiguration; -import com.knecon.fforesight.tenantcommons.model.TenantResponse; -import com.knecon.fforesight.tenantcommons.queue.RabbitQueueFromExchangeService; -import com.knecon.fforesight.tenantcommons.queue.TenantExchangeMessageReceiver; - -@Service -public class TenantExchangeMessageReceiverImpl extends TenantExchangeMessageReceiver { - - public TenantExchangeMessageReceiverImpl(RabbitQueueFromExchangeService rabbitQueueService, TenantProvider tenantProvider) { - - super(rabbitQueueService, tenantProvider); - } - - - @Override - protected Set getTenantQueueConfigs() { - - return Set.of(TenantQueueConfiguration.builder() - .listenerId(OcrMessageReceiver.OCR_REQUEST_LISTENER_ID) - .exchangeName(OCR_REQUEST_EXCHANGE) - .queuePrefix(OCR_REQUEST_QUEUE_PREFIX) - .dlqName(OCR_DLQ) - .arguments(Map.of("x-max-priority", 2)) - .build()); - } - - - @EventListener(ApplicationReadyEvent.class) - public void onApplicationReady() { - - System.out.println("application ready invoked"); - super.initializeQueues(); - } - - - @RabbitHandler - @RabbitListener(queues = "#{tenantMessagingConfigurationImpl.getTenantCreatedQueueName()}") - public void reactToTenantCreation(TenantCreatedEvent tenantCreatedEvent) { - - super.reactToTenantCreation(tenantCreatedEvent); - } - - - @RabbitHandler - @RabbitListener(queues = "#{tenantMessagingConfigurationImpl.getTenantDeletedQueueName()}") - public void reactToTenantDeletion(TenantResponse tenantResponse) { - - super.reactToTenantDeletion(tenantResponse); - - } - -} -