Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -2079,9 +2079,8 @@ public ResponseEntity<String> getDynamicMarginCalculationStatus(@Parameter(descr
@Operation(summary = "Get security analysis parameters on study")
@ApiResponses(value = {@ApiResponse(responseCode = "200", description = "The security analysis parameters")})
public ResponseEntity<String> getSecurityAnalysisParametersValues(
@PathVariable("studyUuid") UUID studyUuid,
@RequestHeader(HEADER_USER_ID) String userId) {
return ResponseEntity.ok().body(studyService.getSecurityAnalysisParametersValues(studyUuid, userId));
@PathVariable("studyUuid") UUID studyUuid) {
return ResponseEntity.ok().body(studyService.getSecurityAnalysisParametersValues(studyUuid));
}

@PostMapping(value = "/studies/{studyUuid}/security-analysis/parameters")
Expand Down Expand Up @@ -2188,9 +2187,8 @@ public void setAsText(final String text) throws IllegalArgumentException {
@Operation(summary = "Get sensitivity analysis parameters on study")
@ApiResponses(value = {@ApiResponse(responseCode = "200", description = "The sensitivity analysis parameters")})
public ResponseEntity<String> getSensitivityAnalysisParameters(
@PathVariable("studyUuid") UUID studyUuid,
@RequestHeader(HEADER_USER_ID) String userId) {
return ResponseEntity.ok().body(studyService.getSensitivityAnalysisParameters(studyUuid, userId));
@PathVariable("studyUuid") UUID studyUuid) {
return ResponseEntity.ok().body(studyService.getSensitivityAnalysisParameters(studyUuid));
}

@PostMapping(value = "/studies/{studyUuid}/sensitivity-analysis/parameters")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -359,7 +359,7 @@ private UUID createDefaultSensitivityAnalysisParameters(String userId, UserProfi
if (userProfileInfos != null && userProfileInfos.getSensitivityAnalysisParameterId() != null) {
// try to access/duplicate the user profile sensitivity analysis parameters
try {
return sensitivityAnalysisService.duplicateSensitivityAnalysisParameters(userProfileInfos.getSensitivityAnalysisParameterId(), userId);
return sensitivityAnalysisService.duplicateSensitivityAnalysisParameters(userProfileInfos.getSensitivityAnalysisParameterId());
} catch (Exception e) {
// TODO try to report a log in Root subreporter ?
LOGGER.error(String.format("Could not duplicate sensitivity analysis parameters with id '%s' from user/profile '%s/%s'. Using default parameters",
Expand All @@ -379,7 +379,7 @@ private UUID createDefaultSecurityAnalysisParameters(String userId, UserProfileI
if (userProfileInfos != null && userProfileInfos.getSecurityAnalysisParameterId() != null) {
// try to access/duplicate the user profile security analysis parameters
try {
return securityAnalysisService.duplicateSecurityAnalysisParameters(userProfileInfos.getSecurityAnalysisParameterId(), userId);
return securityAnalysisService.duplicateSecurityAnalysisParameters(userProfileInfos.getSecurityAnalysisParameterId());
} catch (Exception e) {
// TODO try to report a log in Root subreporter ?
LOGGER.error(String.format("Could not duplicate security analysis parameters with id '%s' from user/profile '%s/%s'. Using default parameters",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -236,31 +236,26 @@ public void updateSecurityAnalysisParameters(UUID parametersUuid, @Nullable Stri
restTemplate.put(securityAnalysisServerBaseUri + path, httpEntity);
}

public UUID duplicateSecurityAnalysisParameters(UUID sourceParametersUuid, String userId) {
public UUID duplicateSecurityAnalysisParameters(UUID sourceParametersUuid) {
Objects.requireNonNull(sourceParametersUuid);

var path = UriComponentsBuilder.fromPath(DELIMITER + SECURITY_ANALYSIS_API_VERSION + DELIMITER + PATH_PARAM_PARAMETERS)
.queryParam("duplicateFrom", sourceParametersUuid)
.buildAndExpand().toUriString();

HttpHeaders headers = new HttpHeaders();
headers.set(HEADER_USER_ID, userId);
headers.setContentType(MediaType.APPLICATION_JSON);

return restTemplate.exchange(securityAnalysisServerBaseUri + path, HttpMethod.POST, new HttpEntity<>(null, headers), UUID.class).getBody();
}

public String getSecurityAnalysisParameters(UUID parametersUuid, String userId) {
public String getSecurityAnalysisParameters(UUID parametersUuid) {
Objects.requireNonNull(parametersUuid);

String path = UriComponentsBuilder.fromPath(DELIMITER + SECURITY_ANALYSIS_API_VERSION + PARAMETERS_URI)
.buildAndExpand(parametersUuid).toUriString();

HttpHeaders headers = new HttpHeaders();
headers.set(HEADER_USER_ID, userId);
headers.setContentType(MediaType.APPLICATION_JSON);

return restTemplate.exchange(securityAnalysisServerBaseUri + path, HttpMethod.GET, new HttpEntity<>(null, headers), String.class).getBody();
return restTemplate.getForObject(securityAnalysisServerBaseUri + path, String.class);
}

public UUID getSecurityAnalysisParametersUuidOrElseCreateDefaults(StudyEntity studyEntity) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -243,19 +243,14 @@ public UUID getSensitivityAnalysisParametersUuidOrElseCreateDefault(StudyEntity
return studyEntity.getSensitivityAnalysisParametersUuid();
}

public String getSensitivityAnalysisParameters(UUID parametersUuid, String userId) {
public String getSensitivityAnalysisParameters(UUID parametersUuid) {

String path = UriComponentsBuilder
.fromPath(DELIMITER + SENSITIVITY_ANALYSIS_API_VERSION + PARAMETERS_URI)
.buildAndExpand(parametersUuid)
.toUriString();

HttpHeaders headers = new HttpHeaders();
headers.set(HEADER_USER_ID, userId);

HttpEntity<String> httpEntity = new HttpEntity<>(headers);

return restTemplate.exchange(sensitivityAnalysisServerBaseUri + path, HttpMethod.GET, httpEntity, String.class).getBody();
return restTemplate.getForObject(sensitivityAnalysisServerBaseUri + path, String.class);
}

public UUID createDefaultSensitivityAnalysisParameters() {
Expand Down Expand Up @@ -284,7 +279,7 @@ public UUID createSensitivityAnalysisParameters(String parameters) {
return restTemplate.postForObject(sensitivityAnalysisServerBaseUri + path, httpEntity, UUID.class);
}

public UUID duplicateSensitivityAnalysisParameters(UUID sourceParametersUuid, String userId) {
public UUID duplicateSensitivityAnalysisParameters(UUID sourceParametersUuid) {

Objects.requireNonNull(sourceParametersUuid);

Expand All @@ -294,12 +289,7 @@ public UUID duplicateSensitivityAnalysisParameters(UUID sourceParametersUuid, St
.buildAndExpand()
.toUriString();

HttpHeaders headers = new HttpHeaders();
headers.set(HEADER_USER_ID, userId);

HttpEntity<String> httpEntity = new HttpEntity<>(headers);

return restTemplate.postForObject(sensitivityAnalysisServerBaseUri + path, httpEntity, UUID.class);
return restTemplate.postForObject(sensitivityAnalysisServerBaseUri + path, null, UUID.class);
}

public void updateSensitivityAnalysisParameters(UUID parametersUuid, @Nullable String parameters) {
Expand Down
21 changes: 10 additions & 11 deletions src/main/java/org/gridsuite/study/server/service/StudyService.java
Original file line number Diff line number Diff line change
Expand Up @@ -707,7 +707,7 @@ private StudyEntity duplicateStudy(BasicStudyInfos studyInfos, UUID sourceStudyU

StudyEntity sourceStudy = getStudy(sourceStudyUuid);

StudyEntity newStudyEntity = duplicateStudyEntity(sourceStudy, studyInfos.getId(), userId);
StudyEntity newStudyEntity = duplicateStudyEntity(sourceStudy, studyInfos.getId());
rootNetworkService.duplicateStudyRootNetworks(newStudyEntity, sourceStudy);
networkModificationTreeService.duplicateStudyNodes(newStudyEntity, sourceStudy);
duplicateStudyNodeAliases(newStudyEntity, sourceStudy);
Expand All @@ -719,7 +719,7 @@ private StudyEntity duplicateStudy(BasicStudyInfos studyInfos, UUID sourceStudyU
return newStudyEntity;
}

private StudyEntity duplicateStudyEntity(StudyEntity sourceStudyEntity, UUID newStudyId, String userId) {
private StudyEntity duplicateStudyEntity(StudyEntity sourceStudyEntity, UUID newStudyId) {
UUID copiedLoadFlowParametersUuid = null;
if (sourceStudyEntity.getLoadFlowParametersUuid() != null) {
copiedLoadFlowParametersUuid = loadflowService.duplicateLoadFlowParameters(sourceStudyEntity.getLoadFlowParametersUuid());
Expand All @@ -732,12 +732,12 @@ private StudyEntity duplicateStudyEntity(StudyEntity sourceStudyEntity, UUID new

UUID copiedSecurityAnalysisParametersUuid = null;
if (sourceStudyEntity.getSecurityAnalysisParametersUuid() != null) {
copiedSecurityAnalysisParametersUuid = securityAnalysisService.duplicateSecurityAnalysisParameters(sourceStudyEntity.getSecurityAnalysisParametersUuid(), userId);
copiedSecurityAnalysisParametersUuid = securityAnalysisService.duplicateSecurityAnalysisParameters(sourceStudyEntity.getSecurityAnalysisParametersUuid());
}

UUID copiedSensitivityAnalysisParametersUuid = null;
if (sourceStudyEntity.getSensitivityAnalysisParametersUuid() != null) {
copiedSensitivityAnalysisParametersUuid = sensitivityAnalysisService.duplicateSensitivityAnalysisParameters(sourceStudyEntity.getSensitivityAnalysisParametersUuid(), userId);
copiedSensitivityAnalysisParametersUuid = sensitivityAnalysisService.duplicateSensitivityAnalysisParameters(sourceStudyEntity.getSensitivityAnalysisParametersUuid());
}

UUID copiedVoltageInitParametersUuid = null;
Expand Down Expand Up @@ -1200,9 +1200,9 @@ public LoadFlowParametersInfos getLoadFlowParametersInfos(StudyEntity studyEntit
}

@Transactional
public String getSecurityAnalysisParametersValues(UUID studyUuid, String userId) {
public String getSecurityAnalysisParametersValues(UUID studyUuid) {
StudyEntity studyEntity = getStudy(studyUuid);
return securityAnalysisService.getSecurityAnalysisParameters(securityAnalysisService.getSecurityAnalysisParametersUuidOrElseCreateDefaults(studyEntity), userId);
return securityAnalysisService.getSecurityAnalysisParameters(securityAnalysisService.getSecurityAnalysisParametersUuidOrElseCreateDefaults(studyEntity));
}

@Transactional
Expand Down Expand Up @@ -1690,7 +1690,7 @@ public boolean createOrUpdateSecurityAnalysisParameters(StudyEntity studyEntity,
if (parameters == null && userProfileInfos.getSecurityAnalysisParameterId() != null) {
// reset case, with existing profile, having default security analysis params
try {
UUID securityAnalysisParametersFromProfileUuid = securityAnalysisService.duplicateSecurityAnalysisParameters(userProfileInfos.getSecurityAnalysisParameterId(), userId);
UUID securityAnalysisParametersFromProfileUuid = securityAnalysisService.duplicateSecurityAnalysisParameters(userProfileInfos.getSecurityAnalysisParameterId());
studyEntity.setSecurityAnalysisParametersUuid(securityAnalysisParametersFromProfileUuid);
removeSecurityAnalysisParameters(existingSecurityAnalysisParametersUuid);
return userProfileIssue;
Expand Down Expand Up @@ -3314,11 +3314,10 @@ public void insertVoltageInitModifications(UUID studyUuid, UUID nodeUuid, UUID r
}

@Transactional
public String getSensitivityAnalysisParameters(UUID studyUuid, String userId) {
public String getSensitivityAnalysisParameters(UUID studyUuid) {
StudyEntity studyEntity = getStudy(studyUuid);
return sensitivityAnalysisService.getSensitivityAnalysisParameters(
sensitivityAnalysisService.getSensitivityAnalysisParametersUuidOrElseCreateDefault(studyEntity),
userId);
sensitivityAnalysisService.getSensitivityAnalysisParametersUuidOrElseCreateDefault(studyEntity));
}

@Transactional
Expand All @@ -3339,7 +3338,7 @@ public boolean createOrUpdateSensitivityAnalysisParameters(StudyEntity studyEnti
if (parameters == null && userProfileInfos.getSensitivityAnalysisParameterId() != null) {
// reset case, with existing profile, having default sensitivity analysis params
try {
UUID sensitivityAnalysisParametersFromProfileUuid = sensitivityAnalysisService.duplicateSensitivityAnalysisParameters(userProfileInfos.getSensitivityAnalysisParameterId(), userId);
UUID sensitivityAnalysisParametersFromProfileUuid = sensitivityAnalysisService.duplicateSensitivityAnalysisParameters(userProfileInfos.getSensitivityAnalysisParameterId());
studyEntity.setSensitivityAnalysisParametersUuid(sensitivityAnalysisParametersFromProfileUuid);
removeSensitivityAnalysisParameters(existingSensitivityAnalysisParametersUuid);
return userProfileIssue;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -105,8 +105,6 @@ class SensitivityAnalysisTest {
private static final String VARIANT_ID_2 = "variant_2";
private static final String VARIANT_ID_3 = "variant_3";

private static final String USER_ID = "userId";

private static final String SENSITIVITY_ANALYSIS_PARAMETERS_UUID_STRING = "0c0f1efd-bd22-4a75-83d3-9e530245c7f4";
private static final UUID SENSITIVITY_ANALYSIS_PARAMETERS_UUID = UUID.fromString(SENSITIVITY_ANALYSIS_PARAMETERS_UUID_STRING);
private static final String NO_PROFILE_USER_ID = "noProfileUser";
Expand Down Expand Up @@ -662,10 +660,8 @@ void testSensitivityAnalysisParameters() throws Exception {
assertNotNull(studyNameUserIdUuid);

// Get sensitivity analysis parameters (on existing)
mockMvc.perform(get("/v1/studies/{studyUuid}/sensitivity-analysis/parameters", studyNameUserIdUuid)
.header(HEADER_USER_ID, USER_ID)).andExpectAll(
status().isOk(),
content().string(SENSITIVITY_ANALYSIS_DEFAULT_PARAMETERS_JSON));
mockMvc.perform(get("/v1/studies/{studyUuid}/sensitivity-analysis/parameters", studyNameUserIdUuid))
.andExpectAll(status().isOk(), content().string(SENSITIVITY_ANALYSIS_DEFAULT_PARAMETERS_JSON));

computationServerStubs.verifyParametersGet(SENSITIVITY_ANALYSIS_PARAMETERS_UUID.toString());

Expand All @@ -679,10 +675,8 @@ void testSensitivityAnalysisParameters() throws Exception {
studyEntityToUpdate.setSensitivityAnalysisParametersUuid(null);
studyRepository.save(studyEntityToUpdate);

mockMvc.perform(get("/v1/studies/{studyUuid}/sensitivity-analysis/parameters", studyNameUserIdUuid)
.header(HEADER_USER_ID, USER_ID)).andExpectAll(
status().isOk(),
content().string(SENSITIVITY_ANALYSIS_DEFAULT_PARAMETERS_JSON));
mockMvc.perform(get("/v1/studies/{studyUuid}/sensitivity-analysis/parameters", studyNameUserIdUuid))
.andExpectAll(status().isOk(), content().string(SENSITIVITY_ANALYSIS_DEFAULT_PARAMETERS_JSON));

computationServerStubs.verifyParametersDefault(1);
computationServerStubs.verifyParametersGet(SENSITIVITY_ANALYSIS_PARAMETERS_UUID.toString());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -666,8 +666,7 @@ void testSecurityAnalysisParameters() throws Exception {
computationServerStubs.stubGetParametersDefault(SECURITY_ANALYSIS_DEFAULT_PARAMETERS_JSON);
computationServerStubs.stubPostParametersDefault("\"" + SECURITY_ANALYSIS_PARAMETERS_UUID_STRING + "\"");
computationServerStubs.stubParametersGet(SECURITY_ANALYSIS_PARAMETERS_UUID_STRING, SECURITY_ANALYSIS_DEFAULT_PARAMETERS_JSON);
mockMvc.perform(get("/v1/studies/{studyUuid}/security-analysis/parameters", studyUuid)
.header(HEADER_USER_ID, "userId"))
mockMvc.perform(get("/v1/studies/{studyUuid}/security-analysis/parameters", studyUuid))
.andExpect(status().isOk())
.andExpect(content().string(SECURITY_ANALYSIS_DEFAULT_PARAMETERS_JSON));

Expand All @@ -689,8 +688,7 @@ void testSecurityAnalysisParameters() throws Exception {
assertEquals(UPDATE_TYPE_SECURITY_ANALYSIS_STATUS, output.receive(TIMEOUT, STUDY_UPDATE_DESTINATION).getHeaders().get(NotificationService.HEADER_UPDATE_TYPE));
assertEquals(UPDATE_TYPE_COMPUTATION_PARAMETERS, output.receive(TIMEOUT, STUDY_UPDATE_DESTINATION).getHeaders().get(NotificationService.HEADER_UPDATE_TYPE));

mockMvc.perform(get("/v1/studies/{studyUuid}/security-analysis/parameters", studyUuid)
.header(HEADER_USER_ID, "userId"))
mockMvc.perform(get("/v1/studies/{studyUuid}/security-analysis/parameters", studyUuid))
.andExpect(status().isOk())
.andExpect(content().string(SECURITY_ANALYSIS_DEFAULT_PARAMETERS_JSON));

Expand Down
Loading