1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.maven.repository.internal;
20
21 import org.eclipse.aether.DefaultRepositorySystemSession;
22 import org.eclipse.aether.artifact.DefaultArtifactType;
23 import org.eclipse.aether.collection.DependencyGraphTransformer;
24 import org.eclipse.aether.collection.DependencyManager;
25 import org.eclipse.aether.collection.DependencySelector;
26 import org.eclipse.aether.collection.DependencyTraverser;
27 import org.eclipse.aether.util.artifact.DefaultArtifactTypeRegistry;
28 import org.eclipse.aether.util.graph.manager.ClassicDependencyManager;
29 import org.eclipse.aether.util.graph.selector.AndDependencySelector;
30 import org.eclipse.aether.util.graph.selector.ExclusionDependencySelector;
31 import org.eclipse.aether.util.graph.selector.OptionalDependencySelector;
32 import org.eclipse.aether.util.graph.selector.ScopeDependencySelector;
33 import org.eclipse.aether.util.graph.transformer.ChainedDependencyGraphTransformer;
34 import org.eclipse.aether.util.graph.transformer.ConflictResolver;
35 import org.eclipse.aether.util.graph.transformer.JavaDependencyContextRefiner;
36 import org.eclipse.aether.util.graph.transformer.JavaScopeDeriver;
37 import org.eclipse.aether.util.graph.transformer.JavaScopeSelector;
38 import org.eclipse.aether.util.graph.transformer.NearestVersionSelector;
39 import org.eclipse.aether.util.graph.transformer.SimpleOptionalitySelector;
40 import org.eclipse.aether.util.graph.traverser.FatArtifactTraverser;
41 import org.eclipse.aether.util.repository.SimpleArtifactDescriptorPolicy;
42
43
44
45
46
47
48
49
50
51 @Deprecated
52 public final class MavenRepositorySystemUtils {
53
54 private MavenRepositorySystemUtils() {
55
56 }
57
58
59
60
61
62
63
64
65
66
67 @Deprecated
68 public static DefaultRepositorySystemSession newSession() {
69 DefaultRepositorySystemSession session = new DefaultRepositorySystemSession();
70
71 DependencyTraverser depTraverser = new FatArtifactTraverser();
72 session.setDependencyTraverser(depTraverser);
73
74 DependencyManager depManager = new ClassicDependencyManager();
75 session.setDependencyManager(depManager);
76
77 DependencySelector depFilter = new AndDependencySelector(
78 new ScopeDependencySelector("test", "provided"),
79 new OptionalDependencySelector(),
80 new ExclusionDependencySelector());
81 session.setDependencySelector(depFilter);
82
83 DependencyGraphTransformer transformer = new ConflictResolver(
84 new NearestVersionSelector(), new JavaScopeSelector(),
85 new SimpleOptionalitySelector(), new JavaScopeDeriver());
86 transformer = new ChainedDependencyGraphTransformer(transformer, new JavaDependencyContextRefiner());
87 session.setDependencyGraphTransformer(transformer);
88
89 DefaultArtifactTypeRegistry stereotypes = new DefaultArtifactTypeRegistry();
90 stereotypes.add(new DefaultArtifactType("pom"));
91 stereotypes.add(new DefaultArtifactType("maven-plugin", "jar", "", "java"));
92 stereotypes.add(new DefaultArtifactType("jar", "jar", "", "java"));
93 stereotypes.add(new DefaultArtifactType("ejb", "jar", "", "java"));
94 stereotypes.add(new DefaultArtifactType("ejb-client", "jar", "client", "java"));
95 stereotypes.add(new DefaultArtifactType("test-jar", "jar", "tests", "java"));
96 stereotypes.add(new DefaultArtifactType("javadoc", "jar", "javadoc", "java"));
97 stereotypes.add(new DefaultArtifactType("java-source", "jar", "sources", "java", false, false));
98 stereotypes.add(new DefaultArtifactType("war", "war", "", "java", false, true));
99 stereotypes.add(new DefaultArtifactType("ear", "ear", "", "java", false, true));
100 stereotypes.add(new DefaultArtifactType("rar", "rar", "", "java", false, true));
101 stereotypes.add(new DefaultArtifactType("par", "par", "", "java", false, true));
102 session.setArtifactTypeRegistry(stereotypes);
103
104 session.setArtifactDescriptorPolicy(new SimpleArtifactDescriptorPolicy(true, true));
105
106 return session;
107 }
108 }