//------------------------------------------------------------------------------ // HELPER FUNCTION FOR INITMACHINES() // // Adds a machine to the machine list for offered courses by first doing a search // amongst the machineNodes if the Course already exists there and acts // accordingly. //------------------------------------------------------------------------------ void addMachine(Machine dummyMachine, Job job) { dummyMachine.AddJob(job); //adds job for (int i = 0; i < Quarters.Count; i++) { MachineNode mn = Quarters[i]; List <Machine> machines = mn.GetMachines(); if (machines.Count > 0) { for (int j = 0; j < machines.Count; j++) { Machine m = machines[j]; if (m == dummyMachine) { //found the machine, just add job m.AddJob(job); break; } else if (dummyMachine.GetYear().Equals(mn.GetYear()) && dummyMachine.GetQuarter().Equals(mn.GetQuarter())) { //machine does not exist, add it in machines.Add(dummyMachine); break; } } } else if (dummyMachine.GetYear().Equals(mn.GetYear()) && dummyMachine.GetQuarter().Equals(mn.GetQuarter())) { machines.Add(dummyMachine); break; } else //in the instance that machines == 0 and either year or quarter were different { //NOTE: This isn't so much an error as a bookkeeping check. Because CourseTime contains only 1 year // machines dated beyond the first year throw this error. So this is a database issue. /* * Console.WriteLine("Dummy Machine Year: " + dummyMachine.GetYear()); * Console.WriteLine("Dummy Machine Quarter: " + dummyMachine.GetQuarter()); * Console.WriteLine("Dummy Course ID: " + course); * Console.WriteLine("mn Year: " + mn.GetYear()); * Console.WriteLine("mn Quarter: " + mn.GetQuarter()); * Console.WriteLine('\n'); */ } } }