org.eclipse.aether.collection

## Interface DependencyManager

- All Known Implementing Classes:
    ClassicDependencyManager, NoopDependencyManager

      public interface DependencyManager

  Applies dependency management to the dependencies of a dependency node.

  Note: Implementations must be stateless.

  Warning: This hook is called from a hot spot and therefore implementations should pay attention to performance. Among others, implementations should provide a semantic `equals()` method.

  See Also:
    `RepositorySystemSession.getDependencyManager()`, `RepositorySystem.collectDependencies(org.eclipse.aether.RepositorySystemSession, CollectRequest)`

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `DependencyManager` | `deriveChildManager(DependencyCollectionContext context)` Derives a dependency manager for the specified collection context.
    `DependencyManagement` | `manageDependency(Dependency dependency)` Applies dependency management to the specified dependency.

- - ### Method Detail

    - #### manageDependency

          DependencyManagement manageDependency(Dependency dependency)

      Applies dependency management to the specified dependency.
      Parameters:
        `dependency` - The dependency to manage, must not be `null`.
      Returns:
        The management update to apply to the dependency or `null` if the dependency is not managed at all.

    - #### deriveChildManager

          DependencyManager deriveChildManager(DependencyCollectionContext context)

      Derives a dependency manager for the specified collection context. When calculating the child manager, implementors are strongly advised to simply return the current instance if nothing changed to help save memory.
      Parameters:
        `context` - The dependency collection context, must not be `null`.
      Returns:
        The dependency manager for the dependencies of the target node or `null` if dependency management should no longer be applied.

Copyright © 2010-2014 The Eclipse Foundation. All Rights Reserved.