Class EnforcerPlugin
java.lang.Object
io.micronaut.starter.feature.buildtools.maven.EnforcerPlugin
- All Implemented Interfaces:
io.micronaut.core.naming.Described
,io.micronaut.core.naming.Named
,io.micronaut.core.order.Ordered
,DefaultFeature
,Feature
,OpenRewriteFeature
@Requires(property="micronaut.starter.feature.maven.enforcer.plugin.enabled",
value="true",
defaultValue="true")
@Singleton
public class EnforcerPlugin
extends Object
implements DefaultFeature, OpenRewriteFeature
Adds the Maven Enforcer plugin to control environmental constraints such as
Maven version, JDK version, OS family, and supports built-in and custom rules.
-
Field Summary
Fields inherited from interface io.micronaut.core.order.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription@NonNull String
@NonNull String
getName()
The name of the feature.getRecipes
(GeneratorContext generatorContext) getTitle()
boolean
Some features should not be visible to the user because they are a common parent of other selectable features, or they should always be applied, or any other reason.boolean
shouldApply
(Options options, Set<Feature> selectedFeatures) Determines if the feature should be applied to the project.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface io.micronaut.core.naming.Described
getDescription
Methods inherited from interface io.micronaut.projectgen.core.feature.Feature
getOrder, isCommunity, isPreview, processSelectedFeatures, supports
Methods inherited from interface io.micronaut.projectgen.core.openrewrite.OpenRewriteFeature
apply, getFrameworkDocumentation, getThirdPartyDocumentation, processRecipes
-
Constructor Details
-
EnforcerPlugin
public EnforcerPlugin()
-
-
Method Details
-
getName
Description copied from interface:Feature
The name of the feature. It must be unique. -
getTitle
-
isVisible
public boolean isVisible()Description copied from interface:Feature
Some features should not be visible to the user because they are a common parent of other selectable features, or they should always be applied, or any other reason. -
getDescription
- Specified by:
getDescription
in interfaceio.micronaut.core.naming.Described
- Specified by:
getDescription
in interfaceFeature
-
getCategory
- Specified by:
getCategory
in interfaceFeature
- Returns:
- The Category to which the feature belongs to.
-
getRecipes
- Specified by:
getRecipes
in interfaceOpenRewriteFeature
-
shouldApply
Description copied from interface:DefaultFeature
Determines if the feature should be applied to the project. Default features do not need to be concerned if the feature was already selected and therefore is already in the list of selected features. The addition to the set is based on the identity of the feature instance and all features are singletons.- Specified by:
shouldApply
in interfaceDefaultFeature
- Parameters:
options
- The optionsselectedFeatures
- The features manually selected by the user- Returns:
- True if the feature should apply
-