@Override public HvdcLine add() { String id = checkAndGetUniqueId(); String name = getName(); ValidationUtil.checkR(this, r); ValidationUtil.checkConvertersMode(this, convertersMode); ValidationUtil.checkNominalV(this, nominalV); ValidationUtil.checkActivePowerSetpoint(this, activePowerSetpoint); ValidationUtil.checkMaxP(this, maxP); AbstractHvdcConverterStation<?> converterStation1 = getNetwork().getHvdcConverterStation(converterStationId1); if (converterStation1 == null) { throw new PowsyblException("Side 1 converter station " + converterStationId1 + " not found"); } AbstractHvdcConverterStation<?> converterStation2 = getNetwork().getHvdcConverterStation(converterStationId2); if (converterStation2 == null) { throw new PowsyblException("Side 2 converter station " + converterStationId2 + " not found"); } HvdcLineImpl hvdcLine = new HvdcLineImpl(id, name, r, nominalV, maxP, convertersMode, activePowerSetpoint, converterStation1, converterStation2, networkRef); getNetwork().getObjectStore().checkAndAdd(hvdcLine); getNetwork().getListeners().notifyCreation(hvdcLine); return hvdcLine; }