1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.eclipse.aether.util.graph.transformer;
20
21 import org.eclipse.aether.RepositoryException;
22 import org.eclipse.aether.util.artifact.JavaScopes;
23 import org.eclipse.aether.util.graph.transformer.ConflictResolver.ScopeContext;
24 import org.eclipse.aether.util.graph.transformer.ConflictResolver.ScopeDeriver;
25
26
27
28
29
30
31 @Deprecated
32 public final class JavaScopeDeriver extends ScopeDeriver {
33
34
35
36
37 public JavaScopeDeriver() {}
38
39 @Override
40 public void deriveScope(ScopeContext context) throws RepositoryException {
41 context.setDerivedScope(getDerivedScope(context.getParentScope(), context.getChildScope()));
42 }
43
44 private String getDerivedScope(String parentScope, String childScope) {
45 String derivedScope;
46
47 if (JavaScopes.SYSTEM.equals(childScope) || JavaScopes.TEST.equals(childScope)) {
48 derivedScope = childScope;
49 } else if (parentScope == null || parentScope.isEmpty() || JavaScopes.COMPILE.equals(parentScope)) {
50 derivedScope = childScope;
51 } else if (JavaScopes.TEST.equals(parentScope) || JavaScopes.RUNTIME.equals(parentScope)) {
52 derivedScope = parentScope;
53 } else if (JavaScopes.SYSTEM.equals(parentScope) || JavaScopes.PROVIDED.equals(parentScope)) {
54 derivedScope = JavaScopes.PROVIDED;
55 } else {
56 derivedScope = JavaScopes.RUNTIME;
57 }
58
59 return derivedScope;
60 }
61 }