public override void Execute(MeterDataSet meterDataSet) { FaultDataResource faultDataResource = meterDataSet.GetResource <FaultDataResource>(); CycleDataResource cycleDataResource = meterDataSet.GetResource <CycleDataResource>(); FaultGroup faultGroup; Log.Info("Executing operation to load fault location data into the database..."); m_faultSummarizer = new FaultSummarizer(m_systemFrequency); m_faultSummarizer.MeterDataSet = meterDataSet; foreach (DataGroup dataGroup in cycleDataResource.DataGroups) { if (!faultDataResource.FaultLookup.TryGetValue(dataGroup, out faultGroup)) { continue; } // Generate summary rows for the fault to be entered into the database m_faultSummarizer.DataGroup = dataGroup; m_faultSummarizer.FaultGroup = faultGroup; m_faultSummarizer.SummarizeFault(); } }