private void mapFault(AcscFaultAnalysisXmlType scAnalysisXml) throws InterpssException { String idStr = scAnalysisXml.getName() != null ? scAnalysisXml.getName() : scAnalysisXml.getDesc(); if (scAnalysisXml.getAcscFault() == null) throw new InterpssException("acscAnalysis.fault not defined"); AcscBaseFaultXmlType faultXml = scAnalysisXml.getAcscFault().getValue(); if (faultXml.getFaultType() == AcscFaultTypeEnumType.BUS_FAULT) { AcscBusFaultXmlType busFaultXml = (AcscBusFaultXmlType) faultXml; String faultBusId = busFaultXml.getRefBus().getBusId(); AcscBusFault acscBusFault = CoreObjectFactory.createAcscBusFault(faultBusId, acscFaultNet); acscAglo.addBusFault(faultBusId, idStr, acscBusFault); AcscBus bus = acscFaultNet.getBus(faultBusId); double baseV = bus.getBaseVoltage(); double baseKVA = bus.getNetwork().getBaseKva(); setBusFaultInfo(busFaultXml, acscBusFault, baseV, baseKVA); } else if (faultXml.getFaultType() == AcscFaultTypeEnumType.BRANCH_FAULT) { AcscBranchFaultXmlType braFaultXml = (AcscBranchFaultXmlType) faultXml; String faultBranchId = braFaultXml.getRefBranch().getBranchId(); AcscBranchFault acscBraFault = CoreObjectFactory.createAcscBranchFault(faultBranchId, acscFaultNet); acscAglo.addBranchFault(faultBranchId, idStr, acscBraFault); AcscBranch acscBra = acscFaultNet.getBranch(faultBranchId); double baseV = acscBra.getFromAclfBus().getBaseVoltage(); double baseKVA = acscBra.getNetwork().getBaseKva(); setBranchFaultInfo(braFaultXml, acscBraFault, baseV, baseKVA); } else if (faultXml.getFaultType() == AcscFaultTypeEnumType.BRANCH_OUTAGE) { throw new InterpssException("Acsc branch outtage fault not implemented"); } }