Skip to content

Commit f1a2189

Browse files
committed
before node build, dont load excluded, inactive or stashed modifications
Signed-off-by: David BRAQUART <[email protected]>
1 parent c0d341f commit f1a2189

File tree

2 files changed

+11
-5
lines changed

2 files changed

+11
-5
lines changed

src/main/java/org/gridsuite/modification/server/repositories/NetworkModificationRepository.java

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -458,9 +458,17 @@ private List<ModificationEntity> getModificationsEntitiesNonTransactional(List<U
458458
}
459459
}
460460

461+
private List<ModificationEntity> getActiveModificationsEntities(List<UUID> groupUuids, Set<UUID> modificationsToExclude) {
462+
Stream<ModificationEntity> entityStream = groupUuids.stream().flatMap(this::getModificationEntityStream);
463+
return entityStream
464+
.filter(m -> modificationsToExclude == null || !modificationsToExclude.contains(m.getId()))
465+
.filter(m -> !m.getStashed() && m.getActivated())
466+
.toList();
467+
}
468+
461469
@Transactional(readOnly = true)
462-
public List<ModificationEntity> getModificationsEntities(List<UUID> groupUuids, boolean onlyStashed) {
463-
List<ModificationEntity> modificationsEntities = getModificationsEntitiesNonTransactional(groupUuids, onlyStashed);
470+
public List<ModificationEntity> getModificationsEntities(List<UUID> groupUuids, Set<UUID> modificationsToExclude) {
471+
List<ModificationEntity> modificationsEntities = getActiveModificationsEntities(groupUuids, modificationsToExclude);
464472
loadFullModificationsEntities(modificationsEntities);
465473
return modificationsEntities;
466474
}

src/main/java/org/gridsuite/modification/server/service/NetworkModificationService.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -243,10 +243,8 @@ public NetworkModificationResult buildVariant(@NonNull UUID networkUuid, @NonNul
243243
List<ModificationEntity> modifications = List.of();
244244
try {
245245
// FullDto needed for toModificationInfos() after the modifications have been applied
246-
modifications = networkModificationRepository.getModificationsEntities(List.of(groupUuid), false)
246+
modifications = networkModificationRepository.getModificationsEntities(List.of(groupUuid), modificationsToExclude)
247247
.stream()
248-
.filter(m -> modificationsToExclude == null || !modificationsToExclude.contains(m.getId()))
249-
.filter(m -> !m.getStashed())
250248
.toList();
251249
} catch (NetworkModificationException e) {
252250
if (e.getType() != MODIFICATION_GROUP_NOT_FOUND) { // May not exist

0 commit comments

Comments
 (0)