Skip to content

Commit 90f65c2

Browse files
committed
[MPIR-422] Stop overriding AbstractMavenReport#execute()
This closes #41
1 parent 91d0efe commit 90f65c2

15 files changed

+27
-129
lines changed

src/main/java/org/apache/maven/report/projectinfo/AbstractProjectInfoReport.java

Lines changed: 0 additions & 81 deletions
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,7 @@
2020
*/
2121

2222
import java.io.File;
23-
import java.io.FileOutputStream;
2423
import java.io.IOException;
25-
import java.io.OutputStreamWriter;
26-
import java.io.Writer;
2724
import java.net.MalformedURLException;
2825
import java.net.URL;
2926
import java.net.URLClassLoader;
@@ -36,26 +33,15 @@
3633
import java.util.MissingResourceException;
3734
import java.util.ResourceBundle;
3835

39-
import org.apache.maven.artifact.Artifact;
4036
import org.apache.maven.artifact.repository.ArtifactRepository;
41-
import org.apache.maven.doxia.site.decoration.Body;
42-
import org.apache.maven.doxia.site.decoration.DecorationModel;
43-
import org.apache.maven.doxia.siterenderer.Renderer;
44-
import org.apache.maven.doxia.siterenderer.RendererException;
45-
import org.apache.maven.doxia.siterenderer.RenderingContext;
46-
import org.apache.maven.doxia.siterenderer.SiteRenderingContext;
47-
import org.apache.maven.doxia.siterenderer.sink.SiteRendererSink;
4837
import org.apache.maven.doxia.tools.SiteTool;
49-
import org.apache.maven.doxia.tools.SiteToolException;
5038
import org.apache.maven.execution.MavenSession;
5139
import org.apache.maven.model.Plugin;
52-
import org.apache.maven.plugin.MojoExecutionException;
5340
import org.apache.maven.plugins.annotations.Component;
5441
import org.apache.maven.plugins.annotations.Parameter;
5542
import org.apache.maven.project.MavenProject;
5643
import org.apache.maven.project.ProjectBuilder;
5744
import org.apache.maven.reporting.AbstractMavenReport;
58-
import org.apache.maven.reporting.MavenReportException;
5945
import org.apache.maven.repository.RepositorySystem;
6046
import org.apache.maven.settings.Settings;
6147
import org.apache.maven.shared.transfer.artifact.resolve.ArtifactResolver;
@@ -65,7 +51,6 @@
6551
import org.codehaus.plexus.interpolation.PrefixedObjectValueSource;
6652
import org.codehaus.plexus.interpolation.PropertiesBasedValueSource;
6753
import org.codehaus.plexus.interpolation.RegexBasedInterpolator;
68-
import org.codehaus.plexus.util.IOUtil;
6954
import org.codehaus.plexus.util.StringUtils;
7055
import org.codehaus.plexus.util.xml.Xpp3Dom;
7156

@@ -200,63 +185,6 @@ public boolean canGenerateReport()
200185
return !skip;
201186
}
202187

203-
@Override
204-
public void execute()
205-
throws MojoExecutionException
206-
{
207-
if ( !canGenerateReport() )
208-
{
209-
return;
210-
}
211-
212-
// TODO: push to a helper? Could still be improved by taking more of the site information from the site plugin
213-
Writer writer = null;
214-
try
215-
{
216-
String filename = getOutputName() + ".html";
217-
218-
DecorationModel model = new DecorationModel();
219-
model.setBody( new Body() );
220-
221-
Map<String, Object> attributes = new HashMap<>();
222-
attributes.put( "outputEncoding", "UTF-8" );
223-
attributes.put( "project", project );
224-
225-
Locale locale = Locale.getDefault();
226-
Artifact defaultSkin =
227-
siteTool.getDefaultSkinArtifact( localRepository, project.getRemoteArtifactRepositories() );
228-
229-
SiteRenderingContext siteContext = siteRenderer.createContextForSkin( defaultSkin, attributes,
230-
model, getName( locale ), locale );
231-
232-
RenderingContext context = new RenderingContext( outputDirectory, filename, null );
233-
234-
SiteRendererSink sink = new SiteRendererSink( context );
235-
236-
generate( sink, null, locale );
237-
238-
outputDirectory.mkdirs();
239-
240-
writer = new OutputStreamWriter( new FileOutputStream( new File( outputDirectory, filename ) ), "UTF-8" );
241-
242-
siteRenderer.mergeDocumentIntoSite( writer, sink, siteContext );
243-
244-
siteRenderer.copyResources( siteContext, outputDirectory );
245-
246-
writer.close();
247-
writer = null;
248-
}
249-
catch ( RendererException | IOException | SiteToolException | MavenReportException e )
250-
{
251-
throw new MojoExecutionException( "An error has occurred in " + getName( Locale.ENGLISH )
252-
+ " report generation.", e );
253-
}
254-
finally
255-
{
256-
IOUtil.close( writer );
257-
}
258-
}
259-
260188
@Override
261189
public String getCategoryName()
262190
{
@@ -374,15 +302,6 @@ protected String getPluginParameter( String pluginId, String param )
374302
return null;
375303
}
376304

377-
/**
378-
* {@inheritDoc}
379-
*/
380-
@Override
381-
protected Renderer getSiteRenderer()
382-
{
383-
return siteRenderer;
384-
}
385-
386305
/**
387306
* @param locale The locale
388307
* @param key The key to search for

src/test/java/org/apache/maven/report/projectinfo/AbstractProjectInfoTestCase.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -172,7 +172,7 @@ protected File generateReport( String goal, String pluginXml )
172172
{
173173
File pluginXmlFile = new File( getBasedir(), "src/test/resources/plugin-configs/" + pluginXml );
174174
AbstractProjectInfoReport mojo = createReportMojo( goal, pluginXmlFile );
175-
return generateReport( mojo, pluginXmlFile);
175+
return generateReport( mojo, pluginXmlFile );
176176
}
177177

178178
protected AbstractProjectInfoReport createReportMojo( String goal, File pluginXmlFile )

src/test/java/org/apache/maven/report/projectinfo/CiManagementReportTest.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,8 +64,7 @@ public void testReport()
6464
assertTrue( response.getContentLength() > 0 );
6565

6666
// Test the Page title
67-
String expectedTitle = prepareTitle( getString( "report.ci-management.name" ),
68-
getString( "report.ci-management.title" ) );
67+
String expectedTitle = getString( "report.ci-management.title" );
6968
assertEquals( expectedTitle, response.getTitle() );
7069

7170
// Test the texts

src/test/java/org/apache/maven/report/projectinfo/DependenciesReportTest.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,8 +64,7 @@ public void testReport()
6464
assertTrue( response.getContentLength() > 0 );
6565

6666
// Test the Page title
67-
String expectedTitle = prepareTitle( getString( "report.dependencies.name" ),
68-
getString( "report.dependencies.title" ) );
67+
String expectedTitle = getString( "report.dependencies.title" );
6968
assertEquals( expectedTitle, response.getTitle() );
7069

7170
// Test the tables

src/test/java/org/apache/maven/report/projectinfo/DependencyConvergenceReportTest.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,8 +63,7 @@ public void testReport()
6363
assertTrue( response.getContentLength() > 0 );
6464

6565
// Test the Page title
66-
String expectedTitle = prepareTitle( getString( "report.dependency-convergence.name" ),
67-
getString( "report.dependency-convergence.reactor.title" ) );
66+
String expectedTitle = getString( "report.dependency-convergence.reactor.title" );
6867
assertEquals( expectedTitle, response.getTitle() );
6968

7069
// Test the texts

src/test/java/org/apache/maven/report/projectinfo/DependencyManagementReportTest.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,8 +64,7 @@ public void testReport()
6464
assertTrue( response.getContentLength() > 0 );
6565

6666
// Test the Page title
67-
String expectedTitle = prepareTitle( getString( "report.dependency-management.name" ),
68-
getString( "report.dependency-management.title" ) );
67+
String expectedTitle = getString( "report.dependency-management.title" );
6968
assertEquals( expectedTitle, response.getTitle() );
7069

7170
// Test the tables

src/test/java/org/apache/maven/report/projectinfo/IndexReportTest.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,8 +64,7 @@ public void testReport()
6464

6565
// Test the Page title
6666
// Index does not have a 'name' but 'title' only
67-
String expectedTitle = prepareTitle( getString( "report.index.title" ),
68-
getString( "report.index.title" ) );
67+
String expectedTitle = getString( "report.index.title" );
6968
assertEquals( expectedTitle, response.getTitle() );
7069

7170
// Test the texts

src/test/java/org/apache/maven/report/projectinfo/IssueManagementReportTest.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,8 +64,7 @@ public void testReport()
6464
assertTrue( response.getContentLength() > 0 );
6565

6666
// Test the Page title
67-
String expectedTitle = prepareTitle( getString( "report.issue-management.name" ),
68-
getString( "report.issue-management.title" ) );
67+
String expectedTitle = getString( "report.issue-management.title" );
6968
assertEquals( expectedTitle, response.getTitle() );
7069

7170
// Test the links

src/test/java/org/apache/maven/report/projectinfo/LicensesReportTest.java

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -64,8 +64,7 @@ public void testReport()
6464
assertTrue( response.getContentLength() > 0 );
6565

6666
// Test the Page title
67-
String expectedTitle = prepareTitle( getString( "report.licenses.name" ),
68-
getString( "report.licenses.title" ) );
67+
String expectedTitle = getString( "report.licenses.title" );
6968
assertEquals( expectedTitle, response.getTitle() );
7069

7170
// Test the texts
@@ -99,8 +98,7 @@ public void testReportLinksOnly()
9998
assertTrue( response.getContentLength() > 0 );
10099

101100
// Test the Page title
102-
String expectedTitle = prepareTitle( getString( "report.licenses.name" ),
103-
getString( "report.licenses.title" ) );
101+
String expectedTitle = getString( "report.licenses.title" );
104102
assertEquals( expectedTitle, response.getTitle() );
105103

106104
// Test the texts

src/test/java/org/apache/maven/report/projectinfo/MailingListsReportTest.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,8 +65,7 @@ public void testReport()
6565
assertTrue( response.getContentLength() > 0 );
6666

6767
// Test the Page title
68-
String expectedTitle = prepareTitle( getString( "report.mailing-lists.name" ),
69-
getString( "report.mailing-lists.title" ) );
68+
String expectedTitle = getString( "report.mailing-lists.title" );
7069
assertEquals( expectedTitle, response.getTitle() );
7170

7271
// Test the texts

src/test/java/org/apache/maven/report/projectinfo/ModulesReportTest.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -46,15 +46,15 @@ public class ModulesReportTest
4646
* WebConversation object
4747
*/
4848
private static final WebConversation WEB_CONVERSATION = new WebConversation();
49-
49+
5050
@Override
5151
protected AbstractProjectInfoReport createReportMojo( String goal, File pluginXmlFile )
5252
throws Exception
5353
{
5454
AbstractProjectInfoReport mojo = super.createReportMojo( goal, pluginXmlFile );
55-
55+
5656
mojo.setLog( new SilentLog() );
57-
57+
5858
return mojo;
5959
}
6060

@@ -81,7 +81,7 @@ public void testReport()
8181
assertTrue( response.getContentLength() > 0 );
8282

8383
// Test the Page title
84-
String expectedTitle = prepareTitle( getString( "report.modules.name" ), getString( "report.modules.title" ) );
84+
String expectedTitle = getString( "report.modules.title" );
8585
assertEquals( expectedTitle, response.getTitle() );
8686

8787
// Test the texts

src/test/java/org/apache/maven/report/projectinfo/PluginManagementReportTest.java

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -53,33 +53,31 @@ public class PluginManagementReportTest
5353
*/
5454
private static final WebConversation WEB_CONVERSATION = new WebConversation();
5555

56-
57-
5856
@Override
5957
protected AbstractProjectInfoReport createReportMojo( String goal, File pluginXmlFile )
6058
throws Exception
6159
{
6260
AbstractProjectInfoReport mojo = super.createReportMojo( goal, pluginXmlFile );
63-
61+
6462
ProjectBuilder builder = mock( ProjectBuilder.class );
65-
63+
6664
when( builder.build( isA( Artifact.class ),
6765
isA( ProjectBuildingRequest.class ) ) ).thenAnswer( new Answer<ProjectBuildingResult>()
6866
{
6967
@Override
7068
public ProjectBuildingResult answer( InvocationOnMock invocation )
7169
throws Throwable
7270
{
73-
return createProjectBuildingResult( (Artifact) invocation.getArgument( 0 ),
71+
return createProjectBuildingResult( (Artifact) invocation.getArgument( 0 ),
7472
"http://m.a.o/" );
7573
}
7674
} );
7775

7876
setVariableValueToObject( mojo, "projectBuilder", builder );
79-
77+
8078
return mojo;
8179
}
82-
80+
8381
/**
8482
* Test report
8583
*
@@ -103,8 +101,7 @@ public void testReport()
103101
assertTrue( response.getContentLength() > 0 );
104102

105103
// Test the Page title
106-
String expectedTitle = prepareTitle( getString( "report.plugin-management.name" ),
107-
getString( "report.plugin-management.title" ) );
104+
String expectedTitle = getString( "report.plugin-management.title" );
108105
assertEquals( expectedTitle, response.getTitle() );
109106

110107
// Test the tables
@@ -142,8 +139,7 @@ public void testReportEclipseM2EPluginLifecycleMapping()
142139
assertTrue( response.getContentLength() > 0 );
143140

144141
// Test the Page title
145-
String expectedTitle = prepareTitle( getString( "report.plugin-management.name" ),
146-
getString( "report.plugin-management.title" ) );
142+
String expectedTitle = getString( "report.plugin-management.title" );
147143
assertEquals( expectedTitle, response.getTitle() );
148144

149145
// Test the tables

src/test/java/org/apache/maven/report/projectinfo/ScmReportTest.java

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -66,15 +66,12 @@ public void testReport()
6666
assertTrue( response.getContentLength() > 0 );
6767

6868
// Test the Page title
69-
String expectedTitle = prepareTitle( getString( "report.scm.name" ),
70-
getString( "report.scm.title" ) );
69+
String expectedTitle = getString( "report.scm.title" );
7170
assertEquals( expectedTitle, response.getTitle() );
7271

7372
// Test the texts
7473
TextBlock[] textBlocks = response.getTextBlocks();
75-
76-
assertEquals( textBlocks.length, 6 );
77-
74+
assertEquals( 6, textBlocks.length );
7875
assertEquals( getString( "report.scm.overview.title" ), textBlocks[0].getText() );
7976
assertEquals( getString( "report.scm.general.intro" ), textBlocks[1].getText() );
8077
assertEquals( getString( "report.scm.webaccess.title" ), textBlocks[2].getText() );
@@ -93,8 +90,7 @@ public void testReportWithWrongUrl()
9390
{
9491
File pluginXmlFile = new File( getBasedir(), "src/test/resources/plugin-configs/"
9592
+ "scm-wrong-url-plugin-config.xml" );
96-
Mojo mojo = lookupMojo( "scm", pluginXmlFile );
97-
assertNotNull( "Mojo found.", mojo );
93+
Mojo mojo = createReportMojo( "scm", pluginXmlFile );
9894

9995
setVariableValueToObject( mojo, "anonymousConnection", "scm:svn" );
10096
try

src/test/java/org/apache/maven/report/projectinfo/SummaryReportTest.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,8 +63,7 @@ public void testReport()
6363
assertTrue( response.getContentLength() > 0 );
6464

6565
// Test the Page title
66-
String expectedTitle = prepareTitle( getString( "report.summary.name" ),
67-
getString( "report.summary.title" ) );
66+
String expectedTitle = getString( "report.summary.title" );
6867
assertEquals( expectedTitle, response.getTitle() );
6968

7069
// Test the texts

src/test/java/org/apache/maven/report/projectinfo/TeamReportTest.java

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -70,17 +70,14 @@ public void testReport()
7070
assertTrue( response.getContentLength() > 0 );
7171

7272
// Test the Page title
73-
String expectedTitle = prepareTitle( getString( "report.team.name" ),
74-
getString( "report.team.title" ) );
73+
String expectedTitle = getString( "report.team.title" );
7574
assertEquals( expectedTitle, response.getTitle() );
7675

7776
assertTrue( response.getText().contains( "gravatar" ));
7877

7978
// Test the texts
8079
TextBlock[] textBlocks = response.getTextBlocks();
81-
82-
assertEquals( textBlocks.length, 7 );
83-
80+
assertEquals( 7, textBlocks.length );
8481
assertEquals( getString( "report.team.intro.title" ), textBlocks[0].getText() );
8582
assertEquals( getString( "report.team.intro.description1" ), textBlocks[1].getText() );
8683
assertEquals( getString( "report.team.intro.description2" ), textBlocks[2].getText() );

0 commit comments

Comments
 (0)