Package: org.codehaus.groovy.grails.resolve.maven.aether

## [Groovy] Class AetherDependencyManager

- org.codehaus.groovy.grails.resolve.maven.aether.AetherDependencyManager

- All Implemented Interfaces and Traits:
    DependencyManager

      @groovy.transform.CompileStatic
      class AetherDependencyManager

  An implementation of the DependencyManager interface that uses Aether, the dependency resolution engine used by Maven.

  Authors:
    Graeme Rocher
  Since:
    2.3

- - ### Field Summary

    Fields
    Modifiers | Name | Description
    --- | --- | ---
    `protected java.util.List<org.eclipse.aether.graph.Dependency>` | `buildDependencies` |
    `protected java.util.List<org.eclipse.aether.graph.Dependency>` | `dependencies` |
    `protected java.util.List<Dependency>` | `grailsDependencies` |
    `protected java.util.Map<java.lang.String, java.util.List<Dependency>>` | `grailsDependenciesByScope` |
    `protected java.util.Set<Dependency>` | `grailsPluginDependencies` |
    `protected java.util.Map<java.lang.String, java.util.List<Dependency>>` | `grailsPluginDependenciesByScope` |
    `protected org.eclipse.aether.graph.Dependency` | `jvmAgent` |
    `protected DependencyReport` | `jvmAgentReport` |
    `protected java.util.List<org.eclipse.aether.graph.Dependency>` | `managedDependencies` |
    `protected java.util.List<org.eclipse.aether.repository.RemoteRepository>` | `repositories` |

  - ### Properties Summary

    Properties
    Type | Name and description
    --- | ---
    `static java.lang.String` | `DEFAULT_CACHE`
    `static java.util.Map<java.lang.String, java.util.List<java.lang.String>>` | `SCOPE_MAPPINGS`
    `java.lang.String` | `basedir`
    `java.lang.String` | `cacheDir`
    `java.lang.String` | `checksumPolicy`
    `GrailsCoreDependencies` | `coreDependencies`
    `boolean` | `defaultDependenciesProvided`
    `org.eclipse.aether.util.graph.selector.ExclusionDependencySelector` | `exclusionDependencySelector`
    `boolean` | `includeJavadoc` Whether to include the javadoc
    `boolean` | `includeSource` Whether to include the source
    `java.util.Map<java.lang.String, groovy.lang.Closure>` | `inheritedDependencies`
    `boolean` | `java5compatible`
    `GrailsConsoleLoggerManager` | `loggerManager`
    `boolean` | `offline`
    `boolean` | `readPom`
    `org.apache.maven.settings.Settings` | `settings`

  - ### Constructor Summary

    Constructors
    Constructor and description
    `AetherDependencyManager ()`

  - ### Methods Summary

    Methods
    Type | Name and description
    --- | ---
    `protected void` | `addAttachments(org.eclipse.aether.graph.DependencyNode root, java.lang.String classifier)`
    `void` | `addBuildDependency(Dependency dependency, org.eclipse.aether.util.graph.selector.ExclusionDependencySelector exclusionDependencySelector = null)`
    `void` | `addBuildDependency(org.eclipse.aether.graph.Dependency dependency, DependencyConfiguration configuration = null)`
    `void` | `addDependency(org.eclipse.aether.graph.Dependency dependency, DependencyConfiguration configuration = null)`
    `void` | `addDependency(Dependency dependency, java.lang.String scope, org.eclipse.aether.util.graph.selector.ExclusionDependencySelector exclusionDependencySelector = null)`
    `void` | `addManagedDependency(org.eclipse.aether.graph.Dependency dependency)` Adds a dependency to be used for dependency management.
    `java.net.Proxy` | `addProxy(java.lang.String proxyHost, java.lang.String proxyPort, java.lang.String proxyUser, java.lang.String proxyPass, java.lang.String nonProxyHosts)`
    `protected org.eclipse.aether.graph.DependencyNode` | `collectDependencies(java.lang.String scope)`
    `DependencyManager` | `createCopy(BuildSettings buildSettings = null)`
    `protected Dependency` | `createGrailsDependency(org.eclipse.aether.graph.Dependency dependency, DependencyConfiguration configuration = null)`
    `groovy.util.slurpersupport.GPathResult` | `downloadPluginInfo(java.lang.String pluginName, java.lang.String pluginVersion)`
    `groovy.util.slurpersupport.GPathResult` | `downloadPluginList(java.io.File localFile)` Produces a report printed to System.out of the dependency graph
    `java.util.Collection<Dependency>` | `getAllDependencies()`
    `java.util.Collection<Dependency>` | `getAllDependencies(java.lang.String scope)`
    `java.util.Collection<Dependency>` | `getApplicationDependencies()`
    `java.util.Collection<Dependency>` | `getApplicationDependencies(java.lang.String scope)`
    `ExcludeResolver` | `getExcludeResolver()`
    `java.util.Collection<Dependency>` | `getPluginDependencies()`
    `java.util.Collection<Dependency>` | `getPluginDependencies(java.lang.String scope)`
    `java.util.List<org.eclipse.aether.repository.RemoteRepository>` | `getRepositories()`
    `org.eclipse.aether.RepositorySystemSession` | `getSession()`
    `protected void` | `includeJavadocAndSourceIfNecessary(java.util.List<org.eclipse.aether.graph.Dependency> aetherDependencies, org.eclipse.aether.graph.Dependency dependency)`
    `protected boolean` | `isGrailsPlugin(Dependency dependency)`
    `protected void` | `manageDependencies(org.eclipse.aether.collection.CollectRequest collectRequest)`
    `void` | `parseDependencies(groovy.lang.Closure callable)` Parse the dependency definition DSL
    `void` | `produceReport(java.lang.String scope)`
    `void` | `produceReport()`
    `protected void` | `reportOnScope(java.lang.String scope, java.lang.String desc)`
    `DependencyReport` | `resolve(java.lang.String scope = "runtime")` Resolve dependencies for the given scope
    `DependencyReport` | `resolveAgent()`
    `DependencyReport` | `resolveDependency(Dependency dependency)`
    `AetherGraphNode` | `resolveToGraphNode(java.lang.String scope)`
    `protected AetherGraphNode` | `resolveToGraphNode(org.eclipse.aether.graph.DependencyNode root, java.lang.String scope)`
    `protected org.eclipse.aether.resolution.DependencyResult` | `resolveToResult(org.eclipse.aether.graph.DependencyNode node, java.lang.String scope)`
    `void` | `setJvmAgent(org.eclipse.aether.graph.Dependency jvmAgent)`
    `void` | `setRepositories(java.util.List<org.eclipse.aether.repository.RemoteRepository> repositories)`
    `void` | `setSettings(org.apache.maven.settings.Settings settings)`

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `class java.lang.Object` | `java.lang.Object#wait(long, int), java.lang.Object#wait(long), java.lang.Object#wait(), java.lang.Object#equals(java.lang.Object), java.lang.Object#toString(), java.lang.Object#hashCode(), java.lang.Object#getClass(), java.lang.Object#notify(), java.lang.Object#notifyAll()`

- - ### Field Detail

    - #### protected java.util.List<org.eclipse.aether.graph.Dependency> buildDependencies

    - #### protected java.util.List<org.eclipse.aether.graph.Dependency> dependencies

    - #### protected java.util.List<Dependency> grailsDependencies

    - #### protected java.util.Map<java.lang.String, java.util.List<Dependency>> grailsDependenciesByScope

    - #### protected java.util.Set<Dependency> grailsPluginDependencies

    - #### protected java.util.Map<java.lang.String, java.util.List<Dependency>> grailsPluginDependenciesByScope

    - #### protected org.eclipse.aether.graph.Dependency jvmAgent

    - #### protected DependencyReport jvmAgentReport

    - #### protected java.util.List<org.eclipse.aether.graph.Dependency> managedDependencies

    - #### protected java.util.List<org.eclipse.aether.repository.RemoteRepository> repositories

  - ### Property Detail

    - #### static final java.lang.String DEFAULT_CACHE

    - #### static final java.util.Map<java.lang.String, java.util.List<java.lang.String>> SCOPE_MAPPINGS

    - #### java.lang.String basedir

    - #### java.lang.String cacheDir

    - #### java.lang.String checksumPolicy

    - #### GrailsCoreDependencies coreDependencies

    - #### boolean defaultDependenciesProvided

    - #### org.eclipse.aether.util.graph.selector.ExclusionDependencySelector exclusionDependencySelector

    - #### boolean includeJavadoc

      Whether to include the javadoc

    - #### boolean includeSource

      Whether to include the source

    - #### java.util.Map<java.lang.String, groovy.lang.Closure> inheritedDependencies

    - #### boolean java5compatible

    - #### GrailsConsoleLoggerManager loggerManager

    - #### boolean offline

    - #### boolean readPom

    - #### org.apache.maven.settings.Settings settings

  - ### Constructor Detail

    - #### AetherDependencyManager()

  - ### Method Detail

    - #### protected void addAttachments(org.eclipse.aether.graph.DependencyNode root, java.lang.String classifier)

    - #### void addBuildDependency(Dependency dependency, org.eclipse.aether.util.graph.selector.ExclusionDependencySelector exclusionDependencySelector = null)

    - #### void addBuildDependency(org.eclipse.aether.graph.Dependency dependency, DependencyConfiguration configuration = null)

    - #### void addDependency(org.eclipse.aether.graph.Dependency dependency, DependencyConfiguration configuration = null)

    - #### void addDependency(Dependency dependency, java.lang.String scope, org.eclipse.aether.util.graph.selector.ExclusionDependencySelector exclusionDependencySelector = null)

    - #### void addManagedDependency(org.eclipse.aether.graph.Dependency dependency)

      Adds a dependency to be used for dependency management. See http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html#Dependency_Management

      Parameters:
        `dependency` - The dependency to add
        `configuration` - The configuration

    - #### java.net.Proxy addProxy(java.lang.String proxyHost, java.lang.String proxyPort, java.lang.String proxyUser, java.lang.String proxyPass, java.lang.String nonProxyHosts)

    - #### protected org.eclipse.aether.graph.DependencyNode collectDependencies(java.lang.String scope)

    - #### DependencyManager createCopy(BuildSettings buildSettings = null)

    - #### protected Dependency createGrailsDependency(org.eclipse.aether.graph.Dependency dependency, DependencyConfiguration configuration = null)

    - #### @java.lang.Override @groovy.transform.CompileStatic(TypeCheckingMode.SKIP) groovy.util.slurpersupport.GPathResult downloadPluginInfo(java.lang.String pluginName, java.lang.String pluginVersion)

    - #### groovy.util.slurpersupport.GPathResult downloadPluginList(java.io.File localFile)

      Produces a report printed to System.out of the dependency graph

    - #### @java.lang.Override java.util.Collection<Dependency> getAllDependencies()

    - #### @java.lang.Override java.util.Collection<Dependency> getAllDependencies(java.lang.String scope)

    - #### @java.lang.Override @groovy.transform.CompileStatic(TypeCheckingMode.SKIP) java.util.Collection<Dependency> getApplicationDependencies()

    - #### @java.lang.Override @groovy.transform.CompileStatic(TypeCheckingMode.SKIP) java.util.Collection<Dependency> getApplicationDependencies(java.lang.String scope)

    - #### @java.lang.Override ExcludeResolver getExcludeResolver()

    - #### @java.lang.Override java.util.Collection<Dependency> getPluginDependencies()

    - #### java.util.Collection<Dependency> getPluginDependencies(java.lang.String scope)

    - #### java.util.List<org.eclipse.aether.repository.RemoteRepository> getRepositories()

    - #### org.eclipse.aether.RepositorySystemSession getSession()

    - #### protected void includeJavadocAndSourceIfNecessary(java.util.List<org.eclipse.aether.graph.Dependency> aetherDependencies, org.eclipse.aether.graph.Dependency dependency)

    - #### protected boolean isGrailsPlugin(Dependency dependency)

    - #### protected void manageDependencies(org.eclipse.aether.collection.CollectRequest collectRequest)

    - #### void parseDependencies(@groovy.lang.DelegatesTo(AetherDsl) groovy.lang.Closure callable)

      Parse the dependency definition DSL

      Parameters:
        `callable` - The DSL definition

    - #### void produceReport(java.lang.String scope)

    - #### void produceReport()

    - #### protected void reportOnScope(java.lang.String scope, java.lang.String desc)

    - #### DependencyReport resolve(java.lang.String scope = "runtime")

      Resolve dependencies for the given scope

      Parameters:
        `scope` - The scope (defaults to 'runtime')
      Returns:
        A DependencyReport instance

    - #### @java.lang.Override DependencyReport resolveAgent()

    - #### @java.lang.Override DependencyReport resolveDependency(Dependency dependency)

    - #### AetherGraphNode resolveToGraphNode(java.lang.String scope)

    - #### protected AetherGraphNode resolveToGraphNode(org.eclipse.aether.graph.DependencyNode root, java.lang.String scope)

    - #### protected org.eclipse.aether.resolution.DependencyResult resolveToResult(org.eclipse.aether.graph.DependencyNode node, java.lang.String scope)

    - #### void setJvmAgent(org.eclipse.aether.graph.Dependency jvmAgent)

    - #### void setRepositories(java.util.List<org.eclipse.aether.repository.RemoteRepository> repositories)

    - #### void setSettings(org.apache.maven.settings.Settings settings)