1 package org.apache.maven.archiva.dependency.graph.walk;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import org.apache.maven.archiva.dependency.graph.DependencyGraph;
23 import org.apache.maven.archiva.dependency.graph.DependencyGraphEdge;
24 import org.apache.maven.archiva.dependency.graph.DependencyGraphNode;
25 import org.apache.maven.archiva.model.ArtifactReference;
26
27 import java.util.ArrayList;
28 import java.util.List;
29
30 class WalkCollector
31 implements DependencyGraphVisitor
32 {
33 private List<String> walkPath = new ArrayList<String>();
34
35 private int countDiscoverGraph = 0;
36
37 private int countFinishGraph = 0;
38
39 private int countDiscoverNode = 0;
40
41 private int countFinishNode = 0;
42
43 private int countDiscoverEdge = 0;
44
45 private int countFinishEdge = 0;
46
47 public void discoverEdge( DependencyGraphEdge edge )
48 {
49 countDiscoverEdge++;
50 }
51
52 public void discoverGraph( DependencyGraph graph )
53 {
54 countDiscoverGraph++;
55 }
56
57 public void discoverNode( DependencyGraphNode node )
58 {
59 countDiscoverNode++;
60 walkPath.add( ArtifactReference.toKey( node.getArtifact() ) );
61 }
62
63 public void finishEdge( DependencyGraphEdge edge )
64 {
65 countFinishEdge++;
66 }
67
68 public void finishGraph( DependencyGraph graph )
69 {
70 countFinishGraph++;
71 }
72
73 public void finishNode( DependencyGraphNode node )
74 {
75 countFinishNode++;
76 }
77
78 public List<String> getCollectedPath()
79 {
80 return walkPath;
81 }
82
83 public int getCountDiscoverEdge()
84 {
85 return countDiscoverEdge;
86 }
87
88 public int getCountDiscoverGraph()
89 {
90 return countDiscoverGraph;
91 }
92
93 public int getCountDiscoverNode()
94 {
95 return countDiscoverNode;
96 }
97
98 public int getCountFinishEdge()
99 {
100 return countFinishEdge;
101 }
102
103 public int getCountFinishGraph()
104 {
105 return countFinishGraph;
106 }
107
108 public int getCountFinishNode()
109 {
110 return countFinishNode;
111 }
112
113 }