diff --git a/pom.xml b/pom.xml index 794aaa61..3a9a4e5a 100644 --- a/pom.xml +++ b/pom.xml @@ -43,7 +43,7 @@ powsybl/java-dynawo:3.0.0 - 38.0.0 + 39.0.0 org.gridsuite.securityanalysis.server 1.0.5 5.0.0-alpha.14 diff --git a/src/main/java/org/gridsuite/securityanalysis/server/report/SecurityAnalysisServerReportResourceBundle.java b/src/main/java/org/gridsuite/securityanalysis/server/report/SecurityAnalysisServerReportResourceBundle.java new file mode 100644 index 00000000..87cc8856 --- /dev/null +++ b/src/main/java/org/gridsuite/securityanalysis/server/report/SecurityAnalysisServerReportResourceBundle.java @@ -0,0 +1,24 @@ +/** + * Copyright (c) 2025, RTE (http://www.rte-france.com) + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * SPDX-License-Identifier: MPL-2.0 + */ +package org.gridsuite.securityanalysis.server.report; + +import com.google.auto.service.AutoService; +import com.powsybl.commons.report.ReportResourceBundle; + +/** + * @author Charly Boutier {@literal } + */ +@AutoService(ReportResourceBundle.class) +public final class SecurityAnalysisServerReportResourceBundle implements ReportResourceBundle { + + public static final String BASE_NAME = "org.gridsuite.securityanalysis.server.reports"; + + public String getBaseName() { + return BASE_NAME; + } +} diff --git a/src/main/java/org/gridsuite/securityanalysis/server/service/SecurityAnalysisWorkerService.java b/src/main/java/org/gridsuite/securityanalysis/server/service/SecurityAnalysisWorkerService.java index 51831e6d..96d1b6af 100644 --- a/src/main/java/org/gridsuite/securityanalysis/server/service/SecurityAnalysisWorkerService.java +++ b/src/main/java/org/gridsuite/securityanalysis/server/service/SecurityAnalysisWorkerService.java @@ -228,14 +228,13 @@ private static void logContingencyEquipmentsNotFound(SecurityAnalysisRunContext } ReportNode elementsNotFoundSubReporter = runContext.getReportNode().newReportNode() - .withMessageTemplate("notFoundEquipments", "Equipments not found") + .withMessageTemplate("security.analysis.server.notFoundEquipments") .add(); contingencyInfosList.forEach(contingencyInfos -> { String elementsIds = String.join(", ", contingencyInfos.getNotFoundElements()); elementsNotFoundSubReporter.newReportNode() - .withMessageTemplate("contingencyEquipmentNotFound", - "Cannot find the following equipments ${elementsIds} in contingency ${contingencyId}") + .withMessageTemplate("security.analysis.server.contingencyEquipmentNotFound") .withUntypedValue("elementsIds", elementsIds) .withUntypedValue("contingencyId", contingencyInfos.getId()) .withSeverity(TypedValue.WARN_SEVERITY) @@ -252,14 +251,13 @@ private void logContingencyEquipmentsNotConnected(SecurityAnalysisRunContext run } ReportNode elementsNotConnectedSubReporter = runContext.getReportNode().newReportNode() - .withMessageTemplate("notConnectedEquipments", "Equipments not connected") + .withMessageTemplate("security.analysis.server.notConnectedEquipments") .add(); contingencyInfosList.forEach(contingencyInfos -> { String elementsIds = String.join(", ", contingencyInfos.getNotConnectedElements()); elementsNotConnectedSubReporter.newReportNode() - .withMessageTemplate("contingencyEquipmentNotConnected", - "The following equipments ${elementsIds} in contingency ${contingencyId} are not connected") + .withMessageTemplate("security.analysis.server.contingencyEquipmentNotConnected") .withUntypedValue("elementsIds", elementsIds) .withUntypedValue("contingencyId", contingencyInfos.getId()) .withSeverity(TypedValue.WARN_SEVERITY) diff --git a/src/main/resources/org/gridsuite/securityanalysis/server/reports.properties b/src/main/resources/org/gridsuite/securityanalysis/server/reports.properties new file mode 100644 index 00000000..ee8d5a57 --- /dev/null +++ b/src/main/resources/org/gridsuite/securityanalysis/server/reports.properties @@ -0,0 +1,4 @@ +security.analysis.server.notFoundEquipments = Equipments not found +security.analysis.server.contingencyEquipmentNotFound = Cannot find the following equipments ${elementsIds} in contingency ${contingencyId} +security.analysis.server.notConnectedEquipments = Equipments not connected +security.analysis.server.contingencyEquipmentNotConnected = The following equipments ${elementsIds} in contingency ${contingencyId} are not connected diff --git a/src/main/resources/org/gridsuite/securityanalysis/server/reports_en_US.properties b/src/main/resources/org/gridsuite/securityanalysis/server/reports_en_US.properties new file mode 100644 index 00000000..8b137891 --- /dev/null +++ b/src/main/resources/org/gridsuite/securityanalysis/server/reports_en_US.properties @@ -0,0 +1 @@ + diff --git a/src/test/java/org/gridsuite/securityanalysis/server/SecurityAnalysisControllerTest.java b/src/test/java/org/gridsuite/securityanalysis/server/SecurityAnalysisControllerTest.java index b244a363..cf2b7d77 100644 --- a/src/test/java/org/gridsuite/securityanalysis/server/SecurityAnalysisControllerTest.java +++ b/src/test/java/org/gridsuite/securityanalysis/server/SecurityAnalysisControllerTest.java @@ -721,11 +721,11 @@ void runWithReportTestElementsNotFoundAndNotConnected() throws Exception { SecurityAnalysisResult securityAnalysisResult = mapper.readValue(resultAsString, SecurityAnalysisResult.class); assertThat(RESULT, new MatcherJson<>(mapper, securityAnalysisResult)); - assertLogMessage("Equipments not found", "notFoundEquipments", reportService); - assertLogMessage("Cannot find the following equipments wrongId1, wrongId2 in contingency l1", "contingencyEquipmentNotFound", reportService); + assertLogMessage("Equipments not found", "security.analysis.server.notFoundEquipments", reportService); + assertLogMessage("Cannot find the following equipments wrongId1, wrongId2 in contingency l1", "security.analysis.server.contingencyEquipmentNotFound", reportService); - assertLogMessage("Equipments not connected", "notConnectedEquipments", reportService); - assertLogMessage("The following equipments notConnectedId1 in contingency l4 are not connected", "contingencyEquipmentNotConnected", reportService); + assertLogMessage("Equipments not connected", "security.analysis.server.notConnectedEquipments", reportService); + assertLogMessage("The following equipments notConnectedId1 in contingency l4 are not connected", "security.analysis.server.contingencyEquipmentNotConnected", reportService); } @Test