Class AppModelProviderBuildItem

java.lang.Object
io.quarkus.builder.item.BuildItem
io.quarkus.builder.item.SimpleBuildItem
io.quarkus.deployment.builditem.AppModelProviderBuildItem

public final class AppModelProviderBuildItem extends io.quarkus.builder.item.SimpleBuildItem
A build item used to provide a application dependency model.
See Also:
  • ApplicationModel
  • Constructor Details

    • AppModelProviderBuildItem

      public AppModelProviderBuildItem(io.quarkus.bootstrap.model.ApplicationModel appModel)
    • AppModelProviderBuildItem

      public AppModelProviderBuildItem(io.quarkus.bootstrap.model.ApplicationModel appModel, Supplier<io.quarkus.bootstrap.app.DependencyInfoProvider> depInfoProvider)
  • Method Details

    • validateAndGet

      public io.quarkus.bootstrap.model.ApplicationModel validateAndGet(BootstrapConfig config)
      Validates the platform imports in the application model against the provided bootstrap configuration. The behavior in case of misalignment depends on the provided BootstrapConfig.misalignedPlatformImports():
      • ERROR: Throws a RuntimeException.
      • WARN: Logs a warning.
      • IGNORE: Skips validation entirely.

      Additionally validates that the Quarkus core version used by the application satisfies the requires-quarkus-version range declared in the META-INF/quarkus-extension.properties descriptor of each extension present in the application model. The behavior in case of an incompatible extension depends on the provided BootstrapConfig.incompatibleExtensions() in the same way as described above.

      Parameters:
      config - the bootstrap configuration
      Returns:
      the validated application model
      Throws:
      RuntimeException - if platform imports are misaligned and the configuration is set to ERROR or if the configuration is unrecognized.
    • validateExtensionCompatibility

      void validateExtensionCompatibility(BootstrapConfig.IncompatibleExtensions action, String quarkusCoreVersion)
    • getDependencyInfoProvider

      public Supplier<io.quarkus.bootstrap.app.DependencyInfoProvider> getDependencyInfoProvider()