code: public AbstractProject getBuildingDownstream() {
          Set<Task> unblockedTasks = Jenkins.getInstance().getQueue().getUnblockedTasks();
  
          for (AbstractProject tup : getTransitiveDownstreamProjects()) {
  			if (tup!=this && (tup.isBuilding() || unblockedTasks.contains(tup)))
                  return tup;
          }
          return null;
      }
docs: Returns the project if any of the downstream project is either
  building, waiting, pending or buildable.
  <p>
  This means eventually there will be an automatic triggering of
  the given project (provided that all builds went smoothly.)