SI-154 Small fixes
diff --git a/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/controller/MessageConsumer.java b/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/controller/MessageConsumer.java index e1b31eb..6fdf642 100644 --- a/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/controller/MessageConsumer.java +++ b/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/controller/MessageConsumer.java
@@ -1,5 +1,6 @@ package org.eclipse.openk.gridfailureinformation.controller; +import lombok.extern.log4j.Log4j2; import org.eclipse.openk.gridfailureinformation.service.JobManagerService; import org.eclipse.openk.gridfailureinformation.util.ImportDataValidator; import org.eclipse.openk.gridfailureinformation.viewmodel.ImportDataDto; @@ -11,6 +12,7 @@ import java.util.Objects; +@Log4j2 @Component public class MessageConsumer { @@ -22,8 +24,12 @@ @RabbitListener(queues="${spring.rabbitmq.queuename}") public void listenMessage(Message message) { - if (Objects.nonNull(message.getMessageProperties().getHeaders().get("metaId"))) { - importData(message); + try { + if (Objects.nonNull(message.getMessageProperties().getHeaders().get("metaId"))) { + importData(message); + } + } catch( Exception e ) { + log.error("Unknown error while importing a message", e); } }
diff --git a/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/service/JobManagerService.java b/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/service/JobManagerService.java index 333dfc4..515a312 100644 --- a/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/service/JobManagerService.java +++ b/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/service/JobManagerService.java
@@ -72,16 +72,16 @@ log.info("External failure information [" + importDataDto.getMetaId() + "] from " + importDataDto.getSource() + " imported (inserted)."); } else { - setFromForeignDto(importDataDto, foreignFailureDataDto, existingDto); + FailureInformationDto updatedDto = setUpdateFromForeignDto(importDataDto, foreignFailureDataDto, existingDto); if( existingDto.getStatusInternId().equals( statusService.getStatusFromId(GfiProcessState.QUALIFIED.getStatusValue()).getUuid() )) { - existingDto.setStatusInternId( + updatedDto.setStatusInternId( statusService.getStatusFromId(GfiProcessState.UPDATED.getStatusValue()).getUuid() ); } - failureInformationService.updateFailureInfo(existingDto); + failureInformationService.updateFailureInfo(updatedDto); log.info("External failure information [" + importDataDto.getMetaId() + "] from " + importDataDto.getSource() + " imported (updated)."); } @@ -95,7 +95,29 @@ return failureInformationDto; } + private FailureInformationDto setUpdateFromForeignDto(ImportDataDto importDataDto, ForeignFailureDataDto foreignFailureDataDto, FailureInformationDto failureInformationDto) { + setFromForeignDto(importDataDto, foreignFailureDataDto, failureInformationDto); + return failureInformationDto; + } + + private void setFromForeignDto(ImportDataDto importDataDto, ForeignFailureDataDto foreignFailureDataDto, FailureInformationDto failureInformationDto) { + failureInformationDto.setCity(foreignFailureDataDto.getCity()); + failureInformationDto.setDistrict(foreignFailureDataDto.getDistrict()); + failureInformationDto.setFailureBegin(foreignFailureDataDto.getFailureBegin()); + failureInformationDto.setFailureEndPlanned(foreignFailureDataDto.getFailureEndPlanned()); + failureInformationDto.setFailureEndResupplied(foreignFailureDataDto.getFailureEndResupplied()); + failureInformationDto.setHousenumber(foreignFailureDataDto.getHousenumber()); + failureInformationDto.setInternalRemark(foreignFailureDataDto.getInternalRemark()); + failureInformationDto.setLatitude(foreignFailureDataDto.getLatitude()); + failureInformationDto.setLongitude(foreignFailureDataDto.getLongitude()); + failureInformationDto.setPostcode(foreignFailureDataDto.getPostcode()); + failureInformationDto.setPressureLevel(foreignFailureDataDto.getPressureLevel()); + failureInformationDto.setStationDescription(foreignFailureDataDto.getStationDescription()); + failureInformationDto.setStationId(foreignFailureDataDto.getStationId()); + failureInformationDto.setStreet(foreignFailureDataDto.getStreet()); + failureInformationDto.setVoltageLevel(foreignFailureDataDto.getVoltageLevel()); + failureInformationDto.setBranchId(branchService.findByName(foreignFailureDataDto.getBranch()).getUuid()); failureInformationDto.setBranch(foreignFailureDataDto.getBranch());
diff --git a/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/viewmodel/ImportDataDto.java b/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/viewmodel/ImportDataDto.java index e19f2c4..fb16fea 100644 --- a/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/viewmodel/ImportDataDto.java +++ b/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/viewmodel/ImportDataDto.java
@@ -40,7 +40,7 @@ @NotNull @Size(max=256) - @Pattern(regexp="[A-Za-z0-9\\s_/-:.]+") + @Pattern(regexp="[A-Za-z0-9\\s_/:.-]+") private String metaId; @Size(max=256)
diff --git a/testImportGridFailures/src/main/java/org/eclipse/openk/gridfailureinformation/jobs/importgridfailures/dtos/ForeignFailureMessageDto.java b/testImportGridFailures/src/main/java/org/eclipse/openk/gridfailureinformation/jobs/importgridfailures/dtos/ForeignFailureMessageDto.java index a135576..e956609 100644 --- a/testImportGridFailures/src/main/java/org/eclipse/openk/gridfailureinformation/jobs/importgridfailures/dtos/ForeignFailureMessageDto.java +++ b/testImportGridFailures/src/main/java/org/eclipse/openk/gridfailureinformation/jobs/importgridfailures/dtos/ForeignFailureMessageDto.java
@@ -26,20 +26,20 @@ public class ForeignFailureMessageDto implements Serializable { @NotNull - @Size(max=100) - @Pattern(regexp="[A-Za-z0-9_/-]+") - private String sourceSystem; - - @NotNull @Size(max=256) - @Pattern(regexp="[A-Za-z0-9_/-]+") - private String failureId; + @Pattern(regexp="[A-Za-z0-9\\s_/:.-]+") + private String metaId; @Size(max=256) @Pattern(regexp="^$|[A-Za-z0-9\\s_/(),.;:-]+") private String description; @NotNull + @Size(max=100) + @Pattern(regexp="[A-Za-z0-9\\s_/(),.;:-]+") + private String source; + + @NotNull private @Valid ForeignFailureDataDto payload; }
diff --git a/testImportGridFailures/src/main/java/org/eclipse/openk/gridfailureinformation/jobs/importgridfailures/service/ImportService.java b/testImportGridFailures/src/main/java/org/eclipse/openk/gridfailureinformation/jobs/importgridfailures/service/ImportService.java index 44ccd85..77cbd42 100644 --- a/testImportGridFailures/src/main/java/org/eclipse/openk/gridfailureinformation/jobs/importgridfailures/service/ImportService.java +++ b/testImportGridFailures/src/main/java/org/eclipse/openk/gridfailureinformation/jobs/importgridfailures/service/ImportService.java
@@ -43,9 +43,9 @@ failureImportChannel.send( MessageBuilder.withPayload( objectMapper.writeValueAsString(foreignFailureMessageDto.getPayload())) - .setHeader("metaId", foreignFailureMessageDto.getFailureId()) + .setHeader("metaId", foreignFailureMessageDto.getMetaId()) .setHeader("description", foreignFailureMessageDto.getDescription()) - .setHeader("source", foreignFailureMessageDto.getSourceSystem()) + .setHeader("source", foreignFailureMessageDto.getSource()) .build()); } catch (Exception e) {
diff --git a/testImportGridFailures/src/test/java/org/eclipse/openk/gridfailureinformation/jobs/importgridfailures/support/MockDataHelper.java b/testImportGridFailures/src/test/java/org/eclipse/openk/gridfailureinformation/jobs/importgridfailures/support/MockDataHelper.java index cfadd9d..e08462c 100644 --- a/testImportGridFailures/src/test/java/org/eclipse/openk/gridfailureinformation/jobs/importgridfailures/support/MockDataHelper.java +++ b/testImportGridFailures/src/test/java/org/eclipse/openk/gridfailureinformation/jobs/importgridfailures/support/MockDataHelper.java
@@ -22,8 +22,8 @@ public static ForeignFailureMessageDto mockForeignFailureDto() { ForeignFailureMessageDto foreignFailureMessageDto = new ForeignFailureMessageDto(); - foreignFailureMessageDto.setFailureId("XYZ_111_gdfr"); - foreignFailureMessageDto.setSourceSystem("FremdsystemXY"); + foreignFailureMessageDto.setMetaId("XYZ_111_gdfr"); + foreignFailureMessageDto.setSource("FremdsystemXY"); foreignFailureMessageDto.setDescription("Rohrbruch"); foreignFailureMessageDto.setPayload(null);