Package io.micronaut.starter.feature
Class KotlinSymbolProcessing
java.lang.Object
io.micronaut.starter.feature.KotlinSymbolProcessing
- All Implemented Interfaces:
io.micronaut.core.naming.Described,io.micronaut.core.naming.Named,io.micronaut.core.order.Ordered,GradleSpecificFeature,DefaultFeature,Feature,KotlinSymbolProcessingFeature,OneOfFeature,KotlinSupportFeature
@Requires(property="micronaut.starter.feature.ksp.enabled",
value="true",
defaultValue="true")
@Singleton
public class KotlinSymbolProcessing
extends Object
implements KotlinSupportFeature, DefaultFeature, GradleSpecificFeature, KotlinSymbolProcessingFeature
Feature that adds support for Kotlin Symbol Processing (KSP) in Micronaut applications.
This feature is intended for Kotlin projects using Gradle and enables compile-time code processing.
-
Field Summary
Fields inherited from interface io.micronaut.starter.feature.buildtools.KotlinSupportFeature
JDK_21_KAPT_MODULESFields inherited from interface io.micronaut.core.order.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddBuildPlugins(@NonNull GeneratorContext generatorContext, ModuleContext moduleContext) voidapply(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(io.micronaut.starter.options.Options, java.util.Set), or added explicitly by another feature throughFeatureContext.addFeature(Feature).@NonNull StringgetFrameworkDocumentation(GeneratorContext generatorContext) @NonNull StringgetName()The name of the feature.getThirdPartyDocumentation(GeneratorContext generatorContext) getTitle()booleanbooleanshouldApply(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, waitMethods inherited from interface io.micronaut.core.naming.Described
getDescriptionMethods inherited from interface io.micronaut.projectgen.core.feature.Feature
getOrder, isCommunity, isVisible, processSelectedFeatures, supportsMethods inherited from interface io.micronaut.starter.feature.buildtools.KotlinSupportFeature
getCategory, getFeatureClass
-
Constructor Details
-
KotlinSymbolProcessing
public KotlinSymbolProcessing()
-
-
Method Details
-
getName
Description copied from interface:FeatureThe name of the feature. It must be unique. -
isPreview
public boolean isPreview() -
getTitle
-
getDescription
- Specified by:
getDescriptionin interfaceio.micronaut.core.naming.Described- Specified by:
getDescriptionin interfaceFeature
-
getFrameworkDocumentation
- Specified by:
getFrameworkDocumentationin interfaceFeature- Parameters:
generatorContext- Generator Context- Returns:
- Returns a link to Framework documentation about the feature. eg. https://micronaut-projects.github.io/micronaut-cache/latest/guide/index.html#hazelcast
-
getThirdPartyDocumentation
- Specified by:
getThirdPartyDocumentationin interfaceFeature- Specified by:
getThirdPartyDocumentationin interfaceKotlinSymbolProcessingFeature- Parameters:
generatorContext- Generator Context- Returns:
- Returns a link to third party. E.g. https://hazelcast.org
-
apply
Description copied from interface:FeatureIf this method is called for a given feature that means the feature was explicitly selected, included by default as a result ofDefaultFeature.shouldApply(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. -
addBuildPlugins
public void addBuildPlugins(@NonNull @NonNull GeneratorContext generatorContext, ModuleContext moduleContext) - Specified by:
addBuildPluginsin interfaceKotlinSupportFeature
-
shouldApply
Description copied from interface:DefaultFeatureDetermines 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:
shouldApplyin interfaceDefaultFeature- Parameters:
options- The optionsselectedFeatures- The features manually selected by the user- Returns:
- True if the feature should apply
-