/** * Returns the estimated duration for this builds. * Takes only the modules into account which are actually being build in * case of incremental builds. */ @Override public long getEstimatedDuration() { if (!project.isIncrementalBuild()) { return super.getEstimatedDuration(); } long result = 0; Map<MavenModule, List<MavenBuild>> moduleBuilds = getModuleBuilds(); for (List<MavenBuild> builds : moduleBuilds.values()) { if (!builds.isEmpty()) { MavenBuild build = builds.get(0); if (build.getResult() != Result.NOT_BUILT && build.getEstimatedDuration() != -1) { result += build.getEstimatedDuration(); } } } result += estimateModuleSetBuildDurationOverhead(3); return result != 0 ? result : -1; }