/** {@inheritDoc} */ @Override protected void buildDependencyGraph(DependencyGraph graph) { getPublishersList().buildDependencyGraph(this, graph); getBuildWrappersList().buildDependencyGraph(this, graph); // Anything that implements DependencyDeclarer can contribute to // the dependency graph, so if our build or build wrappers (or // whatever else) might implement this, then we should delegate to // them to populate any dependencies. }
/** {@inheritDoc} */ @Override protected void buildDependencyGraph(DependencyGraph graph) { }
@Override protected void buildDependencyGraph(final DependencyGraph graph) { }
/** * This method is called after a save to restructure the dependency graph. * The triggering method is * {@link #doConfigSubmit(StaplerRequest, StaplerResponse)}. * <p> * Before most methods in the super-class were de-synchronized, this * method was dangerous, because two separate projects would trigger a * graph rebuild and get stuck on each other. * <p> * As such, a global lock for all projects was added here. Since most * methods are de-synchronized now, this method ought to be re-entrant save. * <p> * On the other hand, the global locking does not cause much loss of * performance, since graph rebuilding only happens on saving of jobs. * <p> * Therefore, for the moment the global lock is still fine. */ @Override protected void buildDependencyGraph(DependencyGraph graph) { //Fetch the global lock of all projects //TODO: Use an interruptible lock here? globalGraphBuildingLock.lock(); try { super.buildDependencyGraph(graph); } finally { globalGraphBuildingLock.unlock(); } }
@Override protected void buildDependencyGraph(DependencyGraph graph) { }