Ejemplo n.º 1
0
        private void ReadFile(string pnFilePaths, int gbNumber)
        {
            this.projectNumbers.Clear();

            if (!string.IsNullOrWhiteSpace(pnFilePaths))
            {
                foreach (var pnFileUnpatched in pnFilePaths.Split(';'))
                {
                    var pnFile = Utils.PatchFilePath(pnFileUnpatched);
                    if (!string.IsNullOrWhiteSpace(pnFile) && File.Exists(pnFile))
                    {
                        var allPnLines = File.ReadAllLines(pnFile, Encoding.Default);
                        foreach (var line in allPnLines.Skip(1))
                        {
                            var pn = new ProjectNumber();
                            if (pn.TryParse(line))
                            {
                                this.projectNumbers.Add(pn);
                            }
                            else
                            {
                                logger.Warn($"Could not parse project numbers line: {line}");
                            }
                        }
                        // break after first file worked
                        break;
                    }
                }
            }

            this.FilterByGBNumber(gbNumber);

            this.pnHash = this.projectNumbers.ToDictionary(pnum => pnum.Number, pnum => pnum.Description);
        }