// <summary> // Processes a single line from the input file. Assumes the following format is followed in the input file: // <class type>,<class name>,<fan out count>,<comma separated list of dependent class names>. // </summary> private void processLine(string aLine) { string[] lineSplit = aLine.Split(','); int fanOutCnt; if((lineSplit.Length >= 3) && (int.TryParse(lineSplit[2], out fanOutCnt))) { string clName = lineSplit[1]; string clType = lineSplit[0]; //check there is enough fan-out data on the line if((fanOutCnt + 3) != lineSplit.Length){ System.Console.WriteLine("ERROR: Incorrect format found in input file."); System.Environment.Exit(1); } if(!classNames.Contains(clName)) { ClassInfo newInfo = new ClassInfo(clType); classNames.Add(clName); classes.Add(clName, newInfo); if(fanOutCnt > 0) { for(int i = 3; i != lineSplit.Length; ++i){ newInfo.addFanOut(lineSplit[i]); } } } } else { System.Console.WriteLine("ERROR: Input file in wrong format."); System.Environment.Exit(1); } }