From 8bfe8acb85e33502f4978b12b5cc09f68a602f47 Mon Sep 17 00:00:00 2001 From: Timo Bejan Date: Tue, 12 Oct 2021 17:23:22 +0300 Subject: [PATCH] RED-2334 --- .../redaction/service/NerAnalyserService.java | 36 ++++++++++--------- 1 file changed, 19 insertions(+), 17 deletions(-) diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/service/NerAnalyserService.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/service/NerAnalyserService.java index 1e7b7392..2425fd9e 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/service/NerAnalyserService.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/service/NerAnalyserService.java @@ -1,19 +1,17 @@ package com.iqser.red.service.redaction.v1.server.redaction.service; -import java.util.stream.Collectors; - import com.iqser.red.service.persistence.service.v1.api.model.dossiertemplate.dossier.file.FileType; -import org.apache.commons.codec.binary.Base64; -import org.springframework.stereotype.Service; - import com.iqser.red.service.redaction.v1.server.client.EntityRecognitionClient; import com.iqser.red.service.redaction.v1.server.client.model.EntityRecognitionRequest; import com.iqser.red.service.redaction.v1.server.client.model.EntityRecognitionSection; import com.iqser.red.service.redaction.v1.server.settings.RedactionServiceSettings; import com.iqser.red.service.redaction.v1.server.storage.RedactionStorageService; - import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.codec.binary.Base64; +import org.springframework.stereotype.Service; + +import java.util.stream.Collectors; @Slf4j @Service @@ -31,20 +29,24 @@ public class NerAnalyserService { long start = System.currentTimeMillis(); - var nerRequest = EntityRecognitionRequest.builder() - .data(text.getSectionTexts() - .stream() - .map(sectionText -> new EntityRecognitionSection(sectionText.getSectionNumber(), new String(Base64 - .encodeBase64(sectionText - .getText().getBytes())))) - .collect(Collectors.toList())) - .build(); + if (text != null) { + var nerRequest = EntityRecognitionRequest.builder() + .data(text.getSectionTexts() + .stream() + .map(sectionText -> new EntityRecognitionSection(sectionText.getSectionNumber(), new String(Base64 + .encodeBase64(sectionText + .getText().getBytes())))) + .collect(Collectors.toList())) + .build(); - var nerResponse = entityRecognitionClient.findAuthors(nerRequest); + var nerResponse = entityRecognitionClient.findAuthors(nerRequest); - log.info("Computing NER entities took: {} ms for dossierId {} and fileId {}", System.currentTimeMillis() - start, dossierId, fileId); + log.info("Computing NER entities took: {} ms for dossierId {} and fileId {}", System.currentTimeMillis() - start, dossierId, fileId); - redactionStorageService.storeObject(dossierId, fileId, FileType.NER_ENTITIES, nerResponse); + redactionStorageService.storeObject(dossierId, fileId, FileType.NER_ENTITIES, nerResponse); + } else { + log.warn("Warning, text for file: {} in dossier: {} is null", fileId, dossierId); + } } }