You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by rf...@apache.org on 2011/12/24 15:30:00 UTC
svn commit: r1222981 - in
/maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/main:
java/org/apache/maven/doxia/siterenderer/
resources/org/apache/maven/doxia/siterenderer/resources/
Author: rfscholte
Date: Sat Dec 24 14:30:00 2011
New Revision: 1222981
URL: http://svn.apache.org/viewvc?rev=1222981&view=rev
Log:
DOXIA-458: Make publish date configurable
Modified:
maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/DefaultSiteRenderer.java
maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/SiteRenderingContext.java
maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/default-site.vm
Modified: maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/DefaultSiteRenderer.java
URL: http://svn.apache.org/viewvc/maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/DefaultSiteRenderer.java?rev=1222981&r1=1222980&r2=1222981&view=diff
==============================================================================
--- maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/DefaultSiteRenderer.java (original)
+++ maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/DefaultSiteRenderer.java Sat Dec 24 14:30:00 2011
@@ -465,6 +465,9 @@ public class DefaultSiteRenderer
context.put( "dateRevision", sdf.format( new Date() ) );
context.put( "currentDate", new Date() );
+
+ context.put( "publishDate", siteRenderingContext.getPublishDate() );
+
Locale locale = siteRenderingContext.getLocale();
context.put( "dateFormat", DateFormat.getDateInstance( DateFormat.DEFAULT, locale ) );
Modified: maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/SiteRenderingContext.java
URL: http://svn.apache.org/viewvc/maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/SiteRenderingContext.java?rev=1222981&r1=1222980&r2=1222981&view=diff
==============================================================================
--- maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/SiteRenderingContext.java (original)
+++ maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/SiteRenderingContext.java Sat Dec 24 14:30:00 2011
@@ -22,6 +22,7 @@ package org.apache.maven.doxia.siterende
import java.io.File;
import java.util.ArrayList;
import java.util.Collections;
+import java.util.Date;
import java.util.List;
import java.util.Locale;
import java.util.Map;
@@ -68,6 +69,8 @@ public class SiteRenderingContext
private boolean validate;
+ private Date publishDate;
+
/**
* If input documents should be validated before parsing.
* By default no validation is performed.
@@ -372,4 +375,25 @@ public class SiteRenderingContext
{
this.outputEncoding = outputEncoding;
}
+
+ /**
+ * <p>If you want to specify a specific publish date instead of the current date.</p>
+ *
+ * @return the publish date, can be {@code null}
+ */
+ public Date getPublishDate()
+ {
+ return publishDate;
+ }
+
+ /**
+ * <p>Specify a specific publish date instead of the current date.</p>
+ *
+ * @param publishDate the publish date
+ */
+ public void setPublishDate( Date publishDate )
+ {
+ this.publishDate = publishDate;
+ }
+
}
Modified: maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/default-site.vm
URL: http://svn.apache.org/viewvc/maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/default-site.vm?rev=1222981&r1=1222980&r2=1222981&view=diff
==============================================================================
--- maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/default-site.vm (original)
+++ maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/default-site.vm Sat Dec 24 14:30:00 2011
@@ -289,19 +289,25 @@
#end
#end
##
-#macro ( publishDate $position $publishDate $version )
- #if ( $publishDate && $publishDate.format )
- #set ( $format = $publishDate.format )
+#macro ( publishDate $position $decorationPublishDate $version )
+ #if ( $decorationPublishDate && $decorationPublishDate.format )
+ #set ( $format = $decorationPublishDate.format )
#else
#set ( $format = "yyyy-MM-dd" )
#end
##
$dateFormat.applyPattern( $format )
##
- #set ( $dateToday = $dateFormat.format( $currentDate ) )
+ #if ( $publishDate )
+ #set ( $dateValue = $dateFormat.format( $publishDate ) )
+ #elseif ( $decoration.custom.getChild( 'publishDate' ) )
+ #set ( $dateValue = $decoration.custom.getChild( 'publishDate' ).getValue() )
+ #else
+ #set ( $dateValue = $dateFormat.format( $currentDate ) )
+ #end
##
- #if ( $publishDate && $publishDate.position )
- #set ( $datePosition = $publishDate.position )
+ #if ( $decorationPublishDate && $decorationPublishDate.position )
+ #set ( $datePosition = $decorationPublishDate.position )
#else
#set ( $datePosition = "left" )
#end
@@ -328,20 +334,20 @@
##
#if ( $datePosition.equalsIgnoreCase( $position ) )
#if ( ( $datePosition.equalsIgnoreCase( "right" ) ) || ( $datePosition.equalsIgnoreCase( "bottom" ) ) )
- $prefix <span id="publishDate">$i18n.getString( "site-renderer", $locale, "template.lastpublished" ): $dateToday</span>
+ $prefix <span id="publishDate">$i18n.getString( "site-renderer", $locale, "template.lastpublished" ): $dateValue</span>
#if ( $versionPosition.equalsIgnoreCase( $position ) )
| <span id="projectVersion">$i18n.getString( "site-renderer", $locale, "template.version" ): ${project.version}</span>
#end
#elseif ( ( $datePosition.equalsIgnoreCase( "navigation-bottom" ) ) || ( $datePosition.equalsIgnoreCase( "navigation-top" ) ) )
<div id="lastPublished">
- <span id="publishDate">$i18n.getString( "site-renderer", $locale, "template.lastpublished" ): $dateToday</span>
+ <span id="publishDate">$i18n.getString( "site-renderer", $locale, "template.lastpublished" ): $dateValue</span>
#if ( $versionPosition.equalsIgnoreCase( $position ) )
| <span id="projectVersion">$i18n.getString( "site-renderer", $locale, "template.version" ): ${project.version}</span>
#end
</div>
#elseif ( $datePosition.equalsIgnoreCase("left") )
<div class="xleft">
- <span id="publishDate">$i18n.getString( "site-renderer", $locale, "template.lastpublished" ): $dateToday</span>
+ <span id="publishDate">$i18n.getString( "site-renderer", $locale, "template.lastpublished" ): $dateValue</span>
#if ( $versionPosition.equalsIgnoreCase( $position ) )
| <span id="projectVersion">$i18n.getString( "site-renderer", $locale, "template.version" ): ${project.version}</span>
#end