Пример #1
0
        public void run()
        {
            RecordConfig recordConfig = null;

            while (!Complete)
            {
                lock (fileConfig)
                {
                    if (fileConfig.nextRecord < fileConfig.recConfig.Count)
                    {
                        recordConfig = fileConfig.recConfig[fileConfig.nextRecord++];
                    }
                    else
                    {
                        recordConfig = null;
                    }
                }

                if (recordConfig != null)
                {
                    workQueue.enqueueItem(new Work(recordConfig, IOhandler));
                    Console.WriteLine("Producer:{0} has created and enqueued Work Item:{1}", id, recordConfig.ToString());
                }

                Thread.Sleep(duration);
            }

            ThreadsRunning--;
        }
        public Constituency ReadDataFromFile(RecordConfig configRecord)
        {
            if (!File.Exists(configRecord.file))
            {
                return(null);
            }

            XDocument xmlDoc           = XDocument.Load(configRecord.file);
            var       constituencyName = (from c in xmlDoc.Descendants("Constituency")
                                          select c.Attribute("name").Value).First();

            Constituency constit = new Constituency(constituencyName);

            constit.ReportPartyWin = new Report("OverallWinner");
            constit.ReportPartyWin.TotalVotesDataMeasure = SelectDataMeasuresConstituency(xmlDoc, constit.ConstituencyName);

            return(constit);
        }
Пример #3
0
 public Work(RecordConfig recordconfig, IFileReader IOHandler)
 {
     constituency      = null;
     this.recordConfig = recordconfig;
     this.IOHandler    = IOHandler;
 }