diff --git a/redaction-report-service-v1/redaction-report-service-api-v1/src/main/java/com/iqser/red/service/redaction/report/v1/api/model/MultiFileRedactionLog.java b/redaction-report-service-v1/redaction-report-service-api-v1/src/main/java/com/iqser/red/service/redaction/report/v1/api/model/MultiFileRedactionLog.java
index b30d588..fe7865b 100644
--- a/redaction-report-service-v1/redaction-report-service-api-v1/src/main/java/com/iqser/red/service/redaction/report/v1/api/model/MultiFileRedactionLog.java
+++ b/redaction-report-service-v1/redaction-report-service-api-v1/src/main/java/com/iqser/red/service/redaction/report/v1/api/model/MultiFileRedactionLog.java
@@ -18,4 +18,6 @@ public class MultiFileRedactionLog {
private String template;
+ private String ruleSetId;
+
}
diff --git a/redaction-report-service-v1/redaction-report-service-server-v1/pom.xml b/redaction-report-service-v1/redaction-report-service-server-v1/pom.xml
index a889c66..4829e4c 100644
--- a/redaction-report-service-v1/redaction-report-service-server-v1/pom.xml
+++ b/redaction-report-service-v1/redaction-report-service-server-v1/pom.xml
@@ -22,7 +22,7 @@
com.iqser.red.service
configuration-service-api-v1
- 1.3.0
+ 2.0.0
org.apache.poi
diff --git a/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/client/LegalBasisMappingClient.java b/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/client/LegalBasisMappingClient.java
index eebd915..98116e5 100644
--- a/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/client/LegalBasisMappingClient.java
+++ b/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/client/LegalBasisMappingClient.java
@@ -1,10 +1,8 @@
package com.iqser.red.service.redaction.report.v1.server.client;
+import com.iqser.red.service.configuration.v1.api.resource.LegalBasisMappingResource;
import org.springframework.cloud.openfeign.FeignClient;
-import com.iqser.red.service.configuration.v1.api.resource.LegalBasisMappingResource;
-import com.iqser.red.service.configuration.v1.api.resource.RulesResource;
-
-@FeignClient(name = "LegalBasisMappingResource", url = "http://" + RulesResource.SERVICE_NAME + ":8080")
+@FeignClient(name = "LegalBasisMappingResource", url = "${configuration-service.url}")
public interface LegalBasisMappingClient extends LegalBasisMappingResource {
}
\ No newline at end of file
diff --git a/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/service/ReportGenerationService.java b/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/service/ReportGenerationService.java
index 3d1f756..07eb7c5 100644
--- a/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/service/ReportGenerationService.java
+++ b/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/service/ReportGenerationService.java
@@ -1,24 +1,5 @@
package com.iqser.red.service.redaction.report.v1.server.service;
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.IOException;
-import java.util.Comparator;
-import java.util.List;
-import java.util.Map;
-import java.util.stream.Collectors;
-
-import javax.annotation.PostConstruct;
-
-import org.apache.poi.xwpf.usermodel.XWPFDocument;
-import org.apache.poi.xwpf.usermodel.XWPFParagraph;
-import org.apache.poi.xwpf.usermodel.XWPFRun;
-import org.apache.poi.xwpf.usermodel.XWPFTable;
-import org.apache.poi.xwpf.usermodel.XWPFTableCell;
-import org.apache.poi.xwpf.usermodel.XWPFTableRow;
-import org.apache.xmlbeans.XmlCursor;
-import org.springframework.stereotype.Service;
-
import com.iqser.red.service.configuration.v1.api.model.LegalBasisMapping;
import com.iqser.red.service.redaction.report.v1.api.model.MultiFileRedactionLog;
import com.iqser.red.service.redaction.report.v1.server.client.LegalBasisMappingClient;
@@ -27,8 +8,24 @@ import com.iqser.red.service.redaction.v1.model.ManualRedactionType;
import com.iqser.red.service.redaction.v1.model.Rectangle;
import com.iqser.red.service.redaction.v1.model.RedactionLog;
import com.iqser.red.service.redaction.v1.model.Status;
-
import lombok.RequiredArgsConstructor;
+import org.apache.poi.xwpf.usermodel.XWPFDocument;
+import org.apache.poi.xwpf.usermodel.XWPFParagraph;
+import org.apache.poi.xwpf.usermodel.XWPFRun;
+import org.apache.poi.xwpf.usermodel.XWPFTable;
+import org.apache.poi.xwpf.usermodel.XWPFTableCell;
+import org.apache.poi.xwpf.usermodel.XWPFTableRow;
+import org.apache.xmlbeans.XmlCursor;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.PostConstruct;
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+import java.util.Comparator;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
@Service
@RequiredArgsConstructor
@@ -51,9 +48,9 @@ public class ReportGenerationService {
byte[] template;
- if(multiFileRedactionLog.getTemplate().equals("EFSA Template")){
+ if (multiFileRedactionLog.getTemplate().equals("EFSA Template")) {
template = efsaTemplate;
- } else if(multiFileRedactionLog.getTemplate().equals("Syngenta Template")){
+ } else if (multiFileRedactionLog.getTemplate().equals("Syngenta Template")) {
template = syngentaTemplate;
} else {
template = syngentaTemplate;
@@ -61,7 +58,7 @@ public class ReportGenerationService {
try (ByteArrayInputStream is = new ByteArrayInputStream(template)) {
XWPFDocument doc = new XWPFDocument(is);
- LegalBasisMapping legalBasisMapping = legalBasisMappingClient.getLegalBasisMapping();
+ LegalBasisMapping legalBasisMapping = legalBasisMappingClient.getLegalBasisMapping(multiFileRedactionLog.getRuleSetId());
addTableRows(doc, multiFileRedactionLog, legalBasisMapping.getReasonByLegalBasis());
return toByteArray(doc);
} catch (IOException e) {
@@ -75,7 +72,7 @@ public class ReportGenerationService {
XWPFTable table = doc.getTables().get(0);
- XmlCursor cursor = table.getCTTbl().newCursor();
+ XmlCursor cursor = table.getCTTbl().newCursor();
XWPFParagraph newParagraph = doc.insertNewParagraph(cursor);
XWPFRun run = newParagraph.createRun();
run.setText("Applied rules: EFSA 1 (Vertebrate Authors)");
@@ -87,7 +84,7 @@ public class ReportGenerationService {
if (entry.isRedacted()) {
- if(entry.isRecommendation()){
+ if (entry.isRecommendation()) {
return;
}
diff --git a/redaction-report-service-v1/redaction-report-service-server-v1/src/main/resources/application-dev.yml b/redaction-report-service-v1/redaction-report-service-server-v1/src/main/resources/application-dev.yml
new file mode 100644
index 0000000..5359a0d
--- /dev/null
+++ b/redaction-report-service-v1/redaction-report-service-server-v1/src/main/resources/application-dev.yml
@@ -0,0 +1,5 @@
+server:
+ port: 8084
+
+
+configuration-service.url: "http://localhost:8081"
\ No newline at end of file
diff --git a/redaction-report-service-v1/redaction-report-service-server-v1/src/main/resources/application.yml b/redaction-report-service-v1/redaction-report-service-server-v1/src/main/resources/application.yml
index fd788ad..da26dd2 100644
--- a/redaction-report-service-v1/redaction-report-service-server-v1/src/main/resources/application.yml
+++ b/redaction-report-service-v1/redaction-report-service-server-v1/src/main/resources/application.yml
@@ -1,6 +1,8 @@
info:
description: Redaction Report Server v1
+configuration-service.url: "http://configuration-service-v1:8080"
+
server:
port: 8080
diff --git a/redaction-report-service-v1/redaction-report-service-server-v1/src/test/java/com/iqser/red/service/redaction/report/v1/server/RedactionReportIntegrationTest.java b/redaction-report-service-v1/redaction-report-service-server-v1/src/test/java/com/iqser/red/service/redaction/report/v1/server/RedactionReportIntegrationTest.java
index aae14be..e953d7c 100644
--- a/redaction-report-service-v1/redaction-report-service-server-v1/src/test/java/com/iqser/red/service/redaction/report/v1/server/RedactionReportIntegrationTest.java
+++ b/redaction-report-service-v1/redaction-report-service-server-v1/src/test/java/com/iqser/red/service/redaction/report/v1/server/RedactionReportIntegrationTest.java
@@ -1,20 +1,5 @@
package com.iqser.red.service.redaction.report.v1.server;
-import static org.mockito.Mockito.when;
-import static org.springframework.boot.test.context.SpringBootTest.WebEnvironment.DEFINED_PORT;
-
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.util.List;
-
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.boot.test.mock.mockito.MockBean;
-import org.springframework.core.io.ClassPathResource;
-import org.springframework.test.context.junit4.SpringRunner;
-
import com.fasterxml.jackson.databind.ObjectMapper;
import com.iqser.red.service.configuration.v1.api.model.LegalBasisMapping;
import com.iqser.red.service.redaction.report.v1.api.model.MultiFileRedactionLog;
@@ -22,9 +7,23 @@ import com.iqser.red.service.redaction.report.v1.api.model.ReportResult;
import com.iqser.red.service.redaction.report.v1.server.client.LegalBasisMappingClient;
import com.iqser.red.service.redaction.report.v1.server.controller.RedactionReportController;
import com.iqser.red.service.redaction.v1.model.RedactionLog;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.boot.test.mock.mockito.MockBean;
+import org.springframework.core.io.ClassPathResource;
+import org.springframework.test.context.junit4.SpringRunner;
+
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.util.List;
+
+import static org.mockito.Mockito.when;
+import static org.springframework.boot.test.context.SpringBootTest.WebEnvironment.RANDOM_PORT;
@RunWith(SpringRunner.class)
-@SpringBootTest(webEnvironment = DEFINED_PORT)
+@SpringBootTest(webEnvironment = RANDOM_PORT)
public class RedactionReportIntegrationTest {
@Autowired
@@ -44,14 +43,14 @@ public class RedactionReportIntegrationTest {
LegalBasisMapping legalBasisMapping = objectMapper.readValue(legalBasisMappingResource.getInputStream(), LegalBasisMapping.class);
- when(legalBasisMappingClient.getLegalBasisMapping()).thenReturn(legalBasisMapping);
+ when(legalBasisMappingClient.getLegalBasisMapping("123")).thenReturn(legalBasisMapping);
ClassPathResource redactionLogResource = new ClassPathResource("files/RedactedLog.txt");
RedactionLog redactionLog = objectMapper.readValue(redactionLogResource.getInputStream(), RedactionLog.class);
redactionLog.setFilename("TestFile");
- MultiFileRedactionLog multiFileRedactionLog = new MultiFileRedactionLog(List.of(redactionLog), "EFSA Template");
+ MultiFileRedactionLog multiFileRedactionLog = new MultiFileRedactionLog(List.of(redactionLog), "EFSA Template", "123");
ReportResult reportResult = redactionReportController.generateReport(multiFileRedactionLog);