public class ReactorModuleConvergence extends AbstractNonCacheableEnforcerRule
| Modifier and Type | Field and Description |
|---|---|
private boolean |
ignoreModuleDependencies |
private org.apache.maven.plugin.logging.Log |
logger |
| Constructor and Description |
|---|
ReactorModuleConvergence() |
| Modifier and Type | Method and Description |
|---|---|
private void |
addDep(java.util.Map<org.apache.maven.project.MavenProject,java.util.List<org.apache.maven.model.Dependency>> result,
org.apache.maven.project.MavenProject project,
org.apache.maven.model.Dependency dependency)
Convenience method to handle adding a dependency to the Map of List.
|
private void |
addMessageIfExist(java.lang.StringBuilder sb)
This will add the given user message to the output.
|
private java.util.List<org.apache.maven.project.MavenProject> |
areParentsFromTheReactor(java.lang.String reactorVersion,
java.util.List<org.apache.maven.project.MavenProject> sortedProjects) |
private java.util.Map<org.apache.maven.project.MavenProject,java.util.List<org.apache.maven.model.Dependency>> |
areThereDependenciesWhichAreNotPartOfTheReactor(java.lang.String reactorVersion,
java.util.List<org.apache.maven.project.MavenProject> sortedProjects)
Go through the list of modules in the builds and check if we have dependencies.
|
private void |
checkDependenciesWithinReactor(java.util.List<org.apache.maven.project.MavenProject> sortedProjects) |
private void |
checkMissingParentsInReactor(java.util.List<org.apache.maven.project.MavenProject> sortedProjects)
Convenience method to create a user readable message.
|
private void |
checkParentsInReactor(java.util.List<org.apache.maven.project.MavenProject> sortedProjects)
Convenience method to create a user readable message.
|
private void |
checkParentsPartOfTheReactor(java.util.List<org.apache.maven.project.MavenProject> sortedProjects) |
private void |
checkReactor(java.util.List<org.apache.maven.project.MavenProject> sortedProjects)
Convenience method to create user readable message.
|
void |
execute(EnforcerRuleHelper helper)
This is the interface into the rule.
|
private java.util.List<org.apache.maven.project.MavenProject> |
existModulesWithoutParentsInReactor(java.util.List<org.apache.maven.project.MavenProject> sortedProjects)
Assume we have a module which is a child of a multi module build but this child does not have a parent.
|
private java.util.List<org.apache.maven.project.MavenProject> |
existParentsWhichAreNotPartOfTheReactor(java.util.List<org.apache.maven.project.MavenProject> sortedProjects) |
private boolean |
hasDependencies(java.util.List<org.apache.maven.model.Dependency> dependencies) |
private boolean |
hasParent(org.apache.maven.project.MavenProject mavenProject) |
private boolean |
isDependencyPartOfTheReactor(org.apache.maven.model.Dependency dependency,
java.util.List<org.apache.maven.project.MavenProject> sortedProjects) |
private boolean |
isGAPartOfTheReactor(java.lang.String groupId,
java.lang.String artifactId,
java.util.List<org.apache.maven.project.MavenProject> sortedProjects)
This will check if the given
groupId/artifactId is part of the current reactor. |
boolean |
isIgnoreModuleDependencies() |
private boolean |
isProjectPartOfTheReactor(org.apache.maven.project.MavenProject project,
java.util.List<org.apache.maven.project.MavenProject> sortedProjects)
This will check of the groupId/artifactId can be found in any reactor project.
|
private java.util.List<org.apache.maven.project.MavenProject> |
isReactorVersionConsistent(java.util.List<org.apache.maven.project.MavenProject> projectList)
This method will check the following situation within a multi-module build.
|
void |
setIgnoreModuleDependencies(boolean ignoreModuleDependencies) |
getCacheId, isCacheable, isResultValidgetLevel, getMessage, setLevel, setMessageprivate boolean ignoreModuleDependencies
private org.apache.maven.plugin.logging.Log logger
public void execute(EnforcerRuleHelper helper) throws EnforcerRuleException
EnforcerRulehelper - The helper provides access to the log, MavenSession and has
helpers to get common components. It is also able to lookup components
by class name.EnforcerRuleException - the enforcer rule exceptionprivate void checkParentsPartOfTheReactor(java.util.List<org.apache.maven.project.MavenProject> sortedProjects)
throws EnforcerRuleException
EnforcerRuleExceptionprivate void checkMissingParentsInReactor(java.util.List<org.apache.maven.project.MavenProject> sortedProjects)
throws EnforcerRuleException
sortedProjects - The list of reactor projects.EnforcerRuleException - In case of a violation.private void checkDependenciesWithinReactor(java.util.List<org.apache.maven.project.MavenProject> sortedProjects)
throws EnforcerRuleException
EnforcerRuleExceptionprivate void checkParentsInReactor(java.util.List<org.apache.maven.project.MavenProject> sortedProjects)
throws EnforcerRuleException
sortedProjects - The list of reactor projects.EnforcerRuleException - In case of a violation.private void checkReactor(java.util.List<org.apache.maven.project.MavenProject> sortedProjects)
throws EnforcerRuleException
sortedProjects - The list of reactor projects.EnforcerRuleException - In case of a violation.private java.util.List<org.apache.maven.project.MavenProject> areParentsFromTheReactor(java.lang.String reactorVersion,
java.util.List<org.apache.maven.project.MavenProject> sortedProjects)
private java.util.List<org.apache.maven.project.MavenProject> existParentsWhichAreNotPartOfTheReactor(java.util.List<org.apache.maven.project.MavenProject> sortedProjects)
private boolean isProjectPartOfTheReactor(org.apache.maven.project.MavenProject project,
java.util.List<org.apache.maven.project.MavenProject> sortedProjects)
project - The project which should be checked if it is contained in the sortedProjects.sortedProjects - The list of existing projects.private boolean isDependencyPartOfTheReactor(org.apache.maven.model.Dependency dependency,
java.util.List<org.apache.maven.project.MavenProject> sortedProjects)
private boolean isGAPartOfTheReactor(java.lang.String groupId,
java.lang.String artifactId,
java.util.List<org.apache.maven.project.MavenProject> sortedProjects)
groupId/artifactId is part of the current reactor.groupId - The groupIdartifactId - The artifactIdsortedProjects - The list of projects within the reactor.private java.util.List<org.apache.maven.project.MavenProject> existModulesWithoutParentsInReactor(java.util.List<org.apache.maven.project.MavenProject> sortedProjects)
sortedProjects - The sorted list of the reactor modules.private void addDep(java.util.Map<org.apache.maven.project.MavenProject,java.util.List<org.apache.maven.model.Dependency>> result,
org.apache.maven.project.MavenProject project,
org.apache.maven.model.Dependency dependency)
result - The result List which should be handled.project - The MavenProject which will be added.dependency - The dependency which will be added.private java.util.Map<org.apache.maven.project.MavenProject,java.util.List<org.apache.maven.model.Dependency>> areThereDependenciesWhichAreNotPartOfTheReactor(java.lang.String reactorVersion,
java.util.List<org.apache.maven.project.MavenProject> sortedProjects)
reactorVersion - The version of the reactor.sortedProjects - The list of existing projects within this build.private java.util.List<org.apache.maven.project.MavenProject> isReactorVersionConsistent(java.util.List<org.apache.maven.project.MavenProject> projectList)
<parent>
<groupId>...</groupId>
<artifactId>...</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
<version>1.1-SNAPSHOT</version>
projectList - The sorted list of the reactor modules.private boolean hasDependencies(java.util.List<org.apache.maven.model.Dependency> dependencies)
private boolean hasParent(org.apache.maven.project.MavenProject mavenProject)
public boolean isIgnoreModuleDependencies()
public void setIgnoreModuleDependencies(boolean ignoreModuleDependencies)
private void addMessageIfExist(java.lang.StringBuilder sb)
sb - The already initialized exception message part.