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
  • Constructor Details

    • KotlinSymbolProcessing

      public KotlinSymbolProcessing()
  • Method Details

    • getName

      @NonNull public @NonNull String getName()
      Description copied from interface: Feature
      The name of the feature. It must be unique.
      Specified by:
      getName in interface Feature
      Specified by:
      getName in interface io.micronaut.core.naming.Named
      Returns:
      the name of the feature
    • isPreview

      public boolean isPreview()
      Specified by:
      isPreview in interface Feature
      Returns:
      Indicates the feature is in preview status and is subject to change.
    • getTitle

      public String getTitle()
      Specified by:
      getTitle in interface Feature
      Returns:
      The title of the feature
    • getDescription

      @NonNull public @NonNull String getDescription()
      Specified by:
      getDescription in interface io.micronaut.core.naming.Described
      Specified by:
      getDescription in interface Feature
    • getFrameworkDocumentation

      public String getFrameworkDocumentation(GeneratorContext generatorContext)
      Specified by:
      getFrameworkDocumentation in interface Feature
      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

      public String getThirdPartyDocumentation(GeneratorContext generatorContext)
      Specified by:
      getThirdPartyDocumentation in interface Feature
      Specified by:
      getThirdPartyDocumentation in interface KotlinSymbolProcessingFeature
      Parameters:
      generatorContext - Generator Context
      Returns:
      Returns a link to third party. E.g. https://hazelcast.org
    • apply

      public void apply(GeneratorContext generatorContext)
      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 of DefaultFeature.shouldApply(io.micronaut.starter.options.Options, java.util.Set), or added explicitly by another feature through FeatureContext.addFeature(Feature). At this point the feature list is set and cannot change.
      Specified by:
      apply in interface Feature
      Parameters:
      generatorContext - THe generator context
    • addBuildPlugins

      public void addBuildPlugins(@NonNull @NonNull GeneratorContext generatorContext, ModuleContext moduleContext)
      Specified by:
      addBuildPlugins in interface KotlinSupportFeature
    • shouldApply

      public boolean shouldApply(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 interface DefaultFeature
      Parameters:
      options - The options
      selectedFeatures - The features manually selected by the user
      Returns:
      True if the feature should apply