public final class org.eclipse.aether.util.graph.transformer.ConflictResolver implements org.eclipse.aether.collection.DependencyGraphTransformer
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: org.eclipse.aether.util.graph.transformer.ConflictResolver
super_class: java.lang.Object
{
public static final java.lang.String CONFIG_PROP_VERBOSE;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "aether.conflictResolver.verbose"
public static final java.lang.String NODE_DATA_WINNER;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "conflict.winner"
public static final java.lang.String NODE_DATA_ORIGINAL_SCOPE;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "conflict.originalScope"
public static final java.lang.String NODE_DATA_ORIGINAL_OPTIONALITY;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "conflict.originalOptionality"
private final org.eclipse.aether.util.graph.transformer.ConflictResolver$VersionSelector versionSelector;
descriptor: Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$VersionSelector;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.eclipse.aether.util.graph.transformer.ConflictResolver$ScopeSelector scopeSelector;
descriptor: Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$ScopeSelector;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.eclipse.aether.util.graph.transformer.ConflictResolver$ScopeDeriver scopeDeriver;
descriptor: Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$ScopeDeriver;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.eclipse.aether.util.graph.transformer.ConflictResolver$OptionalitySelector optionalitySelector;
descriptor: Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$OptionalitySelector;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>(org.eclipse.aether.util.graph.transformer.ConflictResolver$VersionSelector, org.eclipse.aether.util.graph.transformer.ConflictResolver$ScopeSelector, org.eclipse.aether.util.graph.transformer.ConflictResolver$OptionalitySelector, org.eclipse.aether.util.graph.transformer.ConflictResolver$ScopeDeriver);
descriptor: (Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$VersionSelector;Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$ScopeSelector;Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$OptionalitySelector;Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$ScopeDeriver;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
ldc "version selector cannot be null"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
checkcast org.eclipse.aether.util.graph.transformer.ConflictResolver$VersionSelector
putfield org.eclipse.aether.util.graph.transformer.ConflictResolver.versionSelector:Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$VersionSelector;
2: aload 0
aload 2
ldc "scope selector cannot be null"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
checkcast org.eclipse.aether.util.graph.transformer.ConflictResolver$ScopeSelector
putfield org.eclipse.aether.util.graph.transformer.ConflictResolver.scopeSelector:Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$ScopeSelector;
3: aload 0
aload 3
ldc "optionality selector cannot be null"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
checkcast org.eclipse.aether.util.graph.transformer.ConflictResolver$OptionalitySelector
putfield org.eclipse.aether.util.graph.transformer.ConflictResolver.optionalitySelector:Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$OptionalitySelector;
4: aload 0
aload 4
ldc "scope deriver cannot be null"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
checkcast org.eclipse.aether.util.graph.transformer.ConflictResolver$ScopeDeriver
putfield org.eclipse.aether.util.graph.transformer.ConflictResolver.scopeDeriver:Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$ScopeDeriver;
5: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/eclipse/aether/util/graph/transformer/ConflictResolver;
0 6 1 versionSelector Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$VersionSelector;
0 6 2 scopeSelector Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$ScopeSelector;
0 6 3 optionalitySelector Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$OptionalitySelector;
0 6 4 scopeDeriver Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$ScopeDeriver;
MethodParameters:
Name Flags
versionSelector
scopeSelector
optionalitySelector
scopeDeriver
public org.eclipse.aether.graph.DependencyNode transformGraph(org.eclipse.aether.graph.DependencyNode, org.eclipse.aether.collection.DependencyGraphTransformationContext);
descriptor: (Lorg/eclipse/aether/graph/DependencyNode;Lorg/eclipse/aether/collection/DependencyGraphTransformationContext;)Lorg/eclipse/aether/graph/DependencyNode;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=15, args_size=3
start local 0 start local 1 start local 2 0: aload 2
getstatic org.eclipse.aether.util.graph.transformer.TransformationContextKeys.SORTED_CONFLICT_IDS:Ljava/lang/Object;
invokeinterface org.eclipse.aether.collection.DependencyGraphTransformationContext.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.List
astore 3
start local 3 1: aload 3
ifnonnull 5
2: new org.eclipse.aether.util.graph.transformer.ConflictIdSorter
dup
invokespecial org.eclipse.aether.util.graph.transformer.ConflictIdSorter.<init>:()V
astore 4
start local 4 3: aload 4
aload 1
aload 2
invokevirtual org.eclipse.aether.util.graph.transformer.ConflictIdSorter.transformGraph:(Lorg/eclipse/aether/graph/DependencyNode;Lorg/eclipse/aether/collection/DependencyGraphTransformationContext;)Lorg/eclipse/aether/graph/DependencyNode;
pop
4: aload 2
getstatic org.eclipse.aether.util.graph.transformer.TransformationContextKeys.SORTED_CONFLICT_IDS:Ljava/lang/Object;
invokeinterface org.eclipse.aether.collection.DependencyGraphTransformationContext.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.List
astore 3
end local 4 5: StackMap locals: java.util.List
StackMap stack:
aload 2
getstatic org.eclipse.aether.util.graph.transformer.TransformationContextKeys.STATS:Ljava/lang/Object;
invokeinterface org.eclipse.aether.collection.DependencyGraphTransformationContext.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.Map
astore 4
start local 4 6: invokestatic java.lang.System.nanoTime:()J
lstore 5
start local 5 7: aload 2
getstatic org.eclipse.aether.util.graph.transformer.TransformationContextKeys.CYCLIC_CONFLICT_IDS:Ljava/lang/Object;
invokeinterface org.eclipse.aether.collection.DependencyGraphTransformationContext.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.Collection
8: astore 7
start local 7 9: aload 7
ifnonnull 11
10: new org.eclipse.aether.RepositoryException
dup
ldc "conflict id cycles have not been identified"
invokespecial org.eclipse.aether.RepositoryException.<init>:(Ljava/lang/String;)V
athrow
11: StackMap locals: java.util.Map long java.util.Collection
StackMap stack:
aload 2
getstatic org.eclipse.aether.util.graph.transformer.TransformationContextKeys.CONFLICT_IDS:Ljava/lang/Object;
invokeinterface org.eclipse.aether.collection.DependencyGraphTransformationContext.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.Map
astore 8
start local 8 12: aload 8
ifnonnull 14
13: new org.eclipse.aether.RepositoryException
dup
ldc "conflict groups have not been identified"
invokespecial org.eclipse.aether.RepositoryException.<init>:(Ljava/lang/String;)V
athrow
14: StackMap locals: java.util.Map
StackMap stack:
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
astore 9
start local 9 15: aload 7
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 11
goto 25
StackMap locals: org.eclipse.aether.util.graph.transformer.ConflictResolver org.eclipse.aether.graph.DependencyNode org.eclipse.aether.collection.DependencyGraphTransformationContext java.util.List java.util.Map long java.util.Collection java.util.Map java.util.Map top java.util.Iterator
StackMap stack:
16: aload 11
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Collection
astore 10
start local 10 17: aload 10
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 13
goto 24
StackMap locals: org.eclipse.aether.util.graph.transformer.ConflictResolver org.eclipse.aether.graph.DependencyNode org.eclipse.aether.collection.DependencyGraphTransformationContext java.util.List java.util.Map long java.util.Collection java.util.Map java.util.Map java.util.Collection java.util.Iterator top java.util.Iterator
StackMap stack:
18: aload 13
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
astore 12
start local 12 19: aload 9
aload 12
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.Collection
astore 14
start local 14 20: aload 14
ifnonnull 23
21: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 14
22: aload 9
aload 12
aload 14
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
23: StackMap locals: org.eclipse.aether.util.graph.transformer.ConflictResolver org.eclipse.aether.graph.DependencyNode org.eclipse.aether.collection.DependencyGraphTransformationContext java.util.List java.util.Map long java.util.Collection java.util.Map java.util.Map java.util.Collection java.util.Iterator java.lang.Object java.util.Iterator java.util.Collection
StackMap stack:
aload 14
aload 10
invokeinterface java.util.Collection.addAll:(Ljava/util/Collection;)Z
pop
end local 14 end local 12 24: StackMap locals: org.eclipse.aether.util.graph.transformer.ConflictResolver org.eclipse.aether.graph.DependencyNode org.eclipse.aether.collection.DependencyGraphTransformationContext java.util.List java.util.Map long java.util.Collection java.util.Map java.util.Map java.util.Collection java.util.Iterator top java.util.Iterator
StackMap stack:
aload 13
invokeinterface java.util.Iterator.hasNext:()Z
ifne 18
end local 10 25: StackMap locals: org.eclipse.aether.util.graph.transformer.ConflictResolver org.eclipse.aether.graph.DependencyNode org.eclipse.aether.collection.DependencyGraphTransformationContext java.util.List java.util.Map long java.util.Collection java.util.Map java.util.Map top java.util.Iterator
StackMap stack:
aload 11
invokeinterface java.util.Iterator.hasNext:()Z
ifne 16
26: new org.eclipse.aether.util.graph.transformer.ConflictResolver$State
dup
aload 0
aload 1
aload 8
aload 3
invokeinterface java.util.List.size:()I
aload 2
invokespecial org.eclipse.aether.util.graph.transformer.ConflictResolver$State.<init>:(Lorg/eclipse/aether/util/graph/transformer/ConflictResolver;Lorg/eclipse/aether/graph/DependencyNode;Ljava/util/Map;ILorg/eclipse/aether/collection/DependencyGraphTransformationContext;)V
astore 10
start local 10 27: aload 3
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 11
start local 11 28: goto 53
29: StackMap locals: org.eclipse.aether.util.graph.transformer.ConflictResolver org.eclipse.aether.graph.DependencyNode org.eclipse.aether.collection.DependencyGraphTransformationContext java.util.List java.util.Map long java.util.Collection java.util.Map java.util.Map org.eclipse.aether.util.graph.transformer.ConflictResolver$State java.util.Iterator
StackMap stack:
aload 11
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
astore 12
start local 12 30: aload 10
aload 12
aload 9
aload 12
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.Collection
invokevirtual org.eclipse.aether.util.graph.transformer.ConflictResolver$State.prepare:(Ljava/lang/Object;Ljava/util/Collection;)V
31: aload 0
aload 1
aload 10
invokevirtual org.eclipse.aether.util.graph.transformer.ConflictResolver.gatherConflictItems:(Lorg/eclipse/aether/graph/DependencyNode;Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$State;)Z
pop
32: aload 10
invokevirtual org.eclipse.aether.util.graph.transformer.ConflictResolver$State.finish:()V
33: aload 10
getfield org.eclipse.aether.util.graph.transformer.ConflictResolver$State.items:Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifne 48
34: aload 10
getfield org.eclipse.aether.util.graph.transformer.ConflictResolver$State.conflictCtx:Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$ConflictContext;
astore 13
start local 13 35: aload 10
getfield org.eclipse.aether.util.graph.transformer.ConflictResolver$State.versionSelector:Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$VersionSelector;
aload 13
invokevirtual org.eclipse.aether.util.graph.transformer.ConflictResolver$VersionSelector.selectVersion:(Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$ConflictContext;)V
36: aload 13
getfield org.eclipse.aether.util.graph.transformer.ConflictResolver$ConflictContext.winner:Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$ConflictItem;
ifnonnull 38
37: new org.eclipse.aether.RepositoryException
dup
new java.lang.StringBuilder
dup
ldc "conflict resolver did not select winner among "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 10
getfield org.eclipse.aether.util.graph.transformer.ConflictResolver$State.items:Ljava/util/List;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial org.eclipse.aether.RepositoryException.<init>:(Ljava/lang/String;)V
athrow
38: StackMap locals: java.lang.Object org.eclipse.aether.util.graph.transformer.ConflictResolver$ConflictContext
StackMap stack:
aload 13
getfield org.eclipse.aether.util.graph.transformer.ConflictResolver$ConflictContext.winner:Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$ConflictItem;
getfield org.eclipse.aether.util.graph.transformer.ConflictResolver$ConflictItem.node:Lorg/eclipse/aether/graph/DependencyNode;
astore 14
start local 14 39: aload 10
getfield org.eclipse.aether.util.graph.transformer.ConflictResolver$State.scopeSelector:Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$ScopeSelector;
aload 13
invokevirtual org.eclipse.aether.util.graph.transformer.ConflictResolver$ScopeSelector.selectScope:(Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$ConflictContext;)V
40: aload 10
getfield org.eclipse.aether.util.graph.transformer.ConflictResolver$State.verbose:Z
ifeq 42
41: aload 14
ldc "conflict.originalScope"
aload 14
invokeinterface org.eclipse.aether.graph.DependencyNode.getDependency:()Lorg/eclipse/aether/graph/Dependency;
invokevirtual org.eclipse.aether.graph.Dependency.getScope:()Ljava/lang/String;
invokeinterface org.eclipse.aether.graph.DependencyNode.setData:(Ljava/lang/Object;Ljava/lang/Object;)V
42: StackMap locals: org.eclipse.aether.graph.DependencyNode
StackMap stack:
aload 14
aload 13
getfield org.eclipse.aether.util.graph.transformer.ConflictResolver$ConflictContext.scope:Ljava/lang/String;
invokeinterface org.eclipse.aether.graph.DependencyNode.setScope:(Ljava/lang/String;)V
43: aload 10
getfield org.eclipse.aether.util.graph.transformer.ConflictResolver$State.optionalitySelector:Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$OptionalitySelector;
aload 13
invokevirtual org.eclipse.aether.util.graph.transformer.ConflictResolver$OptionalitySelector.selectOptionality:(Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$ConflictContext;)V
44: aload 10
getfield org.eclipse.aether.util.graph.transformer.ConflictResolver$State.verbose:Z
ifeq 46
45: aload 14
ldc "conflict.originalOptionality"
aload 14
invokeinterface org.eclipse.aether.graph.DependencyNode.getDependency:()Lorg/eclipse/aether/graph/Dependency;
invokevirtual org.eclipse.aether.graph.Dependency.isOptional:()Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
invokeinterface org.eclipse.aether.graph.DependencyNode.setData:(Ljava/lang/Object;Ljava/lang/Object;)V
46: StackMap locals:
StackMap stack:
aload 14
aload 13
getfield org.eclipse.aether.util.graph.transformer.ConflictResolver$ConflictContext.optional:Ljava/lang/Boolean;
invokeinterface org.eclipse.aether.graph.DependencyNode.setOptional:(Ljava/lang/Boolean;)V
47: aload 0
aload 10
invokevirtual org.eclipse.aether.util.graph.transformer.ConflictResolver.removeLosers:(Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$State;)V
end local 14 end local 13 48: StackMap locals:
StackMap stack:
aload 10
invokevirtual org.eclipse.aether.util.graph.transformer.ConflictResolver$State.winner:()V
49: aload 11
invokeinterface java.util.Iterator.hasNext:()Z
ifne 53
aload 7
invokeinterface java.util.Collection.isEmpty:()Z
ifne 53
aload 10
getfield org.eclipse.aether.util.graph.transformer.ConflictResolver$State.conflictCtx:Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$ConflictContext;
getfield org.eclipse.aether.util.graph.transformer.ConflictResolver$ConflictContext.winner:Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$ConflictItem;
ifnull 53
50: aload 10
getfield org.eclipse.aether.util.graph.transformer.ConflictResolver$State.conflictCtx:Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$ConflictContext;
getfield org.eclipse.aether.util.graph.transformer.ConflictResolver$ConflictContext.winner:Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$ConflictItem;
getfield org.eclipse.aether.util.graph.transformer.ConflictResolver$ConflictItem.node:Lorg/eclipse/aether/graph/DependencyNode;
astore 13
start local 13 51: aload 10
aload 10
aconst_null
invokevirtual org.eclipse.aether.util.graph.transformer.ConflictResolver$State.prepare:(Ljava/lang/Object;Ljava/util/Collection;)V
52: aload 0
aload 13
aload 10
invokevirtual org.eclipse.aether.util.graph.transformer.ConflictResolver.gatherConflictItems:(Lorg/eclipse/aether/graph/DependencyNode;Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$State;)Z
pop
end local 13 end local 12 53: StackMap locals:
StackMap stack:
aload 11
invokeinterface java.util.Iterator.hasNext:()Z
ifne 29
end local 11 54: aload 4
ifnull 58
55: invokestatic java.lang.System.nanoTime:()J
lstore 11
start local 11 56: aload 4
ldc "ConflictResolver.totalTime"
lload 11
lload 5
lsub
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
57: aload 4
ldc "ConflictResolver.conflictItemCount"
aload 10
getfield org.eclipse.aether.util.graph.transformer.ConflictResolver$State.totalConflictItems:I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 11 58: StackMap locals:
StackMap stack:
aload 1
areturn
end local 10 end local 9 end local 8 end local 7 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 59 0 this Lorg/eclipse/aether/util/graph/transformer/ConflictResolver;
0 59 1 node Lorg/eclipse/aether/graph/DependencyNode;
0 59 2 context Lorg/eclipse/aether/collection/DependencyGraphTransformationContext;
1 59 3 sortedConflictIds Ljava/util/List<*>;
3 5 4 sorter Lorg/eclipse/aether/util/graph/transformer/ConflictIdSorter;
6 59 4 stats Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
7 59 5 time1 J
9 59 7 conflictIdCycles Ljava/util/Collection<Ljava/util/Collection<*>;>;
12 59 8 conflictIds Ljava/util/Map<**>;
15 59 9 cyclicPredecessors Ljava/util/Map<Ljava/lang/Object;Ljava/util/Collection<Ljava/lang/Object;>;>;
17 25 10 cycle Ljava/util/Collection<*>;
19 24 12 conflictId Ljava/lang/Object;
20 24 14 predecessors Ljava/util/Collection<Ljava/lang/Object;>;
27 59 10 state Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$State;
28 54 11 it Ljava/util/Iterator<*>;
30 53 12 conflictId Ljava/lang/Object;
35 48 13 ctx Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$ConflictContext;
39 48 14 winner Lorg/eclipse/aether/graph/DependencyNode;
51 53 13 winner Lorg/eclipse/aether/graph/DependencyNode;
56 58 11 time2 J
Exceptions:
throws org.eclipse.aether.RepositoryException
MethodParameters:
Name Flags
node
context
private boolean gatherConflictItems(org.eclipse.aether.graph.DependencyNode, org.eclipse.aether.util.graph.transformer.ConflictResolver$State);
descriptor: (Lorg/eclipse/aether/graph/DependencyNode;Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$State;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 2
getfield org.eclipse.aether.util.graph.transformer.ConflictResolver$State.conflictIds:Ljava/util/Map;
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
astore 3
start local 3 1: aload 2
getfield org.eclipse.aether.util.graph.transformer.ConflictResolver$State.currentId:Ljava/lang/Object;
aload 3
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 4
2: aload 2
aload 1
invokevirtual org.eclipse.aether.util.graph.transformer.ConflictResolver$State.add:(Lorg/eclipse/aether/graph/DependencyNode;)V
3: goto 14
4: StackMap locals: java.lang.Object
StackMap stack:
aload 2
aload 1
aload 3
invokevirtual org.eclipse.aether.util.graph.transformer.ConflictResolver$State.loser:(Lorg/eclipse/aether/graph/DependencyNode;Ljava/lang/Object;)Z
ifeq 6
5: iconst_0
ireturn
6: StackMap locals:
StackMap stack:
aload 2
aload 1
aload 3
invokevirtual org.eclipse.aether.util.graph.transformer.ConflictResolver$State.push:(Lorg/eclipse/aether/graph/DependencyNode;Ljava/lang/Object;)Z
ifeq 14
7: aload 1
invokeinterface org.eclipse.aether.graph.DependencyNode.getChildren:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 4
start local 4 8: goto 12
9: StackMap locals: java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.eclipse.aether.graph.DependencyNode
astore 5
start local 5 10: aload 0
aload 5
aload 2
invokevirtual org.eclipse.aether.util.graph.transformer.ConflictResolver.gatherConflictItems:(Lorg/eclipse/aether/graph/DependencyNode;Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$State;)Z
ifne 12
11: aload 4
invokeinterface java.util.Iterator.remove:()V
end local 5 12: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 9
end local 4 13: aload 2
invokevirtual org.eclipse.aether.util.graph.transformer.ConflictResolver$State.pop:()V
14: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/eclipse/aether/util/graph/transformer/ConflictResolver;
0 15 1 node Lorg/eclipse/aether/graph/DependencyNode;
0 15 2 state Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$State;
1 15 3 conflictId Ljava/lang/Object;
8 13 4 it Ljava/util/Iterator<Lorg/eclipse/aether/graph/DependencyNode;>;
10 12 5 child Lorg/eclipse/aether/graph/DependencyNode;
Exceptions:
throws org.eclipse.aether.RepositoryException
MethodParameters:
Name Flags
node
state
private void removeLosers(org.eclipse.aether.util.graph.transformer.ConflictResolver$State);
descriptor: (Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$State;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=10, args_size=2
start local 0 start local 1 0: aload 1
getfield org.eclipse.aether.util.graph.transformer.ConflictResolver$State.conflictCtx:Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$ConflictContext;
getfield org.eclipse.aether.util.graph.transformer.ConflictResolver$ConflictContext.winner:Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$ConflictItem;
astore 2
start local 2 1: aconst_null
astore 3
start local 3 2: aconst_null
astore 4
start local 4 3: iconst_0
istore 5
start local 5 4: aload 1
getfield org.eclipse.aether.util.graph.transformer.ConflictResolver$State.items:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 7
goto 28
StackMap locals: org.eclipse.aether.util.graph.transformer.ConflictResolver org.eclipse.aether.util.graph.transformer.ConflictResolver$State org.eclipse.aether.util.graph.transformer.ConflictResolver$ConflictItem java.util.List java.util.ListIterator int top java.util.Iterator
StackMap stack:
5: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.eclipse.aether.util.graph.transformer.ConflictResolver$ConflictItem
astore 6
start local 6 6: aload 6
aload 2
if_acmpne 8
7: goto 28
8: StackMap locals: org.eclipse.aether.util.graph.transformer.ConflictResolver org.eclipse.aether.util.graph.transformer.ConflictResolver$State org.eclipse.aether.util.graph.transformer.ConflictResolver$ConflictItem java.util.List java.util.ListIterator int org.eclipse.aether.util.graph.transformer.ConflictResolver$ConflictItem java.util.Iterator
StackMap stack:
aload 6
getfield org.eclipse.aether.util.graph.transformer.ConflictResolver$ConflictItem.parent:Ljava/util/List;
aload 3
if_acmpeq 27
9: aload 6
getfield org.eclipse.aether.util.graph.transformer.ConflictResolver$ConflictItem.parent:Ljava/util/List;
invokeinterface java.util.List.listIterator:()Ljava/util/ListIterator;
astore 4
10: aload 6
getfield org.eclipse.aether.util.graph.transformer.ConflictResolver$ConflictItem.parent:Ljava/util/List;
astore 3
11: iconst_0
istore 5
12: goto 27
13: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.ListIterator.next:()Ljava/lang/Object;
checkcast org.eclipse.aether.graph.DependencyNode
astore 8
start local 8 14: aload 8
aload 6
getfield org.eclipse.aether.util.graph.transformer.ConflictResolver$ConflictItem.node:Lorg/eclipse/aether/graph/DependencyNode;
if_acmpne 27
15: aload 1
getfield org.eclipse.aether.util.graph.transformer.ConflictResolver$State.verbose:Z
ifeq 25
iload 5
ifne 25
aload 6
getfield org.eclipse.aether.util.graph.transformer.ConflictResolver$ConflictItem.parent:Ljava/util/List;
aload 2
getfield org.eclipse.aether.util.graph.transformer.ConflictResolver$ConflictItem.parent:Ljava/util/List;
if_acmpeq 25
16: iconst_1
istore 5
17: new org.eclipse.aether.graph.DefaultDependencyNode
dup
aload 8
invokespecial org.eclipse.aether.graph.DefaultDependencyNode.<init>:(Lorg/eclipse/aether/graph/DependencyNode;)V
astore 9
start local 9 18: aload 9
ldc "conflict.winner"
aload 2
getfield org.eclipse.aether.util.graph.transformer.ConflictResolver$ConflictItem.node:Lorg/eclipse/aether/graph/DependencyNode;
invokeinterface org.eclipse.aether.graph.DependencyNode.setData:(Ljava/lang/Object;Ljava/lang/Object;)V
19: aload 9
ldc "conflict.originalScope"
aload 9
invokeinterface org.eclipse.aether.graph.DependencyNode.getDependency:()Lorg/eclipse/aether/graph/Dependency;
invokevirtual org.eclipse.aether.graph.Dependency.getScope:()Ljava/lang/String;
invokeinterface org.eclipse.aether.graph.DependencyNode.setData:(Ljava/lang/Object;Ljava/lang/Object;)V
20: aload 9
ldc "conflict.originalOptionality"
aload 9
invokeinterface org.eclipse.aether.graph.DependencyNode.getDependency:()Lorg/eclipse/aether/graph/Dependency;
invokevirtual org.eclipse.aether.graph.Dependency.isOptional:()Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
invokeinterface org.eclipse.aether.graph.DependencyNode.setData:(Ljava/lang/Object;Ljava/lang/Object;)V
21: aload 9
aload 6
invokevirtual org.eclipse.aether.util.graph.transformer.ConflictResolver$ConflictItem.getScopes:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
invokeinterface org.eclipse.aether.graph.DependencyNode.setScope:(Ljava/lang/String;)V
22: aload 9
invokestatic java.util.Collections.emptyList:()Ljava/util/List;
invokeinterface org.eclipse.aether.graph.DependencyNode.setChildren:(Ljava/util/List;)V
23: aload 4
aload 9
invokeinterface java.util.ListIterator.set:(Ljava/lang/Object;)V
end local 9 24: goto 28
25: StackMap locals: org.eclipse.aether.graph.DependencyNode
StackMap stack:
aload 4
invokeinterface java.util.ListIterator.remove:()V
26: goto 28
end local 8 27: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.ListIterator.hasNext:()Z
ifne 13
end local 6 28: StackMap locals: org.eclipse.aether.util.graph.transformer.ConflictResolver org.eclipse.aether.util.graph.transformer.ConflictResolver$State org.eclipse.aether.util.graph.transformer.ConflictResolver$ConflictItem java.util.List java.util.ListIterator int top java.util.Iterator
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 5
29: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 30 0 this Lorg/eclipse/aether/util/graph/transformer/ConflictResolver;
0 30 1 state Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$State;
1 30 2 winner Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$ConflictItem;
2 30 3 previousParent Ljava/util/List<Lorg/eclipse/aether/graph/DependencyNode;>;
3 30 4 childIt Ljava/util/ListIterator<Lorg/eclipse/aether/graph/DependencyNode;>;
4 30 5 conflictVisualized Z
6 28 6 item Lorg/eclipse/aether/util/graph/transformer/ConflictResolver$ConflictItem;
14 27 8 child Lorg/eclipse/aether/graph/DependencyNode;
18 24 9 loser Lorg/eclipse/aether/graph/DependencyNode;
MethodParameters:
Name Flags
state
}
SourceFile: "ConflictResolver.java"
NestMembers:
org.eclipse.aether.util.graph.transformer.ConflictResolver$ConflictContext org.eclipse.aether.util.graph.transformer.ConflictResolver$ConflictItem org.eclipse.aether.util.graph.transformer.ConflictResolver$NodeInfo org.eclipse.aether.util.graph.transformer.ConflictResolver$OptionalitySelector org.eclipse.aether.util.graph.transformer.ConflictResolver$ScopeContext org.eclipse.aether.util.graph.transformer.ConflictResolver$ScopeDeriver org.eclipse.aether.util.graph.transformer.ConflictResolver$ScopeSelector org.eclipse.aether.util.graph.transformer.ConflictResolver$State org.eclipse.aether.util.graph.transformer.ConflictResolver$VersionSelector
InnerClasses:
public final ConflictContext = org.eclipse.aether.util.graph.transformer.ConflictResolver$ConflictContext of org.eclipse.aether.util.graph.transformer.ConflictResolver
public final ConflictItem = org.eclipse.aether.util.graph.transformer.ConflictResolver$ConflictItem of org.eclipse.aether.util.graph.transformer.ConflictResolver
final NodeInfo = org.eclipse.aether.util.graph.transformer.ConflictResolver$NodeInfo of org.eclipse.aether.util.graph.transformer.ConflictResolver
public abstract OptionalitySelector = org.eclipse.aether.util.graph.transformer.ConflictResolver$OptionalitySelector of org.eclipse.aether.util.graph.transformer.ConflictResolver
public final ScopeContext = org.eclipse.aether.util.graph.transformer.ConflictResolver$ScopeContext of org.eclipse.aether.util.graph.transformer.ConflictResolver
public abstract ScopeDeriver = org.eclipse.aether.util.graph.transformer.ConflictResolver$ScopeDeriver of org.eclipse.aether.util.graph.transformer.ConflictResolver
public abstract ScopeSelector = org.eclipse.aether.util.graph.transformer.ConflictResolver$ScopeSelector of org.eclipse.aether.util.graph.transformer.ConflictResolver
final State = org.eclipse.aether.util.graph.transformer.ConflictResolver$State of org.eclipse.aether.util.graph.transformer.ConflictResolver
public abstract VersionSelector = org.eclipse.aether.util.graph.transformer.ConflictResolver$VersionSelector of org.eclipse.aether.util.graph.transformer.ConflictResolver