Class CollectRequest

java.lang.Object
org.eclipse.aether.collection.CollectRequest

public final class CollectRequest extends Object
A request to collect the transitive dependencies and to build a dependency graph from them. There are three ways to create a dependency graph. First, only the root dependency can be given. Second, a root dependency and direct dependencies can be specified in which case the specified direct dependencies are merged with the direct dependencies retrieved from the artifact descriptor of the root dependency. And last, only direct dependencies can be specified in which case the root node of the resulting graph has no associated dependency.
See Also:
  • Field Details

  • Constructor Details

    • CollectRequest

      public CollectRequest()
      Creates an uninitialized request.
    • CollectRequest

      public CollectRequest(Dependency root, List<RemoteRepository> repositories)
      Creates a request with the specified properties.
      Parameters:
      root - The root dependency whose transitive dependencies should be collected, may be null.
      repositories - The repositories to use for the collection, may be null.
    • CollectRequest

      public CollectRequest(Dependency root, List<Dependency> dependencies, List<RemoteRepository> repositories)
      Creates a new request with the specified properties.
      Parameters:
      root - The root dependency whose transitive dependencies should be collected, may be null.
      dependencies - The direct dependencies to merge with the direct dependencies from the root dependency's artifact descriptor.
      repositories - The repositories to use for the collection, may be null.
    • CollectRequest

      public CollectRequest(List<Dependency> dependencies, List<Dependency> managedDependencies, List<RemoteRepository> repositories)
      Creates a new request with the specified properties.
      Parameters:
      dependencies - The direct dependencies of some imaginary root, may be null.
      managedDependencies - The dependency management information to apply to the transitive dependencies, may be null.
      repositories - The repositories to use for the collection, may be null.
  • Method Details

    • getRootArtifact

      public Artifact getRootArtifact()
      Gets the root artifact for the dependency graph.
      Returns:
      The root artifact for the dependency graph or null if none.
    • setRootArtifact

      public CollectRequest setRootArtifact(Artifact rootArtifact)
      Sets the root artifact for the dependency graph. This must not be confused with setRoot(Dependency): The root dependency, like any other specified dependency, will be subject to dependency collection/resolution, i.e. should have an artifact descriptor and a corresponding artifact file. The root artifact on the other hand is only used as a label for the root node of the graph in case no root dependency was specified. As such, the configured root artifact is ignored if getRoot() does not return null.
      Parameters:
      rootArtifact - The root artifact for the dependency graph, may be null.
      Returns:
      This request for chaining, never null.
    • getRoot

      public Dependency getRoot()
      Gets the root dependency of the graph.
      Returns:
      The root dependency of the graph or null if none.
    • setRoot

      public CollectRequest setRoot(Dependency root)
      Sets the root dependency of the graph.
      Parameters:
      root - The root dependency of the graph, may be null.
      Returns:
      This request for chaining, never null.
    • getDependencies

      public List<Dependency> getDependencies()
      Gets the direct dependencies.
      Returns:
      The direct dependencies, never null.
    • setDependencies

      public CollectRequest setDependencies(List<Dependency> dependencies)
      Sets the direct dependencies. If both a root dependency and direct dependencies are given in the request, the direct dependencies from the request will be merged with the direct dependencies from the root dependency's artifact descriptor, giving higher priority to the dependencies from the request.
      Parameters:
      dependencies - The direct dependencies, may be null.
      Returns:
      This request for chaining, never null.
    • addDependency

      public CollectRequest addDependency(Dependency dependency)
      Adds the specified direct dependency.
      Parameters:
      dependency - The dependency to add, may be null.
      Returns:
      This request for chaining, never null.
    • getManagedDependencies

      public List<Dependency> getManagedDependencies()
      Gets the dependency management to apply to transitive dependencies.
      Returns:
      The dependency management to apply to transitive dependencies, never null.
    • setManagedDependencies

      public CollectRequest setManagedDependencies(List<Dependency> managedDependencies)
      Sets the dependency management to apply to transitive dependencies. To clarify, this management does not apply to the direct dependencies of the root node.
      Parameters:
      managedDependencies - The dependency management, may be null.
      Returns:
      This request for chaining, never null.
    • addManagedDependency

      public CollectRequest addManagedDependency(Dependency managedDependency)
      Adds the specified managed dependency.
      Parameters:
      managedDependency - The managed dependency to add, may be null.
      Returns:
      This request for chaining, never null.
    • getRepositories

      public List<RemoteRepository> getRepositories()
      Gets the repositories to use for the collection.
      Returns:
      The repositories to use for the collection, never null.
    • setRepositories

      public CollectRequest setRepositories(List<RemoteRepository> repositories)
      Sets the repositories to use for the collection.
      Parameters:
      repositories - The repositories to use for the collection, may be null.
      Returns:
      This request for chaining, never null.
    • addRepository

      public CollectRequest addRepository(RemoteRepository repository)
      Adds the specified repository for collection.
      Parameters:
      repository - The repository to collect dependency information from, may be null.
      Returns:
      This request for chaining, never null.
    • getRequestContext

      public String getRequestContext()
      Gets the context in which this request is made.
      Returns:
      The context, never null.
    • setRequestContext

      public CollectRequest setRequestContext(String context)
      Sets the context in which this request is made.
      Parameters:
      context - The context, may be null.
      Returns:
      This request for chaining, never null.
    • getTrace

      public RequestTrace getTrace()
      Gets the trace information that describes the higher level request/operation in which this request is issued.
      Returns:
      The trace information about the higher level operation or null if none.
    • setTrace

      public CollectRequest setTrace(RequestTrace trace)
      Sets the trace information that describes the higher level request/operation in which this request is issued.
      Parameters:
      trace - The trace information about the higher level operation, may be null.
      Returns:
      This request for chaining, never null.
    • toString

      public String toString()
      Overrides:
      toString in class Object