Interface InternalScopeManager

  • All Superinterfaces:
    org.eclipse.aether.scope.ScopeManager
    All Known Implementing Classes:
    ScopeManagerImpl

    public interface InternalScopeManager
    extends org.eclipse.aether.scope.ScopeManager
    Internal scope manager.
    Since:
    2.0.0
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Interface Description
      static class  InternalScopeManager.Mode
      The mode of resolution scope: eliminate (remove all occurrences) or just remove.
    • Method Summary

      All Methods Instance Methods Abstract Methods Default Methods 
      Modifier and Type Method Description
      org.eclipse.aether.scope.DependencyScope createDependencyScope​(java.lang.String id, boolean transitive, java.util.Collection<BuildScopeQuery> presence)
      Creates dependency scope instance.
      org.eclipse.aether.scope.ResolutionScope createResolutionScope​(java.lang.String id, java.util.Set<java.lang.String> aliases, InternalScopeManager.Mode mode, java.util.Collection<BuildScopeQuery> wantedPresence, java.util.Collection<org.eclipse.aether.scope.DependencyScope> explicitlyIncluded, java.util.Collection<org.eclipse.aether.scope.DependencyScope> transitivelyExcluded)
      Creates resolution scope instance with aliases.
      default org.eclipse.aether.scope.ResolutionScope createResolutionScope​(java.lang.String id, InternalScopeManager.Mode mode, java.util.Collection<BuildScopeQuery> wantedPresence, java.util.Collection<org.eclipse.aether.scope.DependencyScope> explicitlyIncluded, java.util.Collection<org.eclipse.aether.scope.DependencyScope> transitivelyExcluded)
      Creates resolution scope instance.
      org.eclipse.aether.scope.SystemDependencyScope createSystemDependencyScope​(java.lang.String id, boolean transitive, java.util.Collection<BuildScopeQuery> presence, java.lang.String systemPathProperty)
      Creates system dependency scope instance.
      java.util.Optional<BuildScope> getDependencyScopeMainProjectBuildScope​(org.eclipse.aether.scope.DependencyScope dependencyScope)
      Returns the BuildScope that this scope deem as main.
      int getDependencyScopeWidth​(org.eclipse.aether.scope.DependencyScope dependencyScope)
      The "width" of scope: is basically sum of all distinct ProjectPath and BuildPath that are in build scopes the scope is present in.
      org.eclipse.aether.collection.CollectResult postProcess​(org.eclipse.aether.RepositorySystemSession session, org.eclipse.aether.scope.ResolutionScope resolutionScope, org.eclipse.aether.collection.CollectResult collectResult)
      Resolver specific: post-processing to be used to support this scope (with its dependency and resolution scopes).
      • Methods inherited from interface org.eclipse.aether.scope.ScopeManager

        getDependencyFilter, getDependencyScope, getDependencyScopeUniverse, getDependencySelector, getId, getResolutionScope, getResolutionScopeUniverse, getSystemDependencyScope
    • Method Detail

      • getDependencyScopeWidth

        int getDependencyScopeWidth​(org.eclipse.aether.scope.DependencyScope dependencyScope)
        The "width" of scope: is basically sum of all distinct ProjectPath and BuildPath that are in build scopes the scope is present in. The more of them, the "wider" is the scope. Transitive scopes are weighted more as well.

        The ProjectPath.order() makes given path "weigh" more. So a scope being present only in "main" project path is wider than scope being present only in "test" project path.

        Interpretation: the bigger the returned integer is, the "wider" the scope is. The numbers should not serve any other purposes, merely to sort scope instances by "width" (i.e. from "widest" to "narrowest").

      • postProcess

        org.eclipse.aether.collection.CollectResult postProcess​(org.eclipse.aether.RepositorySystemSession session,
                                                                org.eclipse.aether.scope.ResolutionScope resolutionScope,
                                                                org.eclipse.aether.collection.CollectResult collectResult)
        Resolver specific: post-processing to be used to support this scope (with its dependency and resolution scopes).