Class MicronautAot

java.lang.Object
io.micronaut.starter.feature.build.MicronautAot
All Implemented Interfaces:
io.micronaut.core.naming.Described, io.micronaut.core.naming.Named, io.micronaut.core.order.Ordered, DefaultFeature, Feature

@Singleton public class MicronautAot extends Object implements DefaultFeature
  • Field Details

  • Constructor Details

    • MicronautAot

      public MicronautAot()
  • Method Details

    • getCategory

      public String getCategory()
      Specified by:
      getCategory in interface Feature
      Returns:
      The Category to which the feature belongs to.
    • 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
    • getDescription

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

      @Nullable public @Nullable String getMicronautDocumentation()
      Specified by:
      getMicronautDocumentation in interface Feature
      Returns:
      Returns a link to Micronaut documentation about the feature. eg. https://micronaut-projects.github.io/micronaut-cache/latest/guide/index.html#hazelcast
    • getTitle

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

      public boolean supports(ApplicationType applicationType)
      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.
      Specified by:
      supports in interface Feature
      Parameters:
      applicationType - The application type
      Returns:
      True if the feature can be selected by the user
    • 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(ApplicationType, 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. This method can be implemented to modify the generated project. The feature can add templates by executing GeneratorContext.addTemplate(String, io.micronaut.starter.template.Template), modify configuration by modifying GeneratorContext.getConfiguration() or GeneratorContext.getBootstrapConfiguration(), or modify build properties through GeneratorContext.getBuildProperties().
      Specified by:
      apply in interface Feature
      Parameters:
      generatorContext - THe generator context
    • addAotBuildProperties

      protected void addAotBuildProperties(GeneratorContext generatorContext)
    • addAotGradlePlugin

      protected void addAotGradlePlugin(GeneratorContext generatorContext)
    • addAotConfigurationPropertiesFiles

      protected void addAotConfigurationPropertiesFiles(GeneratorContext generatorContext)
    • addAotPluginsDependencies

      protected void addAotPluginsDependencies(GeneratorContext generatorContext)
    • optimizations

      protected List<MicronautAotOptimization> optimizations(boolean graalvm, GeneratorContext generatorContext)
    • 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 interface DefaultFeature
      Parameters:
      applicationType - The application type
      options - The options
      selectedFeatures - The features manually selected by the user
      Returns:
      True if the feature should apply