Class TransitiveDependencyManager

  • All Implemented Interfaces:
    DependencyManager

    public final class TransitiveDependencyManager
    extends java.lang.Object
    implements DependencyManager
    A dependency manager managing transitive dependencies supporting transitive dependency management.
    Since:
    1.4.0
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private int depth  
      private int hashCode  
      private java.util.Map<java.lang.Object,​java.util.Collection<Exclusion>> managedExclusions  
      private java.util.Map<java.lang.Object,​java.lang.String> managedLocalPaths  
      private java.util.Map<java.lang.Object,​java.lang.Boolean> managedOptionals  
      private java.util.Map<java.lang.Object,​java.lang.String> managedScopes  
      private java.util.Map<java.lang.Object,​java.lang.String> managedVersions  
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
        TransitiveDependencyManager()
      Creates a new dependency manager without any management information.
      private TransitiveDependencyManager​(int depth, java.util.Map<java.lang.Object,​java.lang.String> managedVersions, java.util.Map<java.lang.Object,​java.lang.String> managedScopes, java.util.Map<java.lang.Object,​java.lang.Boolean> managedOptionals, java.util.Map<java.lang.Object,​java.lang.String> managedLocalPaths, java.util.Map<java.lang.Object,​java.util.Collection<Exclusion>> managedExclusions)  
    • Field Detail

      • managedVersions

        private final java.util.Map<java.lang.Object,​java.lang.String> managedVersions
      • managedScopes

        private final java.util.Map<java.lang.Object,​java.lang.String> managedScopes
      • managedOptionals

        private final java.util.Map<java.lang.Object,​java.lang.Boolean> managedOptionals
      • managedLocalPaths

        private final java.util.Map<java.lang.Object,​java.lang.String> managedLocalPaths
      • managedExclusions

        private final java.util.Map<java.lang.Object,​java.util.Collection<Exclusion>> managedExclusions
      • depth

        private final int depth
      • hashCode

        private int hashCode
    • Constructor Detail

      • TransitiveDependencyManager

        public TransitiveDependencyManager()
        Creates a new dependency manager without any management information.
      • TransitiveDependencyManager

        private TransitiveDependencyManager​(int depth,
                                            java.util.Map<java.lang.Object,​java.lang.String> managedVersions,
                                            java.util.Map<java.lang.Object,​java.lang.String> managedScopes,
                                            java.util.Map<java.lang.Object,​java.lang.Boolean> managedOptionals,
                                            java.util.Map<java.lang.Object,​java.lang.String> managedLocalPaths,
                                            java.util.Map<java.lang.Object,​java.util.Collection<Exclusion>> managedExclusions)
    • Method Detail

      • deriveChildManager

        public DependencyManager deriveChildManager​(DependencyCollectionContext context)
        Description copied from interface: DependencyManager
        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.
        Specified by:
        deriveChildManager in interface DependencyManager
        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.
      • manageDependency

        public DependencyManagement manageDependency​(Dependency dependency)
        Description copied from interface: DependencyManager
        Applies dependency management to the specified dependency.
        Specified by:
        manageDependency in interface DependencyManager
        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.
      • getKey

        private java.lang.Object getKey​(Artifact a)
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object