This is an automated email from the ASF dual-hosted git repository.

tibordigana pushed a commit to branch pre-MRESOLVER-92
in repository https://gitbox.apache.org/repos/asf/maven-resolver.git


The following commit(s) were added to refs/heads/pre-MRESOLVER-92 by this push:
     new b2fcca9  solved DataPool
b2fcca9 is described below

commit b2fcca96b27123690770ed44659afa7a303c15fa
Author: tibordigana <tibordig...@apache.org>
AuthorDate: Sun Aug 11 14:57:29 2019 +0200

    solved DataPool
---
 .../aether/internal/impl/collect/DataPool.java     | 112 +++++++++------------
 .../aether/internal/impl/collect/DataPoolTest.java |  19 ++--
 2 files changed, 54 insertions(+), 77 deletions(-)

diff --git 
a/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/collect/DataPool.java
 
b/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/collect/DataPool.java
index 10e9ab6..41b5703 100644
--- 
a/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/collect/DataPool.java
+++ 
b/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/collect/DataPool.java
@@ -19,16 +19,13 @@ package org.eclipse.aether.internal.impl.collect;
  * under the License.
  */
 
+import java.util.Collection;
 import java.util.Collections;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 import java.util.Objects;
 import java.util.WeakHashMap;
-import java.util.concurrent.ExecutionException;
-import java.util.concurrent.Future;
-import java.util.concurrent.TimeUnit;
-import java.util.concurrent.TimeoutException;
 
 import org.eclipse.aether.RepositoryCache;
 import org.eclipse.aether.RepositorySystemSession;
@@ -46,7 +43,6 @@ import 
org.eclipse.aether.resolution.ArtifactDescriptorRequest;
 import org.eclipse.aether.resolution.ArtifactDescriptorResult;
 import org.eclipse.aether.resolution.VersionRangeRequest;
 import org.eclipse.aether.resolution.VersionRangeResult;
-import org.eclipse.aether.util.concurrency.FutureResult;
 import org.eclipse.aether.version.Version;
 import org.eclipse.aether.version.VersionConstraint;
 
@@ -61,8 +57,8 @@ final class DataPool
 
     private static final String DESCRIPTORS = DataPool.class.getName() + 
"$Descriptors";
 
-    public static final Future<ArtifactDescriptorResult> NO_DESCRIPTOR =
-        new FutureResult<>( new ArtifactDescriptorResult( new 
ArtifactDescriptorRequest() ) );
+    static final ArtifactDescriptorResult NO_DESCRIPTOR =
+        new ArtifactDescriptorResult( new ArtifactDescriptorRequest() );
 
     private ObjectPool<Artifact> artifacts;
 
@@ -124,12 +120,12 @@ final class DataPool
         return dependencies.intern( dependency );
     }
 
-    public Object toKey( ArtifactDescriptorRequest request )
+    Object toKey( ArtifactDescriptorRequest request )
     {
         return request.getArtifact();
     }
 
-    public Future<ArtifactDescriptorResult> getDescriptor( Object key, 
ArtifactDescriptorRequest request )
+    ArtifactDescriptorResult getDescriptor( Object key, 
ArtifactDescriptorRequest request )
     {
         Descriptor descriptor = descriptors.get( key );
         if ( descriptor != null )
@@ -139,22 +135,22 @@ final class DataPool
         return null;
     }
 
-    public void putDescriptor( Object key, Future<ArtifactDescriptorResult> 
futureResult )
+    void putDescriptor( Object key, ArtifactDescriptorResult result )
     {
-        descriptors.put( key, new GoodDescriptor( futureResult ) );
+        descriptors.put( key, new GoodDescriptor( result ) );
     }
 
-    public void putDescriptor( Object key, ArtifactDescriptorException 
exception )
+    void putDescriptor( Object key, ArtifactDescriptorException e )
     {
         descriptors.put( key, BadDescriptor.INSTANCE );
     }
 
-    public Object toKey( VersionRangeRequest request )
+    Object toKey( VersionRangeRequest request )
     {
         return new ConstraintKey( request );
     }
 
-    public VersionRangeResult getConstraint( Object key, VersionRangeRequest 
request )
+    VersionRangeResult getConstraint( Object key, VersionRangeRequest request )
     {
         Constraint constraint = constraints.get( key );
         if ( constraint != null )
@@ -164,15 +160,15 @@ final class DataPool
         return null;
     }
 
-    public void putConstraint( Object key, VersionRangeResult result )
+    void putConstraint( Object key, VersionRangeResult result )
     {
         constraints.put( key, new Constraint( result ) );
     }
 
-    public Object toKey( Artifact artifact, DefaultDependencyCollectionContext 
context )
+    public Object toKey( Artifact artifact, List<RemoteRepository> 
repositories, DependencySelector selector,
+                         DependencyManager manager, DependencyTraverser 
traverser, VersionFilter filter )
     {
-        return new GraphKey( artifact, context.getRepositories(), 
context.getDepSelector(),
-                             context.getDepManager(), 
context.getDepTraverser(), context.getVerFilter() );
+        return new GraphKey( artifact, repositories, selector, manager, 
traverser, filter );
     }
 
     public List<DependencyNode> getChildren( Object key )
@@ -187,78 +183,64 @@ final class DataPool
 
     abstract static class Descriptor
     {
-        public abstract Future<ArtifactDescriptorResult> toResult( 
ArtifactDescriptorRequest request );
+
+        public abstract ArtifactDescriptorResult toResult( 
ArtifactDescriptorRequest request );
+
     }
 
     static final class GoodDescriptor
         extends Descriptor
     {
-        Future<ArtifactDescriptorResult> futureResult;
 
-        GoodDescriptor( Future<ArtifactDescriptorResult> futureResult )
-        {
-            this.futureResult = futureResult;
-        }
+        final Artifact artifact;
 
-        public Future<ArtifactDescriptorResult> toResult( final 
ArtifactDescriptorRequest request )
-        {
-            return new Future<ArtifactDescriptorResult>()
-            {
-                public boolean cancel( boolean mayInterruptIfRunning )
-                {
-                    return futureResult.cancel( mayInterruptIfRunning );
-                }
+        final List<Artifact> relocations;
 
-                public boolean isCancelled()
-                {
-                    return futureResult.isCancelled();
-                }
+        final Collection<Artifact> aliases;
 
-                public boolean isDone()
-                {
-                    return futureResult.isDone();
-                }
+        final List<RemoteRepository> repositories;
 
-                public ArtifactDescriptorResult get()
-                    throws InterruptedException, ExecutionException
-                {
-                    ArtifactDescriptorResult result = futureResult.get();
-                    return wrap( request, result );
-                }
-                public ArtifactDescriptorResult get( long timeout, TimeUnit 
unit )
-                    throws InterruptedException, ExecutionException, 
TimeoutException
-                {
-                    ArtifactDescriptorResult result = futureResult.get( 
timeout, unit );
-                    return wrap( request, result );
-                }
-            };
+        final List<Dependency> dependencies;
+
+        final List<Dependency> managedDependencies;
+
+        GoodDescriptor( ArtifactDescriptorResult result )
+        {
+            artifact = result.getArtifact();
+            relocations = result.getRelocations();
+            aliases = result.getAliases();
+            dependencies = result.getDependencies();
+            managedDependencies = result.getManagedDependencies();
+            repositories = result.getRepositories();
         }
 
-        private ArtifactDescriptorResult wrap( ArtifactDescriptorRequest 
request, ArtifactDescriptorResult result )
+        public ArtifactDescriptorResult toResult( ArtifactDescriptorRequest 
request )
         {
-            ArtifactDescriptorResult wrapped = new ArtifactDescriptorResult( 
request );
-            wrapped.setArtifact( result.getArtifact() );
-            wrapped.setRelocations( result.getRelocations() );
-            wrapped.setAliases( result.getAliases() );
-            wrapped.setDependencies( result.getDependencies() );
-            wrapped.setManagedDependencies( result.getManagedDependencies() );
-            wrapped.setRepositories( result.getRepositories() );
-            return wrapped;
+            ArtifactDescriptorResult result = new ArtifactDescriptorResult( 
request );
+            result.setArtifact( artifact );
+            result.setRelocations( relocations );
+            result.setAliases( aliases );
+            result.setDependencies( dependencies );
+            result.setManagedDependencies( managedDependencies );
+            result.setRepositories( repositories );
+            return result;
         }
+
     }
 
     static final class BadDescriptor
         extends Descriptor
     {
+
         static final BadDescriptor INSTANCE = new BadDescriptor();
 
-        public Future<ArtifactDescriptorResult> toResult( 
ArtifactDescriptorRequest request )
+        public ArtifactDescriptorResult toResult( ArtifactDescriptorRequest 
request )
         {
             return NO_DESCRIPTOR;
         }
     }
 
-    static final class Constraint
+    private static final class Constraint
     {
         final VersionRepo[] repositories;
 
@@ -276,7 +258,7 @@ final class DataPool
             }
         }
 
-        public VersionRangeResult toResult( VersionRangeRequest request )
+        VersionRangeResult toResult( VersionRangeRequest request )
         {
             VersionRangeResult result = new VersionRangeResult( request );
             for ( VersionRepo vr : repositories )
diff --git 
a/maven-resolver-impl/src/test/java/org/eclipse/aether/internal/impl/collect/DataPoolTest.java
 
b/maven-resolver-impl/src/test/java/org/eclipse/aether/internal/impl/collect/DataPoolTest.java
index 2ac1855..6baffd2 100644
--- 
a/maven-resolver-impl/src/test/java/org/eclipse/aether/internal/impl/collect/DataPoolTest.java
+++ 
b/maven-resolver-impl/src/test/java/org/eclipse/aether/internal/impl/collect/DataPoolTest.java
@@ -18,11 +18,6 @@ package org.eclipse.aether.internal.impl.collect;
  * specific language governing permissions and limitations
  * under the License.
  */
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-
-import java.util.concurrent.ExecutionException;
-import java.util.concurrent.Future;
 
 import org.eclipse.aether.DefaultRepositorySystemSession;
 import org.eclipse.aether.artifact.DefaultArtifact;
@@ -30,9 +25,11 @@ import org.eclipse.aether.graph.Dependency;
 import org.eclipse.aether.repository.RemoteRepository;
 import org.eclipse.aether.resolution.ArtifactDescriptorRequest;
 import org.eclipse.aether.resolution.ArtifactDescriptorResult;
-import org.eclipse.aether.util.concurrency.FutureResult;
 import org.junit.Test;
 
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+
 public class DataPoolTest
 {
 
@@ -42,7 +39,7 @@ public class DataPoolTest
     }
 
     @Test
-    public void testArtifactDescriptorCaching() throws InterruptedException, 
ExecutionException
+    public void testArtifactDescriptorCaching()
     {
         ArtifactDescriptorRequest request = new ArtifactDescriptorRequest();
         request.setArtifact( new DefaultArtifact( "gid:aid:1" ) );
@@ -53,14 +50,12 @@ public class DataPoolTest
         result.addManagedDependency( new Dependency( new DefaultArtifact( 
"gid:mdep:3" ), "runtime" ) );
         result.addRepository( new RemoteRepository.Builder( "test", "default", 
"http://localhost"; ).build() );
         result.addAlias( new DefaultArtifact( "gid:alias:4" ) );
-        Future<ArtifactDescriptorResult> futureResult = new FutureResult<>( 
result );
 
         DataPool pool = newDataPool();
         Object key = pool.toKey( request );
-        pool.putDescriptor( key, futureResult );
-        Future<ArtifactDescriptorResult> futureCached = pool.getDescriptor( 
key, request );
-        assertNotNull( futureCached );
-        ArtifactDescriptorResult cached = futureCached.get();
+        pool.putDescriptor( key, result );
+        ArtifactDescriptorResult cached = pool.getDescriptor( key, request );
+        assertNotNull( cached );
         assertEquals( result.getArtifact(), cached.getArtifact() );
         assertEquals( result.getRelocations(), cached.getRelocations() );
         assertEquals( result.getDependencies(), cached.getDependencies() );

Reply via email to