Class Picocli
java.lang.Object
io.micronaut.starter.feature.picocli.Picocli
- 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.picocli.enabled",
value="true",
defaultValue="true")
@Singleton
public class Picocli
extends Object
implements DefaultFeature, OpenRewriteFeature
Core feature for enabling Picocli support in CLI applications.
Applies automatically for CLI application types and adds OpenRewrite recipe support.
-
Field Summary
Fields inherited from interface io.micronaut.core.order.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongetName()
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.boolean
This method must be implemented to ensure it is only selectable for the desired application types.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
getCategory, getOrder, isCommunity, isPreview, processSelectedFeatures
Methods inherited from interface io.micronaut.projectgen.core.openrewrite.OpenRewriteFeature
apply, getFrameworkDocumentation, getThirdPartyDocumentation, processRecipes
-
Constructor Details
-
Picocli
public Picocli()
-
-
Method Details
-
getName
Description copied from interface:Feature
The name of the feature. It must be unique. -
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. -
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
-
getTitle
-
getDescription
- Specified by:
getDescription
in interfaceio.micronaut.core.naming.Described
- Specified by:
getDescription
in interfaceFeature
-
getRecipes
- Specified by:
getRecipes
in interfaceOpenRewriteFeature
-
supports
Description copied from interface:Feature
This method must be implemented to ensure it is only selectable for the desired application types. This method is not used for determining if a default feature should be applied.
-