diff --git a/pom.xml b/pom.xml index 9b9dd7f..4cc5b67 100644 --- a/pom.xml +++ b/pom.xml @@ -28,7 +28,7 @@ SPDX-License-Identifier: Apache-2.0 2.8.2.Final 1.7.36 - 2.9.1 + 2.10.0 2.9.0 0.9.1 diff --git a/service/src/main/java/org/lfenergy/compas/scl/auto/alignment/builder/AbstractGraphBuilder.java b/service/src/main/java/org/lfenergy/compas/scl/auto/alignment/builder/AbstractGraphBuilder.java index 4d5be5c..e859126 100644 --- a/service/src/main/java/org/lfenergy/compas/scl/auto/alignment/builder/AbstractGraphBuilder.java +++ b/service/src/main/java/org/lfenergy/compas/scl/auto/alignment/builder/AbstractGraphBuilder.java @@ -3,8 +3,9 @@ // SPDX-License-Identifier: Apache-2.0 package org.lfenergy.compas.scl.auto.alignment.builder; -import com.powsybl.sld.model.BaseGraph; -import com.powsybl.sld.model.Node; + +import com.powsybl.sld.model.graphs.BaseGraph; +import com.powsybl.sld.model.nodes.Node; import java.util.Map; diff --git a/service/src/main/java/org/lfenergy/compas/scl/auto/alignment/builder/SubstationGraphBuilder.java b/service/src/main/java/org/lfenergy/compas/scl/auto/alignment/builder/SubstationGraphBuilder.java index fdc5d02..aac9f2b 100644 --- a/service/src/main/java/org/lfenergy/compas/scl/auto/alignment/builder/SubstationGraphBuilder.java +++ b/service/src/main/java/org/lfenergy/compas/scl/auto/alignment/builder/SubstationGraphBuilder.java @@ -3,7 +3,11 @@ // SPDX-License-Identifier: Apache-2.0 package org.lfenergy.compas.scl.auto.alignment.builder; -import com.powsybl.sld.model.*; +import com.powsybl.sld.model.graphs.NodeFactory; +import com.powsybl.sld.model.graphs.SubstationGraph; +import com.powsybl.sld.model.nodes.Feeder2WTLegNode; +import com.powsybl.sld.model.nodes.Feeder3WTLegNode; +import com.powsybl.sld.model.nodes.Node; import org.lfenergy.compas.scl.auto.alignment.exception.SclAutoAlignmentException; import org.lfenergy.compas.scl.auto.alignment.model.*; @@ -38,7 +42,7 @@ private void createSubstation() { } private void createVoltageLevelGraph(GenericVoltageLevel voltageLevel) { - var voltageLevelBuilder = new VoltageLevelGraphBuilder(voltageLevel, substation, getPath2Node()); + var voltageLevelBuilder = new VoltageLevelGraphBuilder(voltageLevel, substation, getPath2Node(), getGraph()); getGraph().addVoltageLevel(voltageLevelBuilder.getGraph()); voltageLevelGraphBuilderMap.put(voltageLevel.getFullName(), voltageLevelBuilder); } @@ -63,9 +67,9 @@ private void createPowerTransformer(GenericPowerTransformer powerTransformer) { if (powerTransformer.isFeeder2WT()) { var tws = powerTransformer.getTransformerWindings(); getGraph().addMultiTermNode( - Middle2WTNode.create(powerTransformer.getFullName(), + NodeFactory.createMiddle2WTNode(getGraph(), + powerTransformer.getFullName(), powerTransformer.getFullName(), - getGraph(), getFeeder2WTLegNode(tws.get(0)), getFeeder2WTLegNode(tws.get(1)), getVoltageLevelBuilder(tws.get(0)).getGraph().getVoltageLevelInfos(), @@ -74,16 +78,12 @@ private void createPowerTransformer(GenericPowerTransformer powerTransformer) { } else if (powerTransformer.isFeeder3WT()) { var tws = powerTransformer.getTransformerWindings(); getGraph().addMultiTermNode( - Middle3WTNode.create(powerTransformer.getFullName(), + NodeFactory.createMiddle3WTNode(getGraph(), + powerTransformer.getFullName(), powerTransformer.getFullName(), - getGraph(), getFeeder3WTLegNode(tws.get(0)), getFeeder3WTLegNode(tws.get(1)), - getFeeder3WTLegNode(tws.get(2)), - getVoltageLevelBuilder(tws.get(0)).getGraph().getVoltageLevelInfos(), - getVoltageLevelBuilder(tws.get(1)).getGraph().getVoltageLevelInfos(), - getVoltageLevelBuilder(tws.get(2)).getGraph().getVoltageLevelInfos(), - false)); + getFeeder3WTLegNode(tws.get(2)))); } } diff --git a/service/src/main/java/org/lfenergy/compas/scl/auto/alignment/builder/VoltageLevelGraphBuilder.java b/service/src/main/java/org/lfenergy/compas/scl/auto/alignment/builder/VoltageLevelGraphBuilder.java index a953bf0..4315dea 100644 --- a/service/src/main/java/org/lfenergy/compas/scl/auto/alignment/builder/VoltageLevelGraphBuilder.java +++ b/service/src/main/java/org/lfenergy/compas/scl/auto/alignment/builder/VoltageLevelGraphBuilder.java @@ -3,10 +3,15 @@ // SPDX-License-Identifier: Apache-2.0 package org.lfenergy.compas.scl.auto.alignment.builder; -import com.powsybl.sld.model.*; +import com.powsybl.sld.library.ComponentTypeName; +import com.powsybl.sld.model.coordinate.Direction; +import com.powsybl.sld.model.graphs.BaseGraph; +import com.powsybl.sld.model.graphs.NodeFactory; +import com.powsybl.sld.model.graphs.VoltageLevelGraph; +import com.powsybl.sld.model.graphs.VoltageLevelInfos; +import com.powsybl.sld.model.nodes.*; import org.lfenergy.compas.scl.auto.alignment.model.*; -import java.util.HashMap; import java.util.Map; import java.util.Optional; import java.util.concurrent.atomic.AtomicInteger; @@ -15,20 +20,10 @@ public class VoltageLevelGraphBuilder extends AbstractGraphBuilder(), true); - } - public VoltageLevelGraphBuilder(GenericVoltageLevel voltageLevel, GenericSubstation substation, - Map path2Node) { - this(voltageLevel, substation, path2Node, false); - } - - private VoltageLevelGraphBuilder(GenericVoltageLevel voltageLevel, - GenericSubstation substation, - Map path2Node, - boolean forVoltageLevelDiagram) { + Map path2Node, + BaseGraph parentGraph) { super(path2Node); this.voltageLevel = voltageLevel; this.substation = substation; @@ -36,7 +31,7 @@ private VoltageLevelGraphBuilder(GenericVoltageLevel voltageLevel, var voltageLevelInfos = new VoltageLevelInfos(voltageLevel.getFullName(), voltageLevel.getFullName(), voltageLevel.getVoltage()); - setGraph(VoltageLevelGraph.create(voltageLevelInfos, forVoltageLevelDiagram)); + setGraph(new VoltageLevelGraph(voltageLevelInfos, parentGraph)); createVoltageLevel(); } @@ -57,14 +52,14 @@ private void createVoltageLevel() { private void processBusbarNode(GenericBay busbar, AtomicInteger busbarIndex) { busbar.getConnectivityNodes() - .forEach(connectivityNode -> + .stream().findFirst() + .ifPresent(connectivityNode -> addNode(connectivityNode.getPathName(), createBusbarNode(busbar.getFullName(), busbarIndex.getAndIncrement(), 1))); } public BusNode createBusbarNode(String id, int busbarIndex, int sectionIndex) { - BusNode busNode = BusNode.create(getGraph(), id, id); - getGraph().addNode(busNode); + BusNode busNode = NodeFactory.createBusNode(getGraph(), id, id); busNode.setBusBarIndexSectionIndex(busbarIndex, sectionIndex); return busNode; } @@ -127,10 +122,8 @@ private Node terminalToNode(GenericTerminal terminal) { } private SwitchNode createSwitchNode(String id) { - SwitchNode sw = new SwitchNode(id, id, SwitchNode.SwitchKind.BREAKER.name(), false, - getGraph(), SwitchNode.SwitchKind.BREAKER, false); - getGraph().addNode(sw); - return sw; + return NodeFactory.createSwitchNode(getGraph(), id, id, SwitchNode.SwitchKind.BREAKER.name(), + false, SwitchNode.SwitchKind.BREAKER, false); } private void connectNode(Node node1, Node node2) { @@ -138,34 +131,31 @@ private void connectNode(Node node1, Node node2) { } private FictitiousNode createFictitiousNode(String id) { - InternalNode fictitiousNode = new InternalNode(id, getGraph()); - getGraph().addNode(fictitiousNode); - return fictitiousNode; + return NodeFactory.createFictitiousNode(getGraph(), id, id, id, ComponentTypeName.LINE); } private FeederNode createLoad(String id) { - FeederInjectionNode fn = FeederInjectionNode.createLoad(getGraph(), id, id); + FeederNode fn = NodeFactory.createLoad(getGraph(), id, id); commonFeederSetting(fn, id, 0, null); return fn; } public Feeder2WTLegNode createFeeder2WTLegNode(String id, FeederWithSideNode.Side side, int order, - BusCell.Direction direction) { - Feeder2WTLegNode f2WTe = Feeder2WTLegNode.create(getGraph(), id + "_" + side, id, id, side); + Direction direction) { + Feeder2WTLegNode f2WTe = NodeFactory.createFeeder2WTLegNode(getGraph(), id + "_" + side, id, id, side); commonFeederSetting(f2WTe, id, order, direction); return f2WTe; } public Feeder3WTLegNode createFeeder3WTLegNode(String id, FeederWithSideNode.Side side, int order, - BusCell.Direction direction) { - Feeder3WTLegNode f3WTe = Feeder3WTLegNode.createForSubstationDiagram(getGraph(), id + "_" + side, id, id, side); + Direction direction) { + Feeder3WTLegNode f3WTe = NodeFactory.createFeeder3WTLegNodeForSubstationDiagram(getGraph(), id + "_" + side, id, id, side); commonFeederSetting(f3WTe, id + side.getIntValue(), order, direction); return f3WTe; } - private void commonFeederSetting(FeederNode node, String id, int order, BusCell.Direction direction) { + private void commonFeederSetting(FeederNode node, String id, int order, Direction direction) { node.setLabel(id); - getGraph().addNode(node); if (direction != null) { node.setOrder(order); diff --git a/service/src/main/java/org/lfenergy/compas/scl/auto/alignment/model/GenericPowerTransformer.java b/service/src/main/java/org/lfenergy/compas/scl/auto/alignment/model/GenericPowerTransformer.java index 4d16b9c..639cb48 100644 --- a/service/src/main/java/org/lfenergy/compas/scl/auto/alignment/model/GenericPowerTransformer.java +++ b/service/src/main/java/org/lfenergy/compas/scl/auto/alignment/model/GenericPowerTransformer.java @@ -3,7 +3,7 @@ // SPDX-License-Identifier: Apache-2.0 package org.lfenergy.compas.scl.auto.alignment.model; -import com.powsybl.sld.model.FeederWithSideNode; +import com.powsybl.sld.model.nodes.FeederWithSideNode; import org.w3c.dom.Element; import java.util.Collection; diff --git a/service/src/main/java/org/lfenergy/compas/scl/auto/alignment/service/SclAutoAlignmentDiagramLabelProvider.java b/service/src/main/java/org/lfenergy/compas/scl/auto/alignment/service/SclAutoAlignmentDiagramLabelProvider.java index cc60163..99b66f0 100644 --- a/service/src/main/java/org/lfenergy/compas/scl/auto/alignment/service/SclAutoAlignmentDiagramLabelProvider.java +++ b/service/src/main/java/org/lfenergy/compas/scl/auto/alignment/service/SclAutoAlignmentDiagramLabelProvider.java @@ -4,9 +4,10 @@ package org.lfenergy.compas.scl.auto.alignment.service; import com.powsybl.sld.library.ComponentTypeName; -import com.powsybl.sld.model.FeederNode; -import com.powsybl.sld.model.Node; -import com.powsybl.sld.model.SubstationGraph; +import com.powsybl.sld.model.coordinate.Direction; +import com.powsybl.sld.model.graphs.SubstationGraph; +import com.powsybl.sld.model.nodes.FeederNode; +import com.powsybl.sld.model.nodes.Node; import com.powsybl.sld.svg.DiagramLabelProvider; import com.powsybl.sld.svg.FeederInfo; import com.powsybl.sld.svg.LabelPosition; @@ -33,17 +34,17 @@ private void addNode(Node node) { @Override public List getFeederInfos(FeederNode node) { - return Arrays.asList(new FeederInfo(ComponentTypeName.ARROW_ACTIVE, Direction.OUT, "", "", null), - new FeederInfo(ComponentTypeName.ARROW_REACTIVE, Direction.IN, "", "", null)); + return Arrays.asList(new FeederInfo(ComponentTypeName.ARROW_ACTIVE, LabelDirection.OUT, "", "", null), + new FeederInfo(ComponentTypeName.ARROW_REACTIVE, LabelDirection.IN, "", "", null)); } @Override - public List getNodeLabels(com.powsybl.sld.model.Node node) { + public List getNodeLabels(Node node, Direction direction) { return busLabels.get(node); } @Override - public List getNodeDecorators(com.powsybl.sld.model.Node node) { + public List getNodeDecorators(Node node, Direction direction) { return new ArrayList<>(); } diff --git a/service/src/main/java/org/lfenergy/compas/scl/auto/alignment/service/SclAutoAlignmentService.java b/service/src/main/java/org/lfenergy/compas/scl/auto/alignment/service/SclAutoAlignmentService.java index 7cf578b..cc541fa 100644 --- a/service/src/main/java/org/lfenergy/compas/scl/auto/alignment/service/SclAutoAlignmentService.java +++ b/service/src/main/java/org/lfenergy/compas/scl/auto/alignment/service/SclAutoAlignmentService.java @@ -7,7 +7,7 @@ import com.powsybl.sld.layout.LayoutParameters; import com.powsybl.sld.layout.PositionVoltageLevelLayoutFactory; import com.powsybl.sld.library.ConvergenceComponentLibrary; -import com.powsybl.sld.model.SubstationGraph; +import com.powsybl.sld.model.graphs.SubstationGraph; import com.powsybl.sld.svg.BasicStyleProvider; import com.powsybl.sld.svg.DefaultSVGWriter; import org.lfenergy.compas.core.commons.ElementConverter; diff --git a/service/src/test/java/org/lfenergy/compas/scl/auto/alignment/model/GenericPowerTransformerTest.java b/service/src/test/java/org/lfenergy/compas/scl/auto/alignment/model/GenericPowerTransformerTest.java index 012d400..c9d673b 100644 --- a/service/src/test/java/org/lfenergy/compas/scl/auto/alignment/model/GenericPowerTransformerTest.java +++ b/service/src/test/java/org/lfenergy/compas/scl/auto/alignment/model/GenericPowerTransformerTest.java @@ -3,7 +3,7 @@ // SPDX-License-Identifier: Apache-2.0 package org.lfenergy.compas.scl.auto.alignment.model; -import com.powsybl.sld.model.FeederWithSideNode; +import com.powsybl.sld.model.nodes.FeederWithSideNode; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test;