Example #1
0
        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();
            }
        }