diff --git a/src/main/java/org/gridsuite/modification/modifications/MoveVoltageLevelFeederBays.java b/src/main/java/org/gridsuite/modification/modifications/MoveVoltageLevelFeederBays.java index b5143851..a1871ed8 100644 --- a/src/main/java/org/gridsuite/modification/modifications/MoveVoltageLevelFeederBays.java +++ b/src/main/java/org/gridsuite/modification/modifications/MoveVoltageLevelFeederBays.java @@ -15,6 +15,8 @@ import org.gridsuite.modification.dto.*; import org.gridsuite.modification.utils.ModificationUtils; +import java.util.function.Consumer; + import static org.gridsuite.modification.NetworkModificationException.Type.MOVE_VOLTAGE_LEVEL_FEEDER_BAYS_ERROR; /** @@ -133,9 +135,15 @@ private void setConnectionAttributes(java.util.function.Consumer> setName, java.util.function.Consumer> setDirection, MoveFeederBayInfos info) { - setPosition.accept(new AttributeModification<>(info.getConnectionPosition(), OperationType.SET)); - setName.accept(new AttributeModification<>(info.getConnectionName(), OperationType.SET)); - setDirection.accept(new AttributeModification<>(info.getConnectionDirection(), OperationType.SET)); + acceptIfNotNull(setPosition, info.getConnectionPosition()); + acceptIfNotNull(setName, info.getConnectionName()); + acceptIfNotNull(setDirection, info.getConnectionDirection()); + } + + private void acceptIfNotNull(Consumer> setter, T value) { + if (value != null) { + setter.accept(new AttributeModification<>(value, OperationType.SET)); + } } private void moveFeederBay(Network network, Connectable connectable, MoveFeederBayInfos info, ReportNode subReportNode) {