1   
2   
3   
4   
5   
6   
7   
8   
9   
10  
11  
12  
13  
14  
15  
16  
17  
18  
19  package org.apache.maven.plugin.surefire;
20  
21  import javax.annotation.Nonnull;
22  
23  import java.util.ArrayList;
24  import java.util.Collection;
25  import java.util.Set;
26  import java.util.concurrent.ConcurrentHashMap;
27  
28  import org.apache.maven.artifact.Artifact;
29  import org.apache.maven.surefire.booter.Classpath;
30  
31  
32  
33  
34  @Deprecated
35  public class ClasspathCache {
36      private static final ConcurrentHashMap<String, Classpath> CLASSPATHS = new ConcurrentHashMap<>(4);
37  
38      public static Classpath getCachedClassPath(@Nonnull String artifactId) {
39          return CLASSPATHS.get(artifactId);
40      }
41  
42      public static void setCachedClasspath(@Nonnull String key, @Nonnull Classpath classpath) {
43          CLASSPATHS.put(key, classpath);
44      }
45  
46      public static Classpath setCachedClasspath(@Nonnull String key, @Nonnull Set<Artifact> artifacts) {
47          Collection<String> files = new ArrayList<>();
48          for (Artifact artifact : artifacts) {
49              files.add(artifact.getFile().getAbsolutePath());
50          }
51          Classpath classpath = new Classpath(files);
52          setCachedClasspath(key, classpath);
53          return classpath;
54      }
55  }