Package io.helidon.build.dev
Interface ProjectSupplier
-
- All Known Implementing Classes:
MavenProjectSupplier
public interface ProjectSupplierAProjectsupplier.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description StringbuildFileName()Returns the name of the build file supported by this supplier, e.g.Optional<FileTime>changedSince(Path projectDir, FileTime lastCheckTime)Returns the most recent modification time if any project file has a modified time more recent than the given time.booleanhasChanges(Path projectDir, FileTime lastCheckTime)Returns whether or not any project file has a modified time more recent than the given time.ProjectnewProject(BuildExecutor executor, boolean clean, boolean allowSkip, int cycleNumber)Returns a newProjectinstance from the project directory that has been successfully built.
-
-
-
Method Detail
-
newProject
Project newProject(BuildExecutor executor, boolean clean, boolean allowSkip, int cycleNumber) throws Exception
Returns a newProjectinstance from the project directory that has been successfully built. Implementations must callBuildMonitor.onBuildStart(int, BuildType)if a build is performed.- Parameters:
executor- The build executor.clean-trueif the project should be cleaned and built.allowSkip-trueif the project build can be skipped if up to date.cycleNumber- The cycle number.- Returns:
- The project instance, guaranteed to have been successfully built.
- Throws:
IllegalArgumentException- if the project directory is not a valid.Exception- if the build fails.
-
hasChanges
boolean hasChanges(Path projectDir, FileTime lastCheckTime)
Returns whether or not any project file has a modified time more recent than the given time.- Parameters:
projectDir- The project directory.lastCheckTime- The time to check against.- Returns:
trueif changed.
-
changedSince
Optional<FileTime> changedSince(Path projectDir, FileTime lastCheckTime)
Returns the most recent modification time if any project file has a modified time more recent than the given time.- Parameters:
projectDir- The project directory.lastCheckTime- The time to check against.- Returns:
- The time, if changed.
-
buildFileName
String buildFileName()
Returns the name of the build file supported by this supplier, e.g. "pom.xml".- Returns:
- The name.
-
-