1 package org.apache.maven.report.projectinfo;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import java.util.List;
23 import java.util.Locale;
24
25 import org.apache.maven.artifact.factory.ArtifactFactory;
26 import org.apache.maven.artifact.manager.WagonManager;
27 import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
28 import org.apache.maven.artifact.repository.ArtifactRepository;
29 import org.apache.maven.artifact.repository.metadata.RepositoryMetadataManager;
30 import org.apache.maven.project.MavenProjectBuilder;
31 import org.apache.maven.report.projectinfo.dependencies.ManagementDependencies;
32 import org.apache.maven.report.projectinfo.dependencies.RepositoryUtils;
33 import org.apache.maven.report.projectinfo.dependencies.renderer.DependencyManagementRenderer;
34
35
36
37
38
39
40
41
42
43
44 public class DependencyManagementReport
45 extends AbstractProjectInfoReport
46 {
47
48
49
50
51
52
53
54
55
56 private MavenProjectBuilder mavenProjectBuilder;
57
58
59
60
61
62
63
64 protected ArtifactMetadataSource artifactMetadataSource;
65
66
67
68
69
70
71 private ArtifactFactory artifactFactory;
72
73
74
75
76
77
78
79 private WagonManager wagonManager;
80
81
82
83
84
85
86
87 private RepositoryMetadataManager repositoryMetadataManager;
88
89
90
91
92
93
94
95
96 private ManagementDependencies managementDependencies;
97
98
99
100
101
102 @Override
103 public void executeReport( Locale locale )
104 {
105 @SuppressWarnings( "unchecked" )
106 RepositoryUtils repoUtils =
107 new RepositoryUtils( getLog(), wagonManager, settings,
108 mavenProjectBuilder, factory, resolver, project.getRemoteArtifactRepositories(),
109 project.getPluginArtifactRepositories(), localRepository,
110 repositoryMetadataManager );
111
112 DependencyManagementRenderer r =
113 new DependencyManagementRenderer( getSink(), locale, getI18N( locale ), getLog(), getManagementDependencies(),
114 artifactMetadataSource, artifactFactory, mavenProjectBuilder, remoteRepositories,
115 localRepository, repoUtils );
116 r.render();
117 }
118
119
120 public String getOutputName()
121 {
122 return "dependency-management";
123 }
124
125 @Override
126 protected String getI18Nsection()
127 {
128 return "dependencyManagement";
129 }
130
131 @Override
132 public boolean canGenerateReport()
133 {
134 return getManagementDependencies().hasDependencies();
135 }
136
137
138
139
140
141 private ManagementDependencies getManagementDependencies()
142 {
143 if ( managementDependencies != null )
144 {
145 return managementDependencies;
146 }
147
148 if ( project.getDependencyManagement() == null )
149 {
150 managementDependencies = new ManagementDependencies( null );
151 }
152 else
153 {
154 managementDependencies = new ManagementDependencies( project.getDependencyManagement().getDependencies() );
155 }
156
157 return managementDependencies;
158 }
159 }