コード例 #1
0
        //------------------------------------------------------------------------------
        // 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');
                     */
                }
            }
        }