From cd8cf0e68146c82accf33e7b73c1a218b27a7c02 Mon Sep 17 00:00:00 2001 From: Caroline Jeandat Date: Fri, 12 Jun 2026 07:49:56 +0200 Subject: [PATCH] Fix process configs duplicate endpoint Signed-off-by: Caroline Jeandat --- .../monitor/server/controllers/ProcessConfigController.java | 4 ++-- .../server/controllers/ProcessConfigControllerTest.java | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/monitor-server/src/main/java/org/gridsuite/monitor/server/controllers/ProcessConfigController.java b/monitor-server/src/main/java/org/gridsuite/monitor/server/controllers/ProcessConfigController.java index e54f660a..4d4130d0 100644 --- a/monitor-server/src/main/java/org/gridsuite/monitor/server/controllers/ProcessConfigController.java +++ b/monitor-server/src/main/java/org/gridsuite/monitor/server/controllers/ProcessConfigController.java @@ -90,13 +90,13 @@ public ResponseEntity updateProcessConfig( return processConfigUpdated.isPresent() ? ResponseEntity.ok().build() : ResponseEntity.notFound().build(); } - @PostMapping(value = "", params = "duplicateFrom", produces = MediaType.APPLICATION_JSON_VALUE) + @PostMapping(value = "/{uuid}/duplicate", produces = MediaType.APPLICATION_JSON_VALUE) @Operation(summary = "Duplicate a process config") @ApiResponses(value = { @ApiResponse(responseCode = "200", description = "process config was duplicated"), @ApiResponse(responseCode = "404", description = "process config to duplicate was not found")}) public ResponseEntity duplicateProcessConfig( - @Parameter(description = "UUID of the process config to duplicate") @RequestParam("duplicateFrom") UUID sourceProcessConfigUuid) { + @Parameter(description = "UUID of the process config to duplicate") @PathVariable("uuid") UUID sourceProcessConfigUuid) { Optional newProcessConfigUuid = processConfigService.duplicateProcessConfig(sourceProcessConfigUuid); return newProcessConfigUuid .map(configUuid -> ResponseEntity.ok().body(configUuid)) diff --git a/monitor-server/src/test/java/org/gridsuite/monitor/server/controllers/ProcessConfigControllerTest.java b/monitor-server/src/test/java/org/gridsuite/monitor/server/controllers/ProcessConfigControllerTest.java index 848f320e..5a255b70 100644 --- a/monitor-server/src/test/java/org/gridsuite/monitor/server/controllers/ProcessConfigControllerTest.java +++ b/monitor-server/src/test/java/org/gridsuite/monitor/server/controllers/ProcessConfigControllerTest.java @@ -169,7 +169,7 @@ void duplicateProcessConfig() throws Exception { when(processConfigService.duplicateProcessConfig(processConfigId)) .thenReturn(Optional.of(newProcessConfigId)); - mockMvc.perform(post("/v1/process-configs?duplicateFrom={uuid}", processConfigId)) + mockMvc.perform(post("/v1/process-configs/{uuid}/duplicate", processConfigId)) .andExpect(status().isOk()) .andExpect(content().contentType(MediaType.APPLICATION_JSON)) .andExpect(jsonPath("$").value(newProcessConfigId.toString())); @@ -184,7 +184,7 @@ void duplicateProcessConfigNotFound() throws Exception { when(processConfigService.duplicateProcessConfig(processConfigId)) .thenReturn(Optional.empty()); - mockMvc.perform(post("/v1/process-configs?duplicateFrom={uuid}", processConfigId)) + mockMvc.perform(post("/v1/process-configs/{uuid}/duplicate", processConfigId)) .andExpect(status().isNotFound()); verify(processConfigService).duplicateProcessConfig(processConfigId);