コード例 #1
0
ファイル: Repl.java プロジェクト: lxmonk/SplAssignment1
 private static void abortProject(Vector<String> vec) {
   if (vec.size() != 1) {
     System.out.println(
         "USAGE: 'abortProject' takes exactly 1 argument. " + vec.size() + " given.");
   } else {
     if (!Repl.projects.containsKey(vec.elementAt(0))) {
       System.out.println(vec.elementAt(0) + " is not a valid project!");
     } else {
       ProjectImpl project = Repl.projects.get(vec.elementAt(0));
       Repl.logger.finer(
           "trying to abort project " + project.getName() + " at " + Helpers.staticTimeNow());
       if (!Repl.completedProjectsSet.contains(project)) {
         // the project hasn't been completed yet.
         if (Repl.executingProjects.containsKey(project)) {
           // someone is working on this project
           Task task = project.getNextTask();
           project.abortProject();
           task.abortTask();
         } else { // the project is pending
           Repl.managerBoard
               .getProjectBox(project.getNextManagerSpecializtion())
               .getProject(project);
         }
       } else {
       }
     }
   }
   Repl.nextCommand(Repl.commands, Repl.SC);
 }