maven-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From hbout...@apache.org
Subject [15/51] [partial] maven-aether git commit: [MNG-6007] rename Aether to Maven Artifact Resolver
Date Sat, 03 Sep 2016 20:23:38 GMT
http://git-wip-us.apache.org/repos/asf/maven-aether/blob/27f8bd73/aether-util/src/main/java/org/eclipse/aether/util/filter/DependencyFilterUtils.java
----------------------------------------------------------------------
diff --git a/aether-util/src/main/java/org/eclipse/aether/util/filter/DependencyFilterUtils.java b/aether-util/src/main/java/org/eclipse/aether/util/filter/DependencyFilterUtils.java
deleted file mode 100644
index 887c4b1..0000000
--- a/aether-util/src/main/java/org/eclipse/aether/util/filter/DependencyFilterUtils.java
+++ /dev/null
@@ -1,199 +0,0 @@
-package org.eclipse.aether.util.filter;
-
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- * 
- *  http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.HashSet;
-
-import org.eclipse.aether.graph.DependencyFilter;
-import org.eclipse.aether.util.artifact.JavaScopes;
-
-/**
- * A utility class assisting in the creation of dependency node filters.
- */
-public final class DependencyFilterUtils
-{
-
-    private DependencyFilterUtils()
-    {
-        // hide constructor
-    }
-
-    /**
-     * Creates a new filter that negates the specified filter.
-     * 
-     * @param filter The filter to negate, must not be {@code null}.
-     * @return The new filter, never {@code null}.
-     */
-    public static DependencyFilter notFilter( DependencyFilter filter )
-    {
-        return new NotDependencyFilter( filter );
-    }
-
-    /**
-     * Creates a new filter that combines the specified filters using a logical {@code AND}. If no filters are
-     * specified, the resulting filter accepts everything.
-     * 
-     * @param filters The filters to combine, may be {@code null}.
-     * @return The new filter, never {@code null}.
-     */
-    public static DependencyFilter andFilter( DependencyFilter... filters )
-    {
-        if ( filters != null && filters.length == 1 )
-        {
-            return filters[0];
-        }
-        else
-        {
-            return new AndDependencyFilter( filters );
-        }
-    }
-
-    /**
-     * Creates a new filter that combines the specified filters using a logical {@code AND}. If no filters are
-     * specified, the resulting filter accepts everything.
-     * 
-     * @param filters The filters to combine, may be {@code null}.
-     * @return The new filter, never {@code null}.
-     */
-    public static DependencyFilter andFilter( Collection<DependencyFilter> filters )
-    {
-        if ( filters != null && filters.size() == 1 )
-        {
-            return filters.iterator().next();
-        }
-        else
-        {
-            return new AndDependencyFilter( filters );
-        }
-    }
-
-    /**
-     * Creates a new filter that combines the specified filters using a logical {@code OR}. If no filters are specified,
-     * the resulting filter accepts nothing.
-     * 
-     * @param filters The filters to combine, may be {@code null}.
-     * @return The new filter, never {@code null}.
-     */
-    public static DependencyFilter orFilter( DependencyFilter... filters )
-    {
-        if ( filters != null && filters.length == 1 )
-        {
-            return filters[0];
-        }
-        else
-        {
-            return new OrDependencyFilter( filters );
-        }
-    }
-
-    /**
-     * Creates a new filter that combines the specified filters using a logical {@code OR}. If no filters are specified,
-     * the resulting filter accepts nothing.
-     * 
-     * @param filters The filters to combine, may be {@code null}.
-     * @return The new filter, never {@code null}.
-     */
-    public static DependencyFilter orFilter( Collection<DependencyFilter> filters )
-    {
-        if ( filters != null && filters.size() == 1 )
-        {
-            return filters.iterator().next();
-        }
-        else
-        {
-            return new OrDependencyFilter( filters );
-        }
-    }
-
-    /**
-     * Creates a new filter that selects dependencies whose scope matches one or more of the specified classpath types.
-     * A classpath type is a set of scopes separated by either {@code ','} or {@code '+'}.
-     * 
-     * @param classpathTypes The classpath types, may be {@code null} or empty to match no dependency.
-     * @return The new filter, never {@code null}.
-     * @see JavaScopes
-     */
-    public static DependencyFilter classpathFilter( String... classpathTypes )
-    {
-        return classpathFilter( ( classpathTypes != null ) ? Arrays.asList( classpathTypes ) : null );
-    }
-
-    /**
-     * Creates a new filter that selects dependencies whose scope matches one or more of the specified classpath types.
-     * A classpath type is a set of scopes separated by either {@code ','} or {@code '+'}.
-     * 
-     * @param classpathTypes The classpath types, may be {@code null} or empty to match no dependency.
-     * @return The new filter, never {@code null}.
-     * @see JavaScopes
-     */
-    public static DependencyFilter classpathFilter( Collection<String> classpathTypes )
-    {
-        Collection<String> types = new HashSet<String>();
-
-        if ( classpathTypes != null )
-        {
-            for ( String classpathType : classpathTypes )
-            {
-                String[] tokens = classpathType.split( "[+,]" );
-                for ( String token : tokens )
-                {
-                    token = token.trim();
-                    if ( token.length() > 0 )
-                    {
-                        types.add( token );
-                    }
-                }
-            }
-        }
-
-        Collection<String> included = new HashSet<String>();
-        for ( String type : types )
-        {
-            if ( JavaScopes.COMPILE.equals( type ) )
-            {
-                Collections.addAll( included, JavaScopes.COMPILE, JavaScopes.PROVIDED, JavaScopes.SYSTEM );
-            }
-            else if ( JavaScopes.RUNTIME.equals( type ) )
-            {
-                Collections.addAll( included, JavaScopes.COMPILE, JavaScopes.RUNTIME );
-            }
-            else if ( JavaScopes.TEST.equals( type ) )
-            {
-                Collections.addAll( included, JavaScopes.COMPILE, JavaScopes.PROVIDED, JavaScopes.SYSTEM,
-                                    JavaScopes.RUNTIME, JavaScopes.TEST );
-            }
-            else
-            {
-                included.add( type );
-            }
-        }
-
-        Collection<String> excluded = new HashSet<String>();
-        Collections.addAll( excluded, JavaScopes.COMPILE, JavaScopes.PROVIDED, JavaScopes.SYSTEM, JavaScopes.RUNTIME,
-                            JavaScopes.TEST );
-        excluded.removeAll( included );
-
-        return new ScopeDependencyFilter( null, excluded );
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/maven-aether/blob/27f8bd73/aether-util/src/main/java/org/eclipse/aether/util/filter/ExclusionsDependencyFilter.java
----------------------------------------------------------------------
diff --git a/aether-util/src/main/java/org/eclipse/aether/util/filter/ExclusionsDependencyFilter.java b/aether-util/src/main/java/org/eclipse/aether/util/filter/ExclusionsDependencyFilter.java
deleted file mode 100644
index 2de4ae8..0000000
--- a/aether-util/src/main/java/org/eclipse/aether/util/filter/ExclusionsDependencyFilter.java
+++ /dev/null
@@ -1,106 +0,0 @@
-package org.eclipse.aether.util.filter;
-
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- * 
- *  http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import java.util.Collection;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-import org.eclipse.aether.graph.Dependency;
-import org.eclipse.aether.graph.DependencyFilter;
-import org.eclipse.aether.graph.DependencyNode;
-
-/**
- * A simple filter to exclude artifacts based on either artifact id or group id and artifact id.
- */
-public final class ExclusionsDependencyFilter
-    implements DependencyFilter
-{
-
-    private final Set<String> excludes = new HashSet<String>();
-
-    /**
-     * Creates a new filter using the specified exclude patterns. A pattern can either be of the form
-     * {@code groupId:artifactId} (recommended) or just {@code artifactId} (deprecated).
-     * 
-     * @param excludes The exclude patterns, may be {@code null} or empty to exclude no artifacts.
-     */
-    public ExclusionsDependencyFilter( Collection<String> excludes )
-    {
-        if ( excludes != null )
-        {
-            this.excludes.addAll( excludes );
-        }
-    }
-
-    public boolean accept( DependencyNode node, List<DependencyNode> parents )
-    {
-        Dependency dependency = node.getDependency();
-
-        if ( dependency == null )
-        {
-            return true;
-        }
-
-        String id = dependency.getArtifact().getArtifactId();
-
-        if ( excludes.contains( id ) )
-        {
-            return false;
-        }
-
-        id = dependency.getArtifact().getGroupId() + ':' + id;
-
-        if ( excludes.contains( id ) )
-        {
-            return false;
-        }
-
-        return true;
-    }
-
-    @Override
-    public boolean equals( Object obj )
-    {
-        if ( this == obj )
-        {
-            return true;
-        }
-
-        if ( obj == null || !getClass().equals( obj.getClass() ) )
-        {
-            return false;
-        }
-
-        ExclusionsDependencyFilter that = (ExclusionsDependencyFilter) obj;
-
-        return this.excludes.equals( that.excludes );
-    }
-
-    @Override
-    public int hashCode()
-    {
-        int hash = 17;
-        hash = hash * 31 + excludes.hashCode();
-        return hash;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/maven-aether/blob/27f8bd73/aether-util/src/main/java/org/eclipse/aether/util/filter/NotDependencyFilter.java
----------------------------------------------------------------------
diff --git a/aether-util/src/main/java/org/eclipse/aether/util/filter/NotDependencyFilter.java b/aether-util/src/main/java/org/eclipse/aether/util/filter/NotDependencyFilter.java
deleted file mode 100644
index d5fdb24..0000000
--- a/aether-util/src/main/java/org/eclipse/aether/util/filter/NotDependencyFilter.java
+++ /dev/null
@@ -1,81 +0,0 @@
-package org.eclipse.aether.util.filter;
-
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- * 
- *  http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import java.util.List;
-
-import org.eclipse.aether.graph.DependencyFilter;
-import org.eclipse.aether.graph.DependencyNode;
-
-/**
- * A dependency filter that negates another filter.
- */
-public final class NotDependencyFilter
-    implements DependencyFilter
-{
-
-    private final DependencyFilter filter;
-
-    /**
-     * Creates a new filter negatint the specified filter.
-     * 
-     * @param filter The filter to negate, must not be {@code null}.
-     */
-    public NotDependencyFilter( DependencyFilter filter )
-    {
-        if ( filter == null )
-        {
-            throw new IllegalArgumentException( "no filter specified" );
-        }
-        this.filter = filter;
-    }
-
-    public boolean accept( DependencyNode node, List<DependencyNode> parents )
-    {
-        return !filter.accept( node, parents );
-    }
-
-    @Override
-    public boolean equals( Object obj )
-    {
-        if ( this == obj )
-        {
-            return true;
-        }
-
-        if ( obj == null || !getClass().equals( obj.getClass() ) )
-        {
-            return false;
-        }
-
-        NotDependencyFilter that = (NotDependencyFilter) obj;
-
-        return this.filter.equals( that.filter );
-    }
-
-    @Override
-    public int hashCode()
-    {
-        int hash = getClass().hashCode();
-        hash = hash * 31 + filter.hashCode();
-        return hash;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/maven-aether/blob/27f8bd73/aether-util/src/main/java/org/eclipse/aether/util/filter/OrDependencyFilter.java
----------------------------------------------------------------------
diff --git a/aether-util/src/main/java/org/eclipse/aether/util/filter/OrDependencyFilter.java b/aether-util/src/main/java/org/eclipse/aether/util/filter/OrDependencyFilter.java
deleted file mode 100644
index 665f6e7..0000000
--- a/aether-util/src/main/java/org/eclipse/aether/util/filter/OrDependencyFilter.java
+++ /dev/null
@@ -1,124 +0,0 @@
-package org.eclipse.aether.util.filter;
-
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- * 
- *  http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import java.util.Collection;
-import java.util.Collections;
-import java.util.LinkedHashSet;
-import java.util.List;
-import java.util.Set;
-
-import org.eclipse.aether.graph.DependencyFilter;
-import org.eclipse.aether.graph.DependencyNode;
-
-/**
- * A dependency filter that combines zero or more other filters using a logical {@code OR}.
- */
-public final class OrDependencyFilter
-    implements DependencyFilter
-{
-
-    private final Set<DependencyFilter> filters = new LinkedHashSet<DependencyFilter>();
-
-    /**
-     * Creates a new filter from the specified filters.
-     * 
-     * @param filters The filters to combine, may be {@code null}.
-     */
-    public OrDependencyFilter( DependencyFilter... filters )
-    {
-        if ( filters != null )
-        {
-            Collections.addAll( this.filters, filters );
-        }
-    }
-
-    /**
-     * Creates a new filter from the specified filters.
-     * 
-     * @param filters The filters to combine, may be {@code null}.
-     */
-    public OrDependencyFilter( Collection<DependencyFilter> filters )
-    {
-        if ( filters != null )
-        {
-            this.filters.addAll( filters );
-        }
-    }
-
-    /**
-     * Creates a new filter from the specified filters.
-     * 
-     * @param filter1 The first filter to combine, may be {@code null}.
-     * @param filter2 The first filter to combine, may be {@code null}.
-     * @return The combined filter or {@code null} if both filter were {@code null}.
-     */
-    public static DependencyFilter newInstance( DependencyFilter filter1, DependencyFilter filter2 )
-    {
-        if ( filter1 == null )
-        {
-            return filter2;
-        }
-        else if ( filter2 == null )
-        {
-            return filter1;
-        }
-        return new OrDependencyFilter( filter1, filter2 );
-    }
-
-    public boolean accept( DependencyNode node, List<DependencyNode> parents )
-    {
-        for ( DependencyFilter filter : filters )
-        {
-            if ( filter.accept( node, parents ) )
-            {
-                return true;
-            }
-        }
-        return false;
-    }
-
-    @Override
-    public boolean equals( Object obj )
-    {
-        if ( this == obj )
-        {
-            return true;
-        }
-
-        if ( obj == null || !getClass().equals( obj.getClass() ) )
-        {
-            return false;
-        }
-
-        OrDependencyFilter that = (OrDependencyFilter) obj;
-
-        return this.filters.equals( that.filters );
-    }
-
-    @Override
-    public int hashCode()
-    {
-        int hash = getClass().hashCode();
-        hash = hash * 31 + filters.hashCode();
-        return hash;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/maven-aether/blob/27f8bd73/aether-util/src/main/java/org/eclipse/aether/util/filter/PatternExclusionsDependencyFilter.java
----------------------------------------------------------------------
diff --git a/aether-util/src/main/java/org/eclipse/aether/util/filter/PatternExclusionsDependencyFilter.java b/aether-util/src/main/java/org/eclipse/aether/util/filter/PatternExclusionsDependencyFilter.java
deleted file mode 100644
index e768614..0000000
--- a/aether-util/src/main/java/org/eclipse/aether/util/filter/PatternExclusionsDependencyFilter.java
+++ /dev/null
@@ -1,96 +0,0 @@
-package org.eclipse.aether.util.filter;
-
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- * 
- *  http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import java.util.Collection;
-
-import org.eclipse.aether.artifact.Artifact;
-import org.eclipse.aether.version.VersionScheme;
-
-/**
- * A simple filter to exclude artifacts from a list of patterns. The artifact pattern syntax is of the form:
- * 
- * <pre>
- * [groupId]:[artifactId]:[extension]:[version]
- * </pre>
- * <p>
- * Where each pattern segment is optional and supports full and partial <code>*</code> wildcards. An empty pattern
- * segment is treated as an implicit wildcard. Version can be a range in case a {@link VersionScheme} is specified.
- * </p>
- * <p>
- * For example, <code>org.eclipse.*</code> would match all artifacts whose group id started with
- * <code>org.eclipse.</code> , and <code>:::*-SNAPSHOT</code> would match all snapshot artifacts.
- * </p>
- */
-public final class PatternExclusionsDependencyFilter
-    extends AbstractPatternDependencyFilter
-{
-
-    /**
-     * Creates a new filter using the specified patterns.
-     * 
-     * @param patterns The exclude patterns, may be {@code null} or empty to exclude no artifacts.
-     */
-    public PatternExclusionsDependencyFilter( final String... patterns )
-    {
-        super( patterns );
-    }
-
-    /**
-     * Creates a new filter using the specified patterns.
-     * 
-     * @param versionScheme To be used for parsing versions/version ranges. If {@code null} and pattern specifies a
-     *            range no artifact will be excluded.
-     * @param patterns The exclude patterns, may be {@code null} or empty to exclude no artifacts.
-     */
-    public PatternExclusionsDependencyFilter( final VersionScheme versionScheme, final String... patterns )
-    {
-        super( versionScheme, patterns );
-    }
-
-    /**
-     * Creates a new filter using the specified patterns.
-     * 
-     * @param patterns The include patterns, may be {@code null} or empty to include no artifacts.
-     */
-    public PatternExclusionsDependencyFilter( final Collection<String> patterns )
-    {
-        super( patterns );
-    }
-
-    /**
-     * Creates a new filter using the specified patterns and {@link VersionScheme} .
-     * 
-     * @param versionScheme To be used for parsing versions/version ranges. If {@code null} and pattern specifies a
-     *            range no artifact will be excluded.
-     * @param patterns The exclude patterns, may be {@code null} or empty to exclude no artifacts.
-     */
-    public PatternExclusionsDependencyFilter( final VersionScheme versionScheme, final Collection<String> patterns )
-    {
-        super( versionScheme, patterns );
-    }
-
-    @Override
-    protected boolean accept( Artifact artifact )
-    {
-        return !super.accept( artifact );
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/maven-aether/blob/27f8bd73/aether-util/src/main/java/org/eclipse/aether/util/filter/PatternInclusionsDependencyFilter.java
----------------------------------------------------------------------
diff --git a/aether-util/src/main/java/org/eclipse/aether/util/filter/PatternInclusionsDependencyFilter.java b/aether-util/src/main/java/org/eclipse/aether/util/filter/PatternInclusionsDependencyFilter.java
deleted file mode 100644
index e30600b..0000000
--- a/aether-util/src/main/java/org/eclipse/aether/util/filter/PatternInclusionsDependencyFilter.java
+++ /dev/null
@@ -1,89 +0,0 @@
-package org.eclipse.aether.util.filter;
-
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- * 
- *  http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import java.util.Collection;
-
-import org.eclipse.aether.version.VersionScheme;
-
-/**
- * A simple filter to include artifacts from a list of patterns. The artifact pattern syntax is of the form:
- * 
- * <pre>
- * [groupId]:[artifactId]:[extension]:[version]
- * </pre>
- * <p>
- * Where each pattern segment is optional and supports full and partial <code>*</code> wildcards. An empty pattern
- * segment is treated as an implicit wildcard. Version can be a range in case a {@link VersionScheme} is specified.
- * </p>
- * <p>
- * For example, <code>org.eclipse.*</code> would match all artifacts whose group id started with
- * <code>org.eclipse.</code> , and <code>:::*-SNAPSHOT</code> would match all snapshot artifacts.
- * </p>
- */
-public final class PatternInclusionsDependencyFilter
-    extends AbstractPatternDependencyFilter
-{
-
-    /**
-     * Creates a new filter using the specified patterns.
-     * 
-     * @param patterns The include patterns, may be {@code null} or empty to include no artifacts.
-     */
-    public PatternInclusionsDependencyFilter( final String... patterns )
-    {
-        super( patterns );
-    }
-
-    /**
-     * Creates a new filter using the specified patterns.
-     * 
-     * @param versionScheme To be used for parsing versions/version ranges. If {@code null} and pattern specifies a
-     *            range no artifact will be included.
-     * @param patterns The include patterns, may be {@code null} or empty to include no artifacts.
-     */
-    public PatternInclusionsDependencyFilter( final VersionScheme versionScheme, final String... patterns )
-    {
-        super( versionScheme, patterns );
-    }
-
-    /**
-     * Creates a new filter using the specified patterns.
-     * 
-     * @param patterns The include patterns, may be {@code null} or empty to include no artifacts.
-     */
-    public PatternInclusionsDependencyFilter( final Collection<String> patterns )
-    {
-        super( patterns );
-    }
-
-    /**
-     * Creates a new filter using the specified patterns and {@link VersionScheme} .
-     * 
-     * @param versionScheme To be used for parsing versions/version ranges. If {@code null} and pattern specifies a
-     *            range no artifact will be included.
-     * @param patterns The include patterns, may be {@code null} or empty to include no artifacts.
-     */
-    public PatternInclusionsDependencyFilter( final VersionScheme versionScheme, final Collection<String> patterns )
-    {
-        super( versionScheme, patterns );
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/maven-aether/blob/27f8bd73/aether-util/src/main/java/org/eclipse/aether/util/filter/ScopeDependencyFilter.java
----------------------------------------------------------------------
diff --git a/aether-util/src/main/java/org/eclipse/aether/util/filter/ScopeDependencyFilter.java b/aether-util/src/main/java/org/eclipse/aether/util/filter/ScopeDependencyFilter.java
deleted file mode 100644
index bc60c41..0000000
--- a/aether-util/src/main/java/org/eclipse/aether/util/filter/ScopeDependencyFilter.java
+++ /dev/null
@@ -1,118 +0,0 @@
-package org.eclipse.aether.util.filter;
-
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- * 
- *  http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-import org.eclipse.aether.graph.Dependency;
-import org.eclipse.aether.graph.DependencyFilter;
-import org.eclipse.aether.graph.DependencyNode;
-
-/**
- * A dependency filter based on dependency scopes. <em>Note:</em> This filter does not assume any relationships between
- * the scopes. In particular, the filter is not aware of scopes that logically include other scopes.
- * 
- * @see Dependency#getScope()
- */
-public final class ScopeDependencyFilter
-    implements DependencyFilter
-{
-
-    private final Set<String> included = new HashSet<String>();
-
-    private final Set<String> excluded = new HashSet<String>();
-
-    /**
-     * Creates a new filter using the specified includes and excludes.
-     * 
-     * @param included The set of scopes to include, may be {@code null} or empty to include any scope.
-     * @param excluded The set of scopes to exclude, may be {@code null} or empty to exclude no scope.
-     */
-    public ScopeDependencyFilter( Collection<String> included, Collection<String> excluded )
-    {
-        if ( included != null )
-        {
-            this.included.addAll( included );
-        }
-        if ( excluded != null )
-        {
-            this.excluded.addAll( excluded );
-        }
-    }
-
-    /**
-     * Creates a new filter using the specified excludes.
-     * 
-     * @param excluded The set of scopes to exclude, may be {@code null} or empty to exclude no scope.
-     */
-    public ScopeDependencyFilter( String... excluded )
-    {
-        if ( excluded != null )
-        {
-            this.excluded.addAll( Arrays.asList( excluded ) );
-        }
-    }
-
-    public boolean accept( DependencyNode node, List<DependencyNode> parents )
-    {
-        Dependency dependency = node.getDependency();
-
-        if ( dependency == null )
-        {
-            return true;
-        }
-
-        String scope = node.getDependency().getScope();
-        return ( included.isEmpty() || included.contains( scope ) )
-            && ( excluded.isEmpty() || !excluded.contains( scope ) );
-    }
-
-    @Override
-    public boolean equals( Object obj )
-    {
-        if ( this == obj )
-        {
-            return true;
-        }
-
-        if ( obj == null || !getClass().equals( obj.getClass() ) )
-        {
-            return false;
-        }
-
-        ScopeDependencyFilter that = (ScopeDependencyFilter) obj;
-
-        return this.included.equals( that.included ) && this.excluded.equals( that.excluded );
-    }
-
-    @Override
-    public int hashCode()
-    {
-        int hash = 17;
-        hash = hash * 31 + included.hashCode();
-        hash = hash * 31 + excluded.hashCode();
-        return hash;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/maven-aether/blob/27f8bd73/aether-util/src/main/java/org/eclipse/aether/util/filter/package-info.java
----------------------------------------------------------------------
diff --git a/aether-util/src/main/java/org/eclipse/aether/util/filter/package-info.java b/aether-util/src/main/java/org/eclipse/aether/util/filter/package-info.java
deleted file mode 100644
index 6547d2e..0000000
--- a/aether-util/src/main/java/org/eclipse/aether/util/filter/package-info.java
+++ /dev/null
@@ -1,24 +0,0 @@
-// CHECKSTYLE_OFF: RegexpHeader
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- * 
- *  http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-/**
- * Various dependency filters for selecting nodes in a dependency graph.
- */
-package org.eclipse.aether.util.filter;
-

http://git-wip-us.apache.org/repos/asf/maven-aether/blob/27f8bd73/aether-util/src/main/java/org/eclipse/aether/util/graph/manager/ClassicDependencyManager.java
----------------------------------------------------------------------
diff --git a/aether-util/src/main/java/org/eclipse/aether/util/graph/manager/ClassicDependencyManager.java b/aether-util/src/main/java/org/eclipse/aether/util/graph/manager/ClassicDependencyManager.java
deleted file mode 100644
index fefb9fb..0000000
--- a/aether-util/src/main/java/org/eclipse/aether/util/graph/manager/ClassicDependencyManager.java
+++ /dev/null
@@ -1,327 +0,0 @@
-package org.eclipse.aether.util.graph.manager;
-
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- * 
- *  http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import java.util.Collection;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.LinkedHashSet;
-import java.util.Map;
-
-import org.eclipse.aether.artifact.Artifact;
-import org.eclipse.aether.artifact.ArtifactProperties;
-import org.eclipse.aether.collection.DependencyCollectionContext;
-import org.eclipse.aether.collection.DependencyManagement;
-import org.eclipse.aether.collection.DependencyManager;
-import org.eclipse.aether.graph.Dependency;
-import org.eclipse.aether.graph.Exclusion;
-import org.eclipse.aether.util.artifact.JavaScopes;
-
-/**
- * A dependency manager that mimics the way Maven 2.x works.
- */
-public final class ClassicDependencyManager
-    implements DependencyManager
-{
-
-    private final int depth;
-
-    private final Map<Object, String> managedVersions;
-
-    private final Map<Object, String> managedScopes;
-
-    private final Map<Object, Boolean> managedOptionals;
-
-    private final Map<Object, String> managedLocalPaths;
-
-    private final Map<Object, Collection<Exclusion>> managedExclusions;
-
-    private int hashCode;
-
-    /**
-     * Creates a new dependency manager without any management information.
-     */
-    public ClassicDependencyManager()
-    {
-        this( 0, Collections.<Object, String>emptyMap(), Collections.<Object, String>emptyMap(),
-              Collections.<Object, Boolean>emptyMap(), Collections.<Object, String>emptyMap(),
-              Collections.<Object, Collection<Exclusion>>emptyMap() );
-    }
-
-    private ClassicDependencyManager( int depth, Map<Object, String> managedVersions,
-                                      Map<Object, String> managedScopes, Map<Object, Boolean> managedOptionals,
-                                      Map<Object, String> managedLocalPaths,
-                                      Map<Object, Collection<Exclusion>> managedExclusions )
-    {
-        this.depth = depth;
-        this.managedVersions = managedVersions;
-        this.managedScopes = managedScopes;
-        this.managedOptionals = managedOptionals;
-        this.managedLocalPaths = managedLocalPaths;
-        this.managedExclusions = managedExclusions;
-    }
-
-    public DependencyManager deriveChildManager( DependencyCollectionContext context )
-    {
-        if ( depth >= 2 )
-        {
-            return this;
-        }
-        else if ( depth == 1 )
-        {
-            return new ClassicDependencyManager( depth + 1, managedVersions, managedScopes, managedOptionals,
-                                                 managedLocalPaths, managedExclusions );
-        }
-
-        Map<Object, String> managedVersions = this.managedVersions;
-        Map<Object, String> managedScopes = this.managedScopes;
-        Map<Object, Boolean> managedOptionals = this.managedOptionals;
-        Map<Object, String> managedLocalPaths = this.managedLocalPaths;
-        Map<Object, Collection<Exclusion>> managedExclusions = this.managedExclusions;
-
-        for ( Dependency managedDependency : context.getManagedDependencies() )
-        {
-            Artifact artifact = managedDependency.getArtifact();
-            Object key = getKey( artifact );
-
-            String version = artifact.getVersion();
-            if ( version.length() > 0 && !managedVersions.containsKey( key ) )
-            {
-                if ( managedVersions == this.managedVersions )
-                {
-                    managedVersions = new HashMap<Object, String>( this.managedVersions );
-                }
-                managedVersions.put( key, version );
-            }
-
-            String scope = managedDependency.getScope();
-            if ( scope.length() > 0 && !managedScopes.containsKey( key ) )
-            {
-                if ( managedScopes == this.managedScopes )
-                {
-                    managedScopes = new HashMap<Object, String>( this.managedScopes );
-                }
-                managedScopes.put( key, scope );
-            }
-
-            Boolean optional = managedDependency.getOptional();
-            if ( optional != null && !managedOptionals.containsKey( key ) )
-            {
-                if ( managedOptionals == this.managedOptionals )
-                {
-                    managedOptionals = new HashMap<Object, Boolean>( this.managedOptionals );
-                }
-                managedOptionals.put( key, optional );
-            }
-
-            String localPath = managedDependency.getArtifact().getProperty( ArtifactProperties.LOCAL_PATH, null );
-            if ( localPath != null && !managedLocalPaths.containsKey( key ) )
-            {
-                if ( managedLocalPaths == this.managedLocalPaths )
-                {
-                    managedLocalPaths = new HashMap<Object, String>( this.managedLocalPaths );
-                }
-                managedLocalPaths.put( key, localPath );
-            }
-
-            Collection<Exclusion> exclusions = managedDependency.getExclusions();
-            if ( !exclusions.isEmpty() )
-            {
-                if ( managedExclusions == this.managedExclusions )
-                {
-                    managedExclusions = new HashMap<Object, Collection<Exclusion>>( this.managedExclusions );
-                }
-                Collection<Exclusion> managed = managedExclusions.get( key );
-                if ( managed == null )
-                {
-                    managed = new LinkedHashSet<Exclusion>();
-                    managedExclusions.put( key, managed );
-                }
-                managed.addAll( exclusions );
-            }
-        }
-
-        return new ClassicDependencyManager( depth + 1, managedVersions, managedScopes, managedOptionals,
-                                             managedLocalPaths, managedExclusions );
-    }
-
-    public DependencyManagement manageDependency( Dependency dependency )
-    {
-        DependencyManagement management = null;
-
-        Object key = getKey( dependency.getArtifact() );
-
-        if ( depth >= 2 )
-        {
-            String version = managedVersions.get( key );
-            if ( version != null )
-            {
-                if ( management == null )
-                {
-                    management = new DependencyManagement();
-                }
-                management.setVersion( version );
-            }
-
-            String scope = managedScopes.get( key );
-            if ( scope != null )
-            {
-                if ( management == null )
-                {
-                    management = new DependencyManagement();
-                }
-                management.setScope( scope );
-
-                if ( !JavaScopes.SYSTEM.equals( scope )
-                    && dependency.getArtifact().getProperty( ArtifactProperties.LOCAL_PATH, null ) != null )
-                {
-                    Map<String, String> properties =
-                        new HashMap<String, String>( dependency.getArtifact().getProperties() );
-                    properties.remove( ArtifactProperties.LOCAL_PATH );
-                    management.setProperties( properties );
-                }
-            }
-
-            if ( ( scope != null && JavaScopes.SYSTEM.equals( scope ) )
-                || ( scope == null && JavaScopes.SYSTEM.equals( dependency.getScope() ) ) )
-            {
-                String localPath = managedLocalPaths.get( key );
-                if ( localPath != null )
-                {
-                    if ( management == null )
-                    {
-                        management = new DependencyManagement();
-                    }
-                    Map<String, String> properties =
-                        new HashMap<String, String>( dependency.getArtifact().getProperties() );
-                    properties.put( ArtifactProperties.LOCAL_PATH, localPath );
-                    management.setProperties( properties );
-                }
-            }
-
-            Boolean optional = managedOptionals.get( key );
-            if ( optional != null )
-            {
-                if ( management == null )
-                {
-                    management = new DependencyManagement();
-                }
-                management.setOptional( optional );
-            }
-        }
-
-        Collection<Exclusion> exclusions = managedExclusions.get( key );
-        if ( exclusions != null )
-        {
-            if ( management == null )
-            {
-                management = new DependencyManagement();
-            }
-            Collection<Exclusion> result = new LinkedHashSet<Exclusion>( dependency.getExclusions() );
-            result.addAll( exclusions );
-            management.setExclusions( result );
-        }
-
-        return management;
-    }
-
-    private Object getKey( Artifact a )
-    {
-        return new Key( a );
-    }
-
-    @Override
-    public boolean equals( Object obj )
-    {
-        if ( this == obj )
-        {
-            return true;
-        }
-        else if ( null == obj || !getClass().equals( obj.getClass() ) )
-        {
-            return false;
-        }
-
-        ClassicDependencyManager that = (ClassicDependencyManager) obj;
-        return depth == that.depth && managedVersions.equals( that.managedVersions )
-            && managedScopes.equals( that.managedScopes ) && managedOptionals.equals( that.managedOptionals )
-            && managedExclusions.equals( that.managedExclusions );
-    }
-
-    @Override
-    public int hashCode()
-    {
-        if ( hashCode == 0 )
-        {
-            int hash = 17;
-            hash = hash * 31 + depth;
-            hash = hash * 31 + managedVersions.hashCode();
-            hash = hash * 31 + managedScopes.hashCode();
-            hash = hash * 31 + managedOptionals.hashCode();
-            hash = hash * 31 + managedExclusions.hashCode();
-            hashCode = hash;
-        }
-        return hashCode;
-    }
-
-    static class Key
-    {
-
-        private final Artifact artifact;
-
-        private final int hashCode;
-
-        public Key( Artifact artifact )
-        {
-            this.artifact = artifact;
-
-            int hash = 17;
-            hash = hash * 31 + artifact.getGroupId().hashCode();
-            hash = hash * 31 + artifact.getArtifactId().hashCode();
-            hashCode = hash;
-        }
-
-        @Override
-        public boolean equals( Object obj )
-        {
-            if ( obj == this )
-            {
-                return true;
-            }
-            else if ( !( obj instanceof Key ) )
-            {
-                return false;
-            }
-            Key that = (Key) obj;
-            return artifact.getArtifactId().equals( that.artifact.getArtifactId() )
-                && artifact.getGroupId().equals( that.artifact.getGroupId() )
-                && artifact.getExtension().equals( that.artifact.getExtension() )
-                && artifact.getClassifier().equals( that.artifact.getClassifier() );
-        }
-
-        @Override
-        public int hashCode()
-        {
-            return hashCode;
-        }
-
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/maven-aether/blob/27f8bd73/aether-util/src/main/java/org/eclipse/aether/util/graph/manager/DependencyManagerUtils.java
----------------------------------------------------------------------
diff --git a/aether-util/src/main/java/org/eclipse/aether/util/graph/manager/DependencyManagerUtils.java b/aether-util/src/main/java/org/eclipse/aether/util/graph/manager/DependencyManagerUtils.java
deleted file mode 100644
index 7719096..0000000
--- a/aether-util/src/main/java/org/eclipse/aether/util/graph/manager/DependencyManagerUtils.java
+++ /dev/null
@@ -1,111 +0,0 @@
-package org.eclipse.aether.util.graph.manager;
-
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- * 
- *  http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import org.eclipse.aether.RepositorySystemSession;
-import org.eclipse.aether.graph.DependencyNode;
-
-/**
- * A utility class assisting in analyzing the effects of dependency management.
- */
-public final class DependencyManagerUtils
-{
-
-    /**
-     * The key in the repository session's {@link RepositorySystemSession#getConfigProperties() configuration
-     * properties} used to store a {@link Boolean} flag controlling the verbose mode for dependency management. If
-     * enabled, the original attributes of a dependency before its update due to dependency managemnent will be recorded
-     * in the node's {@link DependencyNode#getData() custom data} when building a dependency graph.
-     */
-    public static final String CONFIG_PROP_VERBOSE = "aether.dependencyManager.verbose";
-
-    /**
-     * The key in the dependency node's {@link DependencyNode#getData() custom data} under which the original version is
-     * stored.
-     */
-    public static final String NODE_DATA_PREMANAGED_VERSION = "premanaged.version";
-
-    /**
-     * The key in the dependency node's {@link DependencyNode#getData() custom data} under which the original scope is
-     * stored.
-     */
-    public static final String NODE_DATA_PREMANAGED_SCOPE = "premanaged.scope";
-
-    /**
-     * The key in the dependency node's {@link DependencyNode#getData() custom data} under which the original optional
-     * flag is stored.
-     */
-    public static final String NODE_DATA_PREMANAGED_OPTIONAL = "premanaged.optional";
-
-    /**
-     * Gets the version or version range of the specified dependency node before dependency management was applied (if
-     * any).
-     * 
-     * @param node The dependency node to retrieve the premanaged data for, must not be {@code null}.
-     * @return The node's dependency version before dependency management or {@code null} if the version was not managed
-     *         or if {@link #CONFIG_PROP_VERBOSE} was not enabled.
-     */
-    public static String getPremanagedVersion( DependencyNode node )
-    {
-        if ( ( node.getManagedBits() & DependencyNode.MANAGED_VERSION ) == 0 )
-        {
-            return null;
-        }
-        return cast( node.getData().get( NODE_DATA_PREMANAGED_VERSION ), String.class );
-    }
-
-    /**
-     * Gets the scope of the specified dependency node before dependency management was applied (if any).
-     * 
-     * @param node The dependency node to retrieve the premanaged data for, must not be {@code null}.
-     * @return The node's dependency scope before dependency management or {@code null} if the scope was not managed or
-     *         if {@link #CONFIG_PROP_VERBOSE} was not enabled.
-     */
-    public static String getPremanagedScope( DependencyNode node )
-    {
-        if ( ( node.getManagedBits() & DependencyNode.MANAGED_SCOPE ) == 0 )
-        {
-            return null;
-        }
-        return cast( node.getData().get( NODE_DATA_PREMANAGED_SCOPE ), String.class );
-    }
-
-    /**
-     * Gets the optional flag of the specified dependency node before dependency management was applied (if any).
-     * 
-     * @param node The dependency node to retrieve the premanaged data for, must not be {@code null}.
-     * @return The node's optional flag before dependency management or {@code null} if the flag was not managed or if
-     *         {@link #CONFIG_PROP_VERBOSE} was not enabled.
-     */
-    public static Boolean getPremanagedOptional( DependencyNode node )
-    {
-        if ( ( node.getManagedBits() & DependencyNode.MANAGED_OPTIONAL ) == 0 )
-        {
-            return null;
-        }
-        return cast( node.getData().get( NODE_DATA_PREMANAGED_OPTIONAL ), Boolean.class );
-    }
-
-    private static <T> T cast( Object obj, Class<T> type )
-    {
-        return type.isInstance( obj ) ? type.cast( obj ) : null;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/maven-aether/blob/27f8bd73/aether-util/src/main/java/org/eclipse/aether/util/graph/manager/NoopDependencyManager.java
----------------------------------------------------------------------
diff --git a/aether-util/src/main/java/org/eclipse/aether/util/graph/manager/NoopDependencyManager.java b/aether-util/src/main/java/org/eclipse/aether/util/graph/manager/NoopDependencyManager.java
deleted file mode 100644
index ae8ee40..0000000
--- a/aether-util/src/main/java/org/eclipse/aether/util/graph/manager/NoopDependencyManager.java
+++ /dev/null
@@ -1,77 +0,0 @@
-package org.eclipse.aether.util.graph.manager;
-
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- * 
- *  http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import org.eclipse.aether.collection.DependencyCollectionContext;
-import org.eclipse.aether.collection.DependencyManagement;
-import org.eclipse.aether.collection.DependencyManager;
-import org.eclipse.aether.graph.Dependency;
-
-/**
- * A dependency manager that does not do any dependency management.
- */
-public final class NoopDependencyManager
-    implements DependencyManager
-{
-
-    /**
-     * A ready-made instance of this dependency manager which can safely be reused throughout an entire application
-     * regardless of multi-threading.
-     */
-    public static final DependencyManager INSTANCE = new NoopDependencyManager();
-
-    /**
-     * Creates a new instance of this dependency manager. Usually, {@link #INSTANCE} should be used instead.
-     */
-    public NoopDependencyManager()
-    {
-    }
-
-    public DependencyManager deriveChildManager( DependencyCollectionContext context )
-    {
-        return this;
-    }
-
-    public DependencyManagement manageDependency( Dependency dependency )
-    {
-        return null;
-    }
-
-    @Override
-    public boolean equals( Object obj )
-    {
-        if ( this == obj )
-        {
-            return true;
-        }
-        else if ( null == obj || !getClass().equals( obj.getClass() ) )
-        {
-            return false;
-        }
-        return true;
-    }
-
-    @Override
-    public int hashCode()
-    {
-        return getClass().hashCode();
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/maven-aether/blob/27f8bd73/aether-util/src/main/java/org/eclipse/aether/util/graph/manager/TransitiveDependencyManager.java
----------------------------------------------------------------------
diff --git a/aether-util/src/main/java/org/eclipse/aether/util/graph/manager/TransitiveDependencyManager.java b/aether-util/src/main/java/org/eclipse/aether/util/graph/manager/TransitiveDependencyManager.java
deleted file mode 100644
index aeac09f..0000000
--- a/aether-util/src/main/java/org/eclipse/aether/util/graph/manager/TransitiveDependencyManager.java
+++ /dev/null
@@ -1,321 +0,0 @@
-package org.eclipse.aether.util.graph.manager;
-
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *  http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import java.util.Collection;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.LinkedHashSet;
-import java.util.Map;
-import org.eclipse.aether.artifact.Artifact;
-import org.eclipse.aether.artifact.ArtifactProperties;
-import org.eclipse.aether.collection.DependencyCollectionContext;
-import org.eclipse.aether.collection.DependencyManagement;
-import org.eclipse.aether.collection.DependencyManager;
-import org.eclipse.aether.graph.Dependency;
-import org.eclipse.aether.graph.Exclusion;
-import org.eclipse.aether.util.artifact.JavaScopes;
-
-/**
- * A dependency manager supporting transitive dependency management.
- *
- * @author Christian Schulte
- * @since 1.2
- */
-public final class TransitiveDependencyManager
-    implements DependencyManager
-{
-
-    private final int depth;
-
-    private final Map<Object, String> managedVersions;
-
-    private final Map<Object, String> managedScopes;
-
-    private final Map<Object, Boolean> managedOptionals;
-
-    private final Map<Object, String> managedLocalPaths;
-
-    private final Map<Object, Collection<Exclusion>> managedExclusions;
-
-    private int hashCode;
-
-    /**
-     * Creates a new dependency manager without any management information.
-     */
-    public TransitiveDependencyManager()
-    {
-        this( 0, Collections.<Object, String>emptyMap(), Collections.<Object, String>emptyMap(),
-              Collections.<Object, Boolean>emptyMap(), Collections.<Object, String>emptyMap(),
-              Collections.<Object, Collection<Exclusion>>emptyMap() );
-    }
-
-    private TransitiveDependencyManager( final int depth,
-                                         final Map<Object, String> managedVersions,
-                                         final Map<Object, String> managedScopes,
-                                         final Map<Object, Boolean> managedOptionals,
-                                         final Map<Object, String> managedLocalPaths,
-                                         final Map<Object, Collection<Exclusion>> managedExclusions )
-    {
-        super();
-        this.depth = depth;
-        this.managedVersions = managedVersions;
-        this.managedScopes = managedScopes;
-        this.managedOptionals = managedOptionals;
-        this.managedLocalPaths = managedLocalPaths;
-        this.managedExclusions = managedExclusions;
-    }
-
-    public DependencyManager deriveChildManager( final DependencyCollectionContext context )
-    {
-        Map<Object, String> versions = this.managedVersions;
-        Map<Object, String> scopes = this.managedScopes;
-        Map<Object, Boolean> optionals = this.managedOptionals;
-        Map<Object, String> localPaths = this.managedLocalPaths;
-        Map<Object, Collection<Exclusion>> exclusions = this.managedExclusions;
-
-        for ( Dependency managedDependency : context.getManagedDependencies() )
-        {
-            Artifact artifact = managedDependency.getArtifact();
-            Object key = getKey( artifact );
-
-            String version = artifact.getVersion();
-            if ( version.length() > 0 && !versions.containsKey( key ) )
-            {
-                if ( versions == this.managedVersions )
-                {
-                    versions = new HashMap<Object, String>( this.managedVersions );
-                }
-                versions.put( key, version );
-            }
-
-            String scope = managedDependency.getScope();
-            if ( scope.length() > 0 && !scopes.containsKey( key ) )
-            {
-                if ( scopes == this.managedScopes )
-                {
-                    scopes = new HashMap<Object, String>( this.managedScopes );
-                }
-                scopes.put( key, scope );
-            }
-
-            Boolean optional = managedDependency.getOptional();
-            if ( optional != null && !optionals.containsKey( key ) )
-            {
-                if ( optionals == this.managedOptionals )
-                {
-                    optionals = new HashMap<Object, Boolean>( this.managedOptionals );
-                }
-                optionals.put( key, optional );
-            }
-
-            String localPath = managedDependency.getArtifact().getProperty( ArtifactProperties.LOCAL_PATH, null );
-            if ( localPath != null && !localPaths.containsKey( key ) )
-            {
-                if ( localPaths == this.managedLocalPaths )
-                {
-                    localPaths = new HashMap<Object, String>( this.managedLocalPaths );
-                }
-                localPaths.put( key, localPath );
-            }
-
-            if ( !managedDependency.getExclusions().isEmpty() )
-            {
-                if ( exclusions == this.managedExclusions )
-                {
-                    exclusions = new HashMap<Object, Collection<Exclusion>>( this.managedExclusions );
-                }
-                Collection<Exclusion> managed = exclusions.get( key );
-                if ( managed == null )
-                {
-                    managed = new LinkedHashSet<Exclusion>();
-                    exclusions.put( key, managed );
-                }
-                managed.addAll( managedDependency.getExclusions() );
-            }
-        }
-
-        return new TransitiveDependencyManager( this.depth + 1, versions, scopes, optionals, localPaths, exclusions );
-    }
-
-    public DependencyManagement manageDependency( Dependency dependency )
-    {
-        DependencyManagement management = null;
-
-        Object key = getKey( dependency.getArtifact() );
-
-        if ( depth >= 2 )
-        {
-            String version = managedVersions.get( key );
-            if ( version != null )
-            {
-                if ( management == null )
-                {
-                    management = new DependencyManagement();
-                }
-                management.setVersion( version );
-            }
-
-            String scope = managedScopes.get( key );
-            if ( scope != null )
-            {
-                if ( management == null )
-                {
-                    management = new DependencyManagement();
-                }
-                management.setScope( scope );
-
-                if ( !JavaScopes.SYSTEM.equals( scope )
-                         && dependency.getArtifact().getProperty( ArtifactProperties.LOCAL_PATH, null ) != null )
-                {
-                    Map<String, String> properties =
-                        new HashMap<String, String>( dependency.getArtifact().getProperties() );
-                    properties.remove( ArtifactProperties.LOCAL_PATH );
-                    management.setProperties( properties );
-                }
-            }
-
-            if ( ( scope != null && JavaScopes.SYSTEM.equals( scope ) )
-                     || ( scope == null && JavaScopes.SYSTEM.equals( dependency.getScope() ) ) )
-            {
-                String localPath = managedLocalPaths.get( key );
-                if ( localPath != null )
-                {
-                    if ( management == null )
-                    {
-                        management = new DependencyManagement();
-                    }
-                    Map<String, String> properties =
-                        new HashMap<String, String>( dependency.getArtifact().getProperties() );
-                    properties.put( ArtifactProperties.LOCAL_PATH, localPath );
-                    management.setProperties( properties );
-                }
-            }
-
-            Boolean optional = managedOptionals.get( key );
-            if ( optional != null )
-            {
-                if ( management == null )
-                {
-                    management = new DependencyManagement();
-                }
-                management.setOptional( optional );
-            }
-        }
-
-        Collection<Exclusion> exclusions = managedExclusions.get( key );
-        if ( exclusions != null )
-        {
-            if ( management == null )
-            {
-                management = new DependencyManagement();
-            }
-            Collection<Exclusion> result = new LinkedHashSet<Exclusion>( dependency.getExclusions() );
-            result.addAll( exclusions );
-            management.setExclusions( result );
-        }
-
-        return management;
-    }
-
-    private Object getKey( Artifact a )
-    {
-        return new Key( a );
-    }
-
-    @Override
-    public boolean equals( final Object obj )
-    {
-        boolean equal = obj instanceof TransitiveDependencyManager;
-
-        if ( equal )
-        {
-            final TransitiveDependencyManager that = (TransitiveDependencyManager) obj;
-            return this.depth == that.depth
-                       && this.managedVersions.equals( that.managedVersions )
-                       && this.managedScopes.equals( that.managedScopes )
-                       && this.managedOptionals.equals( that.managedOptionals )
-                       && this.managedExclusions.equals( that.managedExclusions );
-
-        }
-
-        return equal;
-    }
-
-    @Override
-    public int hashCode()
-    {
-        if ( this.hashCode == 0 )
-        {
-            int hash = 17;
-            hash = hash * 31 + this.depth;
-            hash = hash * 31 + this.managedVersions.hashCode();
-            hash = hash * 31 + this.managedScopes.hashCode();
-            hash = hash * 31 + this.managedOptionals.hashCode();
-            hash = hash * 31 + this.managedExclusions.hashCode();
-            this.hashCode = hash;
-        }
-        return this.hashCode;
-    }
-
-    static class Key
-    {
-
-        private final Artifact artifact;
-
-        private final int hashCode;
-
-        public Key( final Artifact artifact )
-        {
-            this.artifact = artifact;
-
-            int hash = 17;
-            hash = hash * 31 + artifact.getGroupId().hashCode();
-            hash = hash * 31 + artifact.getArtifactId().hashCode();
-            this.hashCode = hash;
-        }
-
-        @Override
-        public boolean equals( final Object obj )
-        {
-            boolean equal = obj instanceof Key;
-
-            if ( equal )
-            {
-                final Key that = (Key) obj;
-                return this.artifact.getArtifactId().equals( that.artifact.getArtifactId() )
-                           && this.artifact.getGroupId().equals( that.artifact.getGroupId() )
-                           && this.artifact.getExtension().equals( that.artifact.getExtension() )
-                           && this.artifact.getClassifier().equals( that.artifact.getClassifier() );
-
-            }
-
-            return equal;
-        }
-
-        @Override
-        public int hashCode()
-        {
-            return this.hashCode;
-        }
-
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/maven-aether/blob/27f8bd73/aether-util/src/main/java/org/eclipse/aether/util/graph/manager/package-info.java
----------------------------------------------------------------------
diff --git a/aether-util/src/main/java/org/eclipse/aether/util/graph/manager/package-info.java b/aether-util/src/main/java/org/eclipse/aether/util/graph/manager/package-info.java
deleted file mode 100644
index 7c7ae12..0000000
--- a/aether-util/src/main/java/org/eclipse/aether/util/graph/manager/package-info.java
+++ /dev/null
@@ -1,24 +0,0 @@
-// CHECKSTYLE_OFF: RegexpHeader
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- * 
- *  http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-/**
- * Various dependency managers for building a dependency graph.
- */
-package org.eclipse.aether.util.graph.manager;
-

http://git-wip-us.apache.org/repos/asf/maven-aether/blob/27f8bd73/aether-util/src/main/java/org/eclipse/aether/util/graph/selector/AndDependencySelector.java
----------------------------------------------------------------------
diff --git a/aether-util/src/main/java/org/eclipse/aether/util/graph/selector/AndDependencySelector.java b/aether-util/src/main/java/org/eclipse/aether/util/graph/selector/AndDependencySelector.java
deleted file mode 100644
index f2a7e38..0000000
--- a/aether-util/src/main/java/org/eclipse/aether/util/graph/selector/AndDependencySelector.java
+++ /dev/null
@@ -1,206 +0,0 @@
-package org.eclipse.aether.util.graph.selector;
-
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- * 
- *  http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.LinkedHashSet;
-import java.util.Set;
-
-import org.eclipse.aether.collection.DependencyCollectionContext;
-import org.eclipse.aether.collection.DependencySelector;
-import org.eclipse.aether.graph.Dependency;
-
-/**
- * A dependency selector that combines zero or more other selectors using a logical {@code AND}. The resulting selector
- * selects a given dependency if and only if all constituent selectors do so.
- */
-public final class AndDependencySelector
-    implements DependencySelector
-{
-
-    private final Set<? extends DependencySelector> selectors;
-
-    private int hashCode;
-
-    /**
-     * Creates a new selector from the specified selectors. Prefer
-     * {@link #newInstance(DependencySelector, DependencySelector)} if any of the input selectors might be {@code null}.
-     * 
-     * @param selectors The selectors to combine, may be {@code null} but must not contain {@code null} elements.
-     */
-    public AndDependencySelector( DependencySelector... selectors )
-    {
-        if ( selectors != null && selectors.length > 0 )
-        {
-            this.selectors = new LinkedHashSet<DependencySelector>( Arrays.asList( selectors ) );
-        }
-        else
-        {
-            this.selectors = Collections.emptySet();
-        }
-    }
-
-    /**
-     * Creates a new selector from the specified selectors.
-     * 
-     * @param selectors The selectors to combine, may be {@code null} but must not contain {@code null} elements.
-     */
-    public AndDependencySelector( Collection<? extends DependencySelector> selectors )
-    {
-        if ( selectors != null && !selectors.isEmpty() )
-        {
-            this.selectors = new LinkedHashSet<DependencySelector>( selectors );
-        }
-        else
-        {
-            this.selectors = Collections.emptySet();
-        }
-    }
-
-    private AndDependencySelector( Set<DependencySelector> selectors )
-    {
-        if ( selectors != null && !selectors.isEmpty() )
-        {
-            this.selectors = selectors;
-        }
-        else
-        {
-            this.selectors = Collections.emptySet();
-        }
-    }
-
-    /**
-     * Creates a new selector from the specified selectors.
-     * 
-     * @param selector1 The first selector to combine, may be {@code null}.
-     * @param selector2 The second selector to combine, may be {@code null}.
-     * @return The combined selector or {@code null} if both selectors were {@code null}.
-     */
-    public static DependencySelector newInstance( DependencySelector selector1, DependencySelector selector2 )
-    {
-        if ( selector1 == null )
-        {
-            return selector2;
-        }
-        else if ( selector2 == null || selector2.equals( selector1 ) )
-        {
-            return selector1;
-        }
-        return new AndDependencySelector( selector1, selector2 );
-    }
-
-    public boolean selectDependency( Dependency dependency )
-    {
-        for ( DependencySelector selector : selectors )
-        {
-            if ( !selector.selectDependency( dependency ) )
-            {
-                return false;
-            }
-        }
-        return true;
-    }
-
-    public DependencySelector deriveChildSelector( DependencyCollectionContext context )
-    {
-        int seen = 0;
-        Set<DependencySelector> childSelectors = null;
-
-        for ( DependencySelector selector : selectors )
-        {
-            DependencySelector childSelector = selector.deriveChildSelector( context );
-            if ( childSelectors != null )
-            {
-                if ( childSelector != null )
-                {
-                    childSelectors.add( childSelector );
-                }
-            }
-            else if ( selector != childSelector )
-            {
-                childSelectors = new LinkedHashSet<DependencySelector>();
-                if ( seen > 0 )
-                {
-                    for ( DependencySelector s : selectors )
-                    {
-                        if ( childSelectors.size() >= seen )
-                        {
-                            break;
-                        }
-                        childSelectors.add( s );
-                    }
-                }
-                if ( childSelector != null )
-                {
-                    childSelectors.add( childSelector );
-                }
-            }
-            else
-            {
-                seen++;
-            }
-        }
-
-        if ( childSelectors == null )
-        {
-            return this;
-        }
-        if ( childSelectors.size() <= 1 )
-        {
-            if ( childSelectors.isEmpty() )
-            {
-                return null;
-            }
-            return childSelectors.iterator().next();
-        }
-        return new AndDependencySelector( childSelectors );
-    }
-
-    @Override
-    public boolean equals( Object obj )
-    {
-        if ( this == obj )
-        {
-            return true;
-        }
-        else if ( null == obj || !getClass().equals( obj.getClass() ) )
-        {
-            return false;
-        }
-
-        AndDependencySelector that = (AndDependencySelector) obj;
-        return selectors.equals( that.selectors );
-    }
-
-    @Override
-    public int hashCode()
-    {
-        if ( hashCode == 0 )
-        {
-            int hash = 17;
-            hash = hash * 31 + selectors.hashCode();
-            hashCode = hash;
-        }
-        return hashCode;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/maven-aether/blob/27f8bd73/aether-util/src/main/java/org/eclipse/aether/util/graph/selector/ExclusionDependencySelector.java
----------------------------------------------------------------------
diff --git a/aether-util/src/main/java/org/eclipse/aether/util/graph/selector/ExclusionDependencySelector.java b/aether-util/src/main/java/org/eclipse/aether/util/graph/selector/ExclusionDependencySelector.java
deleted file mode 100644
index 221cf4f..0000000
--- a/aether-util/src/main/java/org/eclipse/aether/util/graph/selector/ExclusionDependencySelector.java
+++ /dev/null
@@ -1,227 +0,0 @@
-package org.eclipse.aether.util.graph.selector;
-
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- * 
- *  http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.Comparator;
-import java.util.TreeSet;
-
-import org.eclipse.aether.artifact.Artifact;
-import org.eclipse.aether.collection.DependencyCollectionContext;
-import org.eclipse.aether.collection.DependencySelector;
-import org.eclipse.aether.graph.Dependency;
-import org.eclipse.aether.graph.Exclusion;
-
-/**
- * A dependency selector that applies exclusions based on artifact coordinates.
- * 
- * @see Dependency#getExclusions()
- */
-public final class ExclusionDependencySelector
-    implements DependencySelector
-{
-
-    // sorted and dupe-free array, faster to iterate than LinkedHashSet
-    private final Exclusion[] exclusions;
-
-    private int hashCode;
-
-    /**
-     * Creates a new selector without any exclusions.
-     */
-    public ExclusionDependencySelector()
-    {
-        this.exclusions = new Exclusion[0];
-    }
-
-    /**
-     * Creates a new selector with the specified exclusions.
-     * 
-     * @param exclusions The exclusions, may be {@code null}.
-     */
-    public ExclusionDependencySelector( Collection<Exclusion> exclusions )
-    {
-        if ( exclusions != null && !exclusions.isEmpty() )
-        {
-            TreeSet<Exclusion> sorted = new TreeSet<Exclusion>( ExclusionComparator.INSTANCE );
-            sorted.addAll( exclusions );
-            this.exclusions = sorted.toArray( new Exclusion[sorted.size()] );
-        }
-        else
-        {
-            this.exclusions = new Exclusion[0];
-        }
-    }
-
-    private ExclusionDependencySelector( Exclusion[] exclusions )
-    {
-        this.exclusions = exclusions;
-    }
-
-    public boolean selectDependency( Dependency dependency )
-    {
-        Artifact artifact = dependency.getArtifact();
-        for ( Exclusion exclusion : exclusions )
-        {
-            if ( matches( exclusion, artifact ) )
-            {
-                return false;
-            }
-        }
-        return true;
-    }
-
-    private boolean matches( Exclusion exclusion, Artifact artifact )
-    {
-        if ( !matches( exclusion.getArtifactId(), artifact.getArtifactId() ) )
-        {
-            return false;
-        }
-        if ( !matches( exclusion.getGroupId(), artifact.getGroupId() ) )
-        {
-            return false;
-        }
-        if ( !matches( exclusion.getExtension(), artifact.getExtension() ) )
-        {
-            return false;
-        }
-        if ( !matches( exclusion.getClassifier(), artifact.getClassifier() ) )
-        {
-            return false;
-        }
-        return true;
-    }
-
-    private boolean matches( String pattern, String value )
-    {
-        return "*".equals( pattern ) || pattern.equals( value );
-    }
-
-    public DependencySelector deriveChildSelector( DependencyCollectionContext context )
-    {
-        Dependency dependency = context.getDependency();
-        Collection<Exclusion> exclusions = ( dependency != null ) ? dependency.getExclusions() : null;
-        if ( exclusions == null || exclusions.isEmpty() )
-        {
-            return this;
-        }
-
-        Exclusion[] merged = this.exclusions;
-        int count = merged.length;
-        for ( Exclusion exclusion : exclusions )
-        {
-            int index = Arrays.binarySearch( merged, exclusion, ExclusionComparator.INSTANCE );
-            if ( index < 0 )
-            {
-                index = -( index + 1 );
-                if ( count >= merged.length )
-                {
-                    Exclusion[] tmp = new Exclusion[merged.length + exclusions.size()];
-                    System.arraycopy( merged, 0, tmp, 0, index );
-                    tmp[index] = exclusion;
-                    System.arraycopy( merged, index, tmp, index + 1, count - index );
-                    merged = tmp;
-                }
-                else
-                {
-                    System.arraycopy( merged, index, merged, index + 1, count - index );
-                    merged[index] = exclusion;
-                }
-                count++;
-            }
-        }
-        if ( merged == this.exclusions )
-        {
-            return this;
-        }
-        if ( merged.length != count )
-        {
-            Exclusion[] tmp = new Exclusion[count];
-            System.arraycopy( merged, 0, tmp, 0, count );
-            merged = tmp;
-        }
-
-        return new ExclusionDependencySelector( merged );
-    }
-
-    @Override
-    public boolean equals( Object obj )
-    {
-        if ( this == obj )
-        {
-            return true;
-        }
-        else if ( null == obj || !getClass().equals( obj.getClass() ) )
-        {
-            return false;
-        }
-
-        ExclusionDependencySelector that = (ExclusionDependencySelector) obj;
-        return Arrays.equals( exclusions, that.exclusions );
-    }
-
-    @Override
-    public int hashCode()
-    {
-        if ( hashCode == 0 )
-        {
-            int hash = getClass().hashCode();
-            hash = hash * 31 + Arrays.hashCode( exclusions );
-            hashCode = hash;
-        }
-        return hashCode;
-    }
-
-    private static class ExclusionComparator
-        implements Comparator<Exclusion>
-    {
-
-        static final ExclusionComparator INSTANCE = new ExclusionComparator();
-
-        public int compare( Exclusion e1, Exclusion e2 )
-        {
-            if ( e1 == null )
-            {
-                return ( e2 == null ) ? 0 : 1;
-            }
-            else if ( e2 == null )
-            {
-                return -1;
-            }
-            int rel = e1.getArtifactId().compareTo( e2.getArtifactId() );
-            if ( rel == 0 )
-            {
-                rel = e1.getGroupId().compareTo( e2.getGroupId() );
-                if ( rel == 0 )
-                {
-                    rel = e1.getExtension().compareTo( e2.getExtension() );
-                    if ( rel == 0 )
-                    {
-                        rel = e1.getClassifier().compareTo( e2.getClassifier() );
-                    }
-                }
-            }
-            return rel;
-        }
-
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/maven-aether/blob/27f8bd73/aether-util/src/main/java/org/eclipse/aether/util/graph/selector/OptionalDependencySelector.java
----------------------------------------------------------------------
diff --git a/aether-util/src/main/java/org/eclipse/aether/util/graph/selector/OptionalDependencySelector.java b/aether-util/src/main/java/org/eclipse/aether/util/graph/selector/OptionalDependencySelector.java
deleted file mode 100644
index 69bbda4..0000000
--- a/aether-util/src/main/java/org/eclipse/aether/util/graph/selector/OptionalDependencySelector.java
+++ /dev/null
@@ -1,89 +0,0 @@
-package org.eclipse.aether.util.graph.selector;
-
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- * 
- *  http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import org.eclipse.aether.collection.DependencyCollectionContext;
-import org.eclipse.aether.collection.DependencySelector;
-import org.eclipse.aether.graph.Dependency;
-
-/**
- * A dependency selector that excludes optional dependencies which occur beyond level one of the dependency graph.
- * 
- * @see Dependency#isOptional()
- */
-public final class OptionalDependencySelector
-    implements DependencySelector
-{
-
-    private final int depth;
-
-    /**
-     * Creates a new selector to exclude optional transitive dependencies.
-     */
-    public OptionalDependencySelector()
-    {
-        depth = 0;
-    }
-
-    private OptionalDependencySelector( int depth )
-    {
-        this.depth = depth;
-    }
-
-    public boolean selectDependency( Dependency dependency )
-    {
-        return depth < 2 || !dependency.isOptional();
-    }
-
-    public DependencySelector deriveChildSelector( DependencyCollectionContext context )
-    {
-        if ( depth >= 2 )
-        {
-            return this;
-        }
-
-        return new OptionalDependencySelector( depth + 1 );
-    }
-
-    @Override
-    public boolean equals( Object obj )
-    {
-        if ( this == obj )
-        {
-            return true;
-        }
-        else if ( null == obj || !getClass().equals( obj.getClass() ) )
-        {
-            return false;
-        }
-
-        OptionalDependencySelector that = (OptionalDependencySelector) obj;
-        return depth == that.depth;
-    }
-
-    @Override
-    public int hashCode()
-    {
-        int hash = getClass().hashCode();
-        hash = hash * 31 + depth;
-        return hash;
-    }
-
-}


Mime
View raw message