Package org.apache.maven.plugin.internal
Class DefaultPluginValidationManager
- java.lang.Object
-
- org.apache.maven.eventspy.AbstractEventSpy
-
- org.apache.maven.plugin.internal.DefaultPluginValidationManager
-
- All Implemented Interfaces:
EventSpy,PluginValidationManager
@Singleton @Named public final class DefaultPluginValidationManager extends AbstractEventSpy implements PluginValidationManager
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classDefaultPluginValidationManager.PluginValidationIssuesprivate static classDefaultPluginValidationManager.ValidationReportLevel-
Nested classes/interfaces inherited from interface org.apache.maven.eventspy.EventSpy
EventSpy.Context
-
Nested classes/interfaces inherited from interface org.apache.maven.plugin.PluginValidationManager
PluginValidationManager.IssueLocality
-
-
Field Summary
Fields Modifier and Type Field Description private static DefaultPluginValidationManager.ValidationReportLevelDEFAULT_VALIDATION_LEVEL(package private) static java.util.Collection<java.lang.String>EXPECTED_PROVIDED_SCOPE_EXCLUSIONS_GAThe collection of "G:A" combinations that do NOT belong to Maven Core, hence, should be excluded from "expected in provided scope" type of checks.private static java.util.Collection<DefaultPluginValidationManager.ValidationReportLevel>INLINE_VALIDATION_LEVELprivate static java.lang.StringISSUES_KEYprivate org.slf4j.Loggerloggerprivate static java.lang.StringMAVEN_PLUGIN_VALIDATION_EXCLUDES_KEYprivate static java.lang.StringMAVEN_PLUGIN_VALIDATION_KEYprivate static java.lang.StringPLUGIN_EXCLUDES_KEY
-
Constructor Summary
Constructors Constructor Description DefaultPluginValidationManager()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private booleanhasAnythingToReport(java.util.Map<java.lang.String,DefaultPluginValidationManager.PluginValidationIssues> issuesMap, java.util.EnumSet<PluginValidationManager.IssueLocality> issueLocalitiesToReport)private booleanhasAnythingToReport(DefaultPluginValidationManager.PluginValidationIssues issues, java.util.EnumSet<PluginValidationManager.IssueLocality> issueLocalitiesToReport)private voidmayReportInline(org.eclipse.aether.RepositorySystemSession session, PluginValidationManager.IssueLocality locality, java.lang.String issue)private java.lang.StringmojoInfo(MojoDescriptor mojoDescriptor, java.lang.Class<?> mojoClass)voidonEvent(java.lang.Object event)Notifies the spy of some build event/operation.private java.util.List<java.lang.String>parsePluginExcludes(org.eclipse.aether.RepositorySystemSession session)private DefaultPluginValidationManager.ValidationReportLevelparseValidationReportLevel(org.eclipse.aether.RepositorySystemSession session)private java.lang.StringpluginDeclaration(MavenSession mavenSession, MojoDescriptor mojoDescriptor)private java.util.concurrent.ConcurrentHashMap<java.lang.String,DefaultPluginValidationManager.PluginValidationIssues>pluginIssues(org.eclipse.aether.RepositorySystemSession session)private java.lang.StringpluginKey(java.lang.String groupId, java.lang.String artifactId, java.lang.String version)private java.lang.StringpluginKey(MojoDescriptor mojoDescriptor)private java.lang.StringpluginKey(org.eclipse.aether.artifact.Artifact pluginArtifact)voidreportPluginMojoValidationIssue(PluginValidationManager.IssueLocality locality, MavenSession mavenSession, MojoDescriptor mojoDescriptor, java.lang.Class<?> mojoClass, java.lang.String issue)Reports plugin Mojo issues applicable to the Mojo itself.voidreportPluginValidationIssue(PluginValidationManager.IssueLocality locality, MavenSession mavenSession, MojoDescriptor mojoDescriptor, java.lang.String issue)Reports plugin issues applicable to the plugin as a whole.voidreportPluginValidationIssue(PluginValidationManager.IssueLocality locality, org.eclipse.aether.RepositorySystemSession session, org.eclipse.aether.artifact.Artifact pluginArtifact, java.lang.String issue)Reports plugin issues applicable to the plugin as a whole.private voidreportSessionCollectedValidationIssues(MavenSession mavenSession)private java.util.List<?>validationPluginExcludes(org.eclipse.aether.RepositorySystemSession session)private DefaultPluginValidationManager.ValidationReportLevelvalidationReportLevel(org.eclipse.aether.RepositorySystemSession session)-
Methods inherited from class org.apache.maven.eventspy.AbstractEventSpy
close, init
-
-
-
-
Field Detail
-
EXPECTED_PROVIDED_SCOPE_EXCLUSIONS_GA
static final java.util.Collection<java.lang.String> EXPECTED_PROVIDED_SCOPE_EXCLUSIONS_GA
The collection of "G:A" combinations that do NOT belong to Maven Core, hence, should be excluded from "expected in provided scope" type of checks.
-
ISSUES_KEY
private static final java.lang.String ISSUES_KEY
-
PLUGIN_EXCLUDES_KEY
private static final java.lang.String PLUGIN_EXCLUDES_KEY
-
MAVEN_PLUGIN_VALIDATION_KEY
private static final java.lang.String MAVEN_PLUGIN_VALIDATION_KEY
- See Also:
- Constant Field Values
-
MAVEN_PLUGIN_VALIDATION_EXCLUDES_KEY
private static final java.lang.String MAVEN_PLUGIN_VALIDATION_EXCLUDES_KEY
- See Also:
- Constant Field Values
-
DEFAULT_VALIDATION_LEVEL
private static final DefaultPluginValidationManager.ValidationReportLevel DEFAULT_VALIDATION_LEVEL
-
INLINE_VALIDATION_LEVEL
private static final java.util.Collection<DefaultPluginValidationManager.ValidationReportLevel> INLINE_VALIDATION_LEVEL
-
logger
private final org.slf4j.Logger logger
-
-
Method Detail
-
onEvent
public void onEvent(java.lang.Object event)
Description copied from interface:EventSpyNotifies the spy of some build event/operation.- Specified by:
onEventin interfaceEventSpy- Overrides:
onEventin classAbstractEventSpy- Parameters:
event- The event, nevernull.- See Also:
SettingsBuildingRequest,SettingsBuildingResult,MavenExecutionRequest,MavenExecutionResult,DependencyResolutionRequest,DependencyResolutionResult,ExecutionEvent,RepositoryEvent
-
validationPluginExcludes
private java.util.List<?> validationPluginExcludes(org.eclipse.aether.RepositorySystemSession session)
-
parsePluginExcludes
private java.util.List<java.lang.String> parsePluginExcludes(org.eclipse.aether.RepositorySystemSession session)
-
validationReportLevel
private DefaultPluginValidationManager.ValidationReportLevel validationReportLevel(org.eclipse.aether.RepositorySystemSession session)
-
parseValidationReportLevel
private DefaultPluginValidationManager.ValidationReportLevel parseValidationReportLevel(org.eclipse.aether.RepositorySystemSession session)
-
pluginKey
private java.lang.String pluginKey(java.lang.String groupId, java.lang.String artifactId, java.lang.String version)
-
pluginKey
private java.lang.String pluginKey(MojoDescriptor mojoDescriptor)
-
pluginKey
private java.lang.String pluginKey(org.eclipse.aether.artifact.Artifact pluginArtifact)
-
mayReportInline
private void mayReportInline(org.eclipse.aether.RepositorySystemSession session, PluginValidationManager.IssueLocality locality, java.lang.String issue)
-
reportPluginValidationIssue
public void reportPluginValidationIssue(PluginValidationManager.IssueLocality locality, org.eclipse.aether.RepositorySystemSession session, org.eclipse.aether.artifact.Artifact pluginArtifact, java.lang.String issue)
Description copied from interface:PluginValidationManagerReports plugin issues applicable to the plugin as a whole.This method should be used in "early" phase of plugin execution, possibly even when plugin or mojo descriptor does not exist yet. In turn, this method will not record extra information like plugin occurrence or declaration location as those are not yet available.
- Specified by:
reportPluginValidationIssuein interfacePluginValidationManager
-
reportPluginValidationIssue
public void reportPluginValidationIssue(PluginValidationManager.IssueLocality locality, MavenSession mavenSession, MojoDescriptor mojoDescriptor, java.lang.String issue)
Description copied from interface:PluginValidationManagerReports plugin issues applicable to the plugin as a whole.This method will record extra information as well, like plugin occurrence or declaration location.
- Specified by:
reportPluginValidationIssuein interfacePluginValidationManager
-
reportPluginMojoValidationIssue
public void reportPluginMojoValidationIssue(PluginValidationManager.IssueLocality locality, MavenSession mavenSession, MojoDescriptor mojoDescriptor, java.lang.Class<?> mojoClass, java.lang.String issue)
Description copied from interface:PluginValidationManagerReports plugin Mojo issues applicable to the Mojo itself.This method will record extra information as well, like plugin occurrence or declaration location.
- Specified by:
reportPluginMojoValidationIssuein interfacePluginValidationManager
-
reportSessionCollectedValidationIssues
private void reportSessionCollectedValidationIssues(MavenSession mavenSession)
-
hasAnythingToReport
private boolean hasAnythingToReport(java.util.Map<java.lang.String,DefaultPluginValidationManager.PluginValidationIssues> issuesMap, java.util.EnumSet<PluginValidationManager.IssueLocality> issueLocalitiesToReport)
-
hasAnythingToReport
private boolean hasAnythingToReport(DefaultPluginValidationManager.PluginValidationIssues issues, java.util.EnumSet<PluginValidationManager.IssueLocality> issueLocalitiesToReport)
-
pluginDeclaration
private java.lang.String pluginDeclaration(MavenSession mavenSession, MojoDescriptor mojoDescriptor)
-
mojoInfo
private java.lang.String mojoInfo(MojoDescriptor mojoDescriptor, java.lang.Class<?> mojoClass)
-
pluginIssues
private java.util.concurrent.ConcurrentHashMap<java.lang.String,DefaultPluginValidationManager.PluginValidationIssues> pluginIssues(org.eclipse.aether.RepositorySystemSession session)
-
-