Class BootstrapAppModelResolver

java.lang.Object
io.quarkus.bootstrap.resolver.BootstrapAppModelResolver
All Implemented Interfaces:
io.quarkus.bootstrap.resolver.AppModelResolver

public class BootstrapAppModelResolver extends Object implements io.quarkus.bootstrap.resolver.AppModelResolver
Author:
Alexey Loubyansky
  • Field Details

    • mvn

      protected final MavenArtifactResolver mvn
    • devmode

      protected boolean devmode
    • test

      protected boolean test
  • Constructor Details

  • Method Details

    • isLegacyModelResolver

      public static boolean isLegacyModelResolver(Properties projectProperties)
      Temporary method that will be removed once the legacy ApplicationModel resolver implementation gets removed.

      Returns true if the system or POM property quarkus.bootstrap.legacy-model-resolver is set to true.

      Returns:
      true if the legacy application model resolver should be used
    • setLegacyModelResolver

      public BootstrapAppModelResolver setLegacyModelResolver(boolean legacyModelResolver)
      Temporary method that will be removed once the legacy ApplicationModel resolver implementation gets removed.
      Returns:
      this application model resolver
    • setBuildTreeLogger

      public void setBuildTreeLogger(Consumer<String> buildTreeConsumer)
    • setDepLogConfig

      public void setDepLogConfig(DependencyLoggingConfig depLogConfig)
    • setDevMode

      public BootstrapAppModelResolver setDevMode(boolean devmode)
      Indicates whether application should be resolved to set up the dev mode. The important difference between the dev mode and the usual build is that in the dev mode the user application will have to be compiled, so the classpath will have to include dependencies of scope provided.
      Parameters:
      devmode - whether the resolver is going to be used to set up the dev mode
    • setTest

      public BootstrapAppModelResolver setTest(boolean test)
    • setCollectReloadableDependencies

      public BootstrapAppModelResolver setCollectReloadableDependencies(boolean collectReloadableDeps)
    • setRuntimeModelOnly

      public BootstrapAppModelResolver setRuntimeModelOnly(boolean runtimeModelOnly)
    • addRemoteRepositories

      public void addRemoteRepositories(List<org.eclipse.aether.repository.RemoteRepository> repos)
    • relink

      public void relink(io.quarkus.maven.dependency.ArtifactCoords artifact, Path path) throws io.quarkus.bootstrap.resolver.AppModelResolverException
      Specified by:
      relink in interface io.quarkus.bootstrap.resolver.AppModelResolver
      Throws:
      io.quarkus.bootstrap.resolver.AppModelResolverException
    • resolve

      public io.quarkus.maven.dependency.ResolvedDependency resolve(io.quarkus.maven.dependency.ArtifactCoords coords) throws io.quarkus.bootstrap.resolver.AppModelResolverException
      Specified by:
      resolve in interface io.quarkus.bootstrap.resolver.AppModelResolver
      Throws:
      io.quarkus.bootstrap.resolver.AppModelResolverException
    • resolveUserDependencies

      public Collection<io.quarkus.maven.dependency.ResolvedDependency> resolveUserDependencies(io.quarkus.maven.dependency.ArtifactCoords appArtifact, Collection<io.quarkus.maven.dependency.Dependency> deps) throws io.quarkus.bootstrap.resolver.AppModelResolverException
      Specified by:
      resolveUserDependencies in interface io.quarkus.bootstrap.resolver.AppModelResolver
      Throws:
      io.quarkus.bootstrap.resolver.AppModelResolverException
    • resolveModel

      public io.quarkus.bootstrap.model.ApplicationModel resolveModel(io.quarkus.maven.dependency.ArtifactCoords appArtifact) throws io.quarkus.bootstrap.resolver.AppModelResolverException
      Specified by:
      resolveModel in interface io.quarkus.bootstrap.resolver.AppModelResolver
      Throws:
      io.quarkus.bootstrap.resolver.AppModelResolverException
    • resolveModel

      public io.quarkus.bootstrap.model.ApplicationModel resolveModel(io.quarkus.maven.dependency.ArtifactCoords appArtifact, Collection<io.quarkus.maven.dependency.Dependency> directDeps) throws io.quarkus.bootstrap.resolver.AppModelResolverException
      Specified by:
      resolveModel in interface io.quarkus.bootstrap.resolver.AppModelResolver
      Throws:
      io.quarkus.bootstrap.resolver.AppModelResolverException
    • resolveManagedModel

      public io.quarkus.bootstrap.model.ApplicationModel resolveManagedModel(io.quarkus.maven.dependency.ArtifactCoords appArtifact, Collection<io.quarkus.maven.dependency.Dependency> directDeps, io.quarkus.maven.dependency.ArtifactCoords managingProject, Set<io.quarkus.maven.dependency.ArtifactKey> reloadableModules) throws io.quarkus.bootstrap.resolver.AppModelResolverException
      Specified by:
      resolveManagedModel in interface io.quarkus.bootstrap.resolver.AppModelResolver
      Throws:
      io.quarkus.bootstrap.resolver.AppModelResolverException
    • resolveModel

      public io.quarkus.bootstrap.model.ApplicationModel resolveModel(io.quarkus.bootstrap.workspace.WorkspaceModule module) throws io.quarkus.bootstrap.resolver.AppModelResolverException
      Resolve application mode for the main application module that might not have a POM file on disk.
      Parameters:
      module - main application module
      Returns:
      resolved application model
      Throws:
      io.quarkus.bootstrap.resolver.AppModelResolverException - in case application model could not be resolved
    • listLaterVersions

      public List<String> listLaterVersions(io.quarkus.maven.dependency.ArtifactCoords appArtifact, String upToVersion, boolean inclusive) throws io.quarkus.bootstrap.resolver.AppModelResolverException
      Specified by:
      listLaterVersions in interface io.quarkus.bootstrap.resolver.AppModelResolver
      Throws:
      io.quarkus.bootstrap.resolver.AppModelResolverException
    • getNextVersion

      public String getNextVersion(io.quarkus.maven.dependency.ArtifactCoords appArtifact, String fromVersion, boolean fromVersionIncluded, String upToVersion, boolean upToVersionInclusive) throws io.quarkus.bootstrap.resolver.AppModelResolverException
      Specified by:
      getNextVersion in interface io.quarkus.bootstrap.resolver.AppModelResolver
      Throws:
      io.quarkus.bootstrap.resolver.AppModelResolverException
    • getLatestVersion

      public String getLatestVersion(io.quarkus.maven.dependency.ArtifactCoords appArtifact, String upToVersion, boolean inclusive) throws io.quarkus.bootstrap.resolver.AppModelResolverException
      Specified by:
      getLatestVersion in interface io.quarkus.bootstrap.resolver.AppModelResolver
      Throws:
      io.quarkus.bootstrap.resolver.AppModelResolverException
    • getLatestVersionFromRange

      public String getLatestVersionFromRange(io.quarkus.maven.dependency.ArtifactCoords appArtifact, String range) throws io.quarkus.bootstrap.resolver.AppModelResolverException
      Specified by:
      getLatestVersionFromRange in interface io.quarkus.bootstrap.resolver.AppModelResolver
      Throws:
      io.quarkus.bootstrap.resolver.AppModelResolverException
    • resolveArtifactRepos

      public List<org.eclipse.aether.repository.RemoteRepository> resolveArtifactRepos(io.quarkus.maven.dependency.ArtifactCoords appArtifact) throws io.quarkus.bootstrap.resolver.AppModelResolverException
      Throws:
      io.quarkus.bootstrap.resolver.AppModelResolverException
    • install

      public void install(io.quarkus.maven.dependency.ArtifactCoords artifact, Path localPath) throws io.quarkus.bootstrap.resolver.AppModelResolverException
      Throws:
      io.quarkus.bootstrap.resolver.AppModelResolverException