@Override public boolean disconnect(TerminalExt terminal) { assert terminal instanceof BusTerminal; // already connected? if (!terminal.isConnected()) { return false; } ((BusTerminal) terminal).setConnected(false); // invalidate connected components invalidateCache(); return true; }
@Override public boolean connect(TerminalExt terminal) { assert terminal instanceof BusTerminal; // already connected? if (terminal.isConnected()) { return false; } ((BusTerminal) terminal).setConnected(true); // invalidate connected components invalidateCache(); return true; }
@Override public void detach(final TerminalExt terminal) { assert terminal instanceof BusTerminal; // remove the link terminal -> voltage level terminal.setVoltageLevel(null); // remove the link bus -> terminal String connectableBusId = ((BusTerminal) terminal).getConnectableBusId(); final ConfiguredBus connectableBus = getBus(connectableBusId, true); getNetwork().getVariantManager().forEachVariant(() -> { connectableBus.removeTerminal((BusTerminal) terminal); ((BusTerminal) terminal).setConnectableBusId(null); invalidateCache(); }); }
@Override public void attach(final TerminalExt terminal, boolean test) { checkTerminal(terminal); if (test) { return; } // create the link terminal -> voltage level terminal.setVoltageLevel(this); // create the link bus -> terminal String connectableBusId = ((BusTerminal) terminal).getConnectableBusId(); final ConfiguredBus connectableBus = getBus(connectableBusId, true); getNetwork().getVariantManager().forEachVariant(() -> { connectableBus.addTerminal((BusTerminal) terminal); // invalidate connected components invalidateCache(); }); }