private void notifyDependents(Task completed) { // log().debug(String.format("Task %s completed!", completed)); completed.onComplete(); final Set<Task> dependents = completed.getDependents(); for (Task dependent : dependents) { dependent.doCompletePrerequisite(completed); if (dependent.isReady()) { // log().debug(String.format("Task %s %s ready.", dependent, dependent.isReady() ? "is" : // "is not")); } dependent.submitIfReady(); } // log().debug(String.format("CLEAN: removing dependents of %s", completed)); completed.clearDependents(); }