Fixes after merge with master

This commit is contained in:
Hanelore.Ianoseck 2023-12-07 16:06:48 +02:00
parent ee0821df27
commit d1bc294a3e

View File

@ -1,16 +1,29 @@
package com.iqser.red.persistence.service.v2.external.api.impl.controller; package com.iqser.red.persistence.service.v2.external.api.impl.controller;
import static com.iqser.red.service.persistence.management.v1.processor.roles.ActionRoles.EXPERIMENTAL; import com.iqser.red.persistence.service.v1.external.api.impl.controller.DossierTemplateController;
import static com.iqser.red.service.persistence.management.v1.processor.roles.ActionRoles.READ_FILE_ATTRIBUTES_CONFIG; import com.iqser.red.persistence.service.v1.external.api.impl.controller.FileAttributesController;
import static com.iqser.red.service.persistence.management.v1.processor.roles.ActionRoles.READ_RULES; import com.iqser.red.service.persistence.management.v1.processor.exception.BadRequestException;
import static com.iqser.red.service.persistence.management.v1.processor.roles.ActionRoles.WRITE_RULES; import com.iqser.red.service.persistence.management.v1.processor.model.audit.AuditDetail;
import com.iqser.red.service.persistence.management.v1.processor.service.RulesValidationService;
import java.io.ByteArrayInputStream; import com.iqser.red.service.persistence.management.v1.processor.service.persistence.RulesPersistenceService;
import java.io.InputStream; import com.iqser.red.service.persistence.management.v1.processor.utils.StringEncodingUtils;
import java.nio.charset.StandardCharsets; import com.iqser.red.service.persistence.service.v1.api.shared.model.AuditCategory;
import java.util.List; import com.iqser.red.service.persistence.service.v1.api.shared.model.DossierTemplateModel;
import java.util.Locale; import com.iqser.red.service.persistence.service.v1.api.shared.model.RuleFileType;
import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.rules.RulesUploadRequest;
import com.iqser.red.service.persistence.service.v2.api.external.model.FileAttributeDefinition;
import com.iqser.red.service.persistence.service.v2.api.external.model.FileAttributeDefinitionList;
import com.iqser.red.service.persistence.service.v2.api.external.model.RulesValidationMessage;
import com.iqser.red.service.persistence.service.v2.api.external.model.RulesValidationResponse;
import com.iqser.red.service.persistence.service.v2.api.external.resource.DossierTemplateResource;
import com.iqser.red.service.redaction.v1.model.DroolsSyntaxValidation;
import com.knecon.fforesight.auditor.Auditor;
import feign.FeignException;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.media.Schema;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor;
import lombok.SneakyThrows;
import org.springframework.core.io.InputStreamResource; import org.springframework.core.io.InputStreamResource;
import org.springframework.http.HttpHeaders; import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpStatus; import org.springframework.http.HttpStatus;
@ -23,32 +36,13 @@ import org.springframework.web.bind.annotation.RequestPart;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
import com.iqser.red.persistence.service.v1.external.api.impl.controller.DossierTemplateController; import java.io.ByteArrayInputStream;
import com.iqser.red.persistence.service.v1.external.api.impl.controller.FileAttributesController; import java.io.InputStream;
import com.iqser.red.service.persistence.management.v1.processor.exception.BadRequestException; import java.nio.charset.StandardCharsets;
import com.iqser.red.service.persistence.management.v1.processor.service.RulesValidationService; import java.util.List;
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.AuditPersistenceService; import java.util.Locale;
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.RulesPersistenceService;
import com.iqser.red.service.persistence.management.v1.processor.utils.StringEncodingUtils;
import com.iqser.red.service.persistence.service.v1.api.shared.model.AuditCategory;
import com.iqser.red.service.persistence.service.v1.api.shared.model.DossierTemplateModel;
import com.iqser.red.service.persistence.service.v1.api.shared.model.RuleFileType;
import com.iqser.red.service.persistence.service.v1.api.shared.model.audit.AuditRequest;
import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.rules.RulesUploadRequest;
import com.iqser.red.service.persistence.service.v2.api.external.model.FileAttributeDefinition;
import com.iqser.red.service.persistence.service.v2.api.external.model.FileAttributeDefinitionList;
import com.iqser.red.service.persistence.service.v2.api.external.model.RulesValidationMessage;
import com.iqser.red.service.persistence.service.v2.api.external.model.RulesValidationResponse;
import com.iqser.red.service.persistence.service.v2.api.external.resource.DossierTemplateResource;
import com.iqser.red.service.redaction.v1.model.DroolsSyntaxValidation;
import com.knecon.fforesight.keycloakcommons.security.KeycloakSecurity;
import feign.FeignException; import static com.iqser.red.service.persistence.management.v1.processor.roles.ActionRoles.*;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.media.Schema;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor;
import lombok.SneakyThrows;
@RestController @RestController
@RequiredArgsConstructor @RequiredArgsConstructor
@ -60,9 +54,10 @@ public class DossierTemplateControllerV2 implements DossierTemplateResource {
private final DossierTemplateController dossierTemplateController; private final DossierTemplateController dossierTemplateController;
private final RulesPersistenceService rulesPersistenceService; private final RulesPersistenceService rulesPersistenceService;
private final RulesValidationService rulesValidationService; private final RulesValidationService rulesValidationService;
private final AuditPersistenceService auditPersistenceService;
private final FileAttributesController fileAttributesController; private final FileAttributesController fileAttributesController;
private final Auditor auditor;
public List<DossierTemplateModel> getAllDossierTemplates() { public List<DossierTemplateModel> getAllDossierTemplates() {
@ -187,12 +182,9 @@ public class DossierTemplateControllerV2 implements DossierTemplateResource {
rulesPersistenceService.setRules(rulesUploadRequest.getRules(), rulesUploadRequest.getDossierTemplateId(), rulesUploadRequest.getRuleFileType()); rulesPersistenceService.setRules(rulesUploadRequest.getRules(), rulesUploadRequest.getDossierTemplateId(), rulesUploadRequest.getRuleFileType());
} }
auditPersistenceService.audit(AuditRequest.builder() auditor.audit(AuditCategory.DOSSIER_TEMPLATE.name(),
.userId(KeycloakSecurity.getUserId()) String.format("%s rules have been %s", rulesUploadRequest.getRuleFileType(), dryRun ? "validated" : "updated"),
.objectId(rulesUploadRequest.getDossierTemplateId()) AuditDetail.DOSSIER_TEMPLATE_ID, dossierTemplateId);
.category(AuditCategory.DOSSIER_TEMPLATE.name())
.message(String.format("%s rules have been %s", rulesUploadRequest.getRuleFileType(), dryRun ? "validated" : "updated"))
.build());
// TODO Add warning and deprecations to response // TODO Add warning and deprecations to response
return new ResponseEntity<>(RulesValidationResponse.builder().build(), HttpStatus.OK); return new ResponseEntity<>(RulesValidationResponse.builder().build(), HttpStatus.OK);