You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by be...@apache.org on 2008/04/23 19:51:50 UTC
svn commit: r650961 - in
/maven/plugins/trunk/maven-changes-plugin/src/main/java/org/apache/maven/plugin/changes:
ChangesMojo.java ChangesReportGenerator.java
Author: bentmann
Date: Wed Apr 23 10:51:49 2008
New Revision: 650961
URL: http://svn.apache.org/viewvc?rev=650961&view=rev
Log:
[MCHANGES-110] No issue links generated if ${project.issueManagement.url} empty but issueLinkTemplate provided
Modified:
maven/plugins/trunk/maven-changes-plugin/src/main/java/org/apache/maven/plugin/changes/ChangesMojo.java
maven/plugins/trunk/maven-changes-plugin/src/main/java/org/apache/maven/plugin/changes/ChangesReportGenerator.java
Modified: maven/plugins/trunk/maven-changes-plugin/src/main/java/org/apache/maven/plugin/changes/ChangesMojo.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-changes-plugin/src/main/java/org/apache/maven/plugin/changes/ChangesMojo.java?rev=650961&r1=650960&r2=650961&view=diff
==============================================================================
--- maven/plugins/trunk/maven-changes-plugin/src/main/java/org/apache/maven/plugin/changes/ChangesMojo.java (original)
+++ maven/plugins/trunk/maven-changes-plugin/src/main/java/org/apache/maven/plugin/changes/ChangesMojo.java Wed Apr 23 10:51:49 2008
@@ -102,14 +102,14 @@
{
ChangesReportGenerator report = new ChangesReportGenerator( xmlPath, getLog() );
- if ( ( url == null ) || ( url.trim().equals( "" ) ) )
+ report.setIssueLink( issueLinkTemplate );
+ report.setUrl( url );
+
+ if ( !report.canGenerateIssueLinks() )
{
- getLog().warn(
- "No Issue Management/URL defined in pom.xml. Links to your issues will not work correctly." );
+ getLog().warn( "No issue management URL defined in POM. Links to your issues will not work correctly." );
}
- report.setIssueLink( issueLinkTemplate );
- report.setUrl( url );
report.doGenerateReport( getBundle( locale ), getSink() );
// Copy the images
Modified: maven/plugins/trunk/maven-changes-plugin/src/main/java/org/apache/maven/plugin/changes/ChangesReportGenerator.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-changes-plugin/src/main/java/org/apache/maven/plugin/changes/ChangesReportGenerator.java?rev=650961&r1=650960&r2=650961&view=diff
==============================================================================
--- maven/plugins/trunk/maven-changes-plugin/src/main/java/org/apache/maven/plugin/changes/ChangesReportGenerator.java (original)
+++ maven/plugins/trunk/maven-changes-plugin/src/main/java/org/apache/maven/plugin/changes/ChangesReportGenerator.java Wed Apr 23 10:51:49 2008
@@ -35,6 +35,17 @@
*/
public class ChangesReportGenerator
{
+
+ /**
+ * The token in {@link #issueLink} denoting the base URL for the issue management.
+ */
+ private static final String URL_TOKEN = "%URL%";
+
+ /**
+ * The token in {@link #issueLink} denoting the issue ID.
+ */
+ private static final String ISSUE_TOKEN = "%ISSUE%";
+
private ChangesXML report;
private String issueLink;
@@ -70,6 +81,17 @@
return url;
}
+ /**
+ * Checks whether links to the issues can be generated.
+ *
+ * @return <code>true</code> if issue links can be generated, <code>false</code> otherwise.
+ */
+ public boolean canGenerateIssueLinks()
+ {
+ return !StringUtils.isBlank( getIssueLink() )
+ && ( !StringUtils.isBlank( getUrl() ) || getIssueLink().indexOf( URL_TOKEN ) < 0 );
+ }
+
public void doGenerateEmptyReport( ResourceBundle bundle, Sink sink, String message )
{
sinkBeginReport( sink, bundle );
@@ -120,7 +142,7 @@
{
sink.text( " " + bundle.getString( "report.changes.text.fixes" ) + " " );
- if ( StringUtils.isEmpty( url ) )
+ if ( !canGenerateIssueLinks() )
{
sink.text( action.getIssue() );
@@ -234,13 +256,15 @@
private String parseIssueLink( String issue )
{
- String parseLink = "";
-
- String url = this.url.substring( 0, this.url.lastIndexOf( "/" ) );
+ String parseLink;
- parseLink = this.issueLink.replaceFirst( "%ISSUE%", issue );
+ parseLink = this.issueLink.replaceFirst( ISSUE_TOKEN, issue );
- parseLink = parseLink.replaceFirst( "%URL%", url );
+ if ( parseLink.indexOf( URL_TOKEN ) >= 0 )
+ {
+ String url = this.url.substring( 0, this.url.lastIndexOf( "/" ) );
+ parseLink = parseLink.replaceFirst( URL_TOKEN, url );
+ }
return parseLink;
}