Class Groovy
java.lang.Object
io.micronaut.starter.feature.lang.groovy.Groovy
- All Implemented Interfaces:
io.micronaut.core.naming.Described
,io.micronaut.core.naming.Named
,io.micronaut.core.order.Ordered
,DefaultFeature
,Feature
,LanguageFeature
-
Field Summary
Modifier and TypeFieldDescriptionprotected final List<GroovyApplicationFeature>
protected static final Dependency
protected static final Dependency
protected static final Dependency
protected final GroovyMavenPlusPlugin
static final String
Fields inherited from interface io.micronaut.core.order.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
-
Constructor Summary
ConstructorDescriptionGroovy
(List<GroovyApplicationFeature> applicationFeatures, GroovyMavenPlusPlugin groovyMavenPlusPlugin) -
Method Summary
Modifier and TypeMethodDescriptionvoid
apply
(GeneratorContext generatorContext) If this method is called for a given feature that means the feature was explicitly selected, included by default as a result ofDefaultFeature.shouldApply(ApplicationType, io.micronaut.starter.options.Options, java.util.Set)
, or added explicitly by another feature throughFeatureContext.addFeature(Feature)
.getName()
The name of the feature.boolean
isGroovy()
protected void
processSelectedFeatured
(FeatureContext featureContext, Predicate<Feature> filter) void
processSelectedFeatures
(FeatureContext featureContext) If this method is called for a given feature then that feature was explicitly selected or was included by default as a result ofDefaultFeature.shouldApply(ApplicationType, io.micronaut.starter.options.Options, java.util.Set)
.boolean
shouldApply
(ApplicationType applicationType, 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.starter.feature.DefaultFeature
getTargetFramework
Methods inherited from interface io.micronaut.core.naming.Described
getDescription
Methods inherited from interface io.micronaut.starter.feature.Feature
getCategory, getDescription, getMicronautDocumentation, getThirdPartyDocumentation, getTitle, isCommunity, isPreview
-
Field Details
-
GROUP_ID_GROOVY
- See Also:
-
DEPENDENCY_MICRONAUT_GROOVY_RUNTIME
-
DEPENDENCY_MICRONAUT_INJECT_GROOVY
-
DEPENDENCY_GROOVY
-
applicationFeatures
-
groovyMavenPlusPlugin
-
-
Constructor Details
-
Groovy
public Groovy(List<GroovyApplicationFeature> applicationFeatures, GroovyMavenPlusPlugin groovyMavenPlusPlugin)
-
-
Method Details
-
getName
Description copied from interface:Feature
The name of the feature. It must be unique. -
processSelectedFeatures
Description copied from interface:Feature
If this method is called for a given feature then that feature was explicitly selected or was included by default as a result ofDefaultFeature.shouldApply(ApplicationType, io.micronaut.starter.options.Options, java.util.Set)
. This method can be implemented to allow features to modify the list of features that will apply to the project. The methodsFeatureContext.addFeature(Feature)
andFeatureContext.exclude(FeaturePredicate)
are the primary ways to add and remove features from the context.FeatureContext.isPresent(Class)
can be used to determine the existence of other features in order to make decisions.- Specified by:
processSelectedFeatures
in interfaceFeature
- Parameters:
featureContext
- The feature context
-
processSelectedFeatured
-
apply
Description copied from interface:Feature
If this method is called for a given feature that means the feature was explicitly selected, included by default as a result ofDefaultFeature.shouldApply(ApplicationType, io.micronaut.starter.options.Options, java.util.Set)
, or added explicitly by another feature throughFeatureContext.addFeature(Feature)
. At this point the feature list is set and cannot change. This method can be implemented to modify the generated project. The feature can add templates by executingGeneratorContext.addTemplate(String, io.micronaut.starter.template.Template)
, modify configuration by modifyingGeneratorContext.getConfiguration()
orGeneratorContext.getBootstrapConfiguration()
, or modify build properties throughGeneratorContext.getBuildProperties()
. -
isGroovy
public boolean isGroovy()- Specified by:
isGroovy
in interfaceLanguageFeature
-
shouldApply
public boolean shouldApply(ApplicationType applicationType, Options options, Set<Feature> selectedFeatures) 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:
applicationType
- The application typeoptions
- The optionsselectedFeatures
- The features manually selected by the user- Returns:
- True if the feature should apply
-