From 4d5e664af2c07aa2d14a55c6e3b8e47121a5c5a6 Mon Sep 17 00:00:00 2001 From: deiflaender Date: Tue, 21 Jul 2020 13:05:55 +0200 Subject: [PATCH] RED-169: Fixes startup problem --- .../red/service/redaction/v1/server/Application.java | 10 ++-------- .../redaction/service/DroolsExecutionService.java | 7 ++++++- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/Application.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/Application.java index 95b41d8f..d82a208a 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/Application.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/Application.java @@ -9,7 +9,6 @@ import org.kie.api.builder.KieBuilder; import org.kie.api.builder.KieFileSystem; import org.kie.api.builder.KieModule; import org.kie.api.runtime.KieContainer; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.SpringApplication; import org.springframework.boot.actuate.autoconfigure.security.servlet.ManagementWebSecurityAutoConfiguration; import org.springframework.boot.autoconfigure.SpringBootApplication; @@ -20,7 +19,6 @@ import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Import; import com.iqser.gin4.commons.spring.DefaultWebMvcConfiguration; -import com.iqser.red.service.configuration.v1.api.model.RulesResponse; import com.iqser.red.service.redaction.v1.server.client.RulesClient; import com.iqser.red.service.redaction.v1.server.settings.RedactionServiceSettings; @@ -30,9 +28,6 @@ import com.iqser.red.service.redaction.v1.server.settings.RedactionServiceSettin @SpringBootApplication(exclude = {SecurityAutoConfiguration.class, ManagementWebSecurityAutoConfiguration.class}) public class Application { - @Autowired - private RulesClient rulesClient; - public static void main(String[] args) { SpringApplication.run(Application.class, args); } @@ -43,9 +38,8 @@ public class Application { KieServices kieServices = KieServices.Factory.get(); KieFileSystem kieFileSystem = kieServices.newKieFileSystem(); - RulesResponse rules = rulesClient.getRules(); - InputStream input = new ByteArrayInputStream(rules.getRules().getBytes(StandardCharsets.UTF_8)); - kieFileSystem.write(kieServices.getResources().newInputStreamResource(input)); + InputStream input = new ByteArrayInputStream("".getBytes(StandardCharsets.UTF_8)); + kieFileSystem.write("src/main/resources/drools/rules.drl", kieServices.getResources().newInputStreamResource(input)); KieBuilder kieBuilder = kieServices.newKieBuilder(kieFileSystem); kieBuilder.buildAll(); KieModule kieModule = kieBuilder.getKieModule(); diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/service/DroolsExecutionService.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/service/DroolsExecutionService.java index aaf928ad..ac616019 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/service/DroolsExecutionService.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/service/DroolsExecutionService.java @@ -19,7 +19,9 @@ import com.iqser.red.service.redaction.v1.server.exception.RulesValidationExcept import com.iqser.red.service.redaction.v1.server.redaction.model.Section; import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +@Slf4j @Service @RequiredArgsConstructor public class DroolsExecutionService { @@ -54,9 +56,10 @@ public class DroolsExecutionService { } public void updateRules(String drlAsString) { - + log.info("Updating rules"); try { if (StringUtils.isEmpty(drlAsString)) { + log.info("Rules:" + drlAsString ); throw new RuntimeException("Rules cannot be empty."); } KieServices kieServices = KieServices.Factory.get(); @@ -68,8 +71,10 @@ public class DroolsExecutionService { KieModule kieModule = kieBuilder.getKieModule(); kieContainer.updateToVersion(kieModule.getReleaseId()); } catch (Exception e) { + log.error(e.getMessage(), e); throw new RulesValidationException("Could not update rules", e); } + log.info("Successfully updated rules"); }