You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by mi...@apache.org on 2016/10/15 12:58:28 UTC

svn commit: r1765053 - in /maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src: main/java/org/apache/maven/doxia/siterenderer/DefaultSiteRenderer.java site/apt/index.apt.vm

Author: michaelo
Date: Sat Oct 15 12:58:28 2016
New Revision: 1765053

URL: http://svn.apache.org/viewvc?rev=1765053&view=rev
Log:
[MSITE-782] Support for custom Velocity tools has disappeared

Instruct Velocity to load possible custom tools from /META-INF/maven/site-tools.xml found in the classpath of the Maven Site Plugin.

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/site/apt/index.apt.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=1765053&r1=1765052&r2=1765053&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 Oct 15 12:58:28 2016
@@ -78,7 +78,9 @@ import org.apache.velocity.Template;
 import org.apache.velocity.context.Context;
 import org.apache.velocity.tools.Scope;
 import org.apache.velocity.tools.ToolManager;
+import org.apache.velocity.tools.config.ConfigurationUtils;
 import org.apache.velocity.tools.config.EasyFactoryConfiguration;
+import org.apache.velocity.tools.config.FactoryConfiguration;
 import org.apache.velocity.tools.generic.AlternatorTool;
 import org.apache.velocity.tools.generic.ClassTool;
 import org.apache.velocity.tools.generic.ComparisonDateTool;
@@ -150,6 +152,8 @@ public class DefaultSiteRenderer
 
     private static final String SKIN_TEMPLATE_LOCATION = "META-INF/maven/site.vm";
 
+    private static final String TOOLS_LOCATION = "META-INF/maven/site-tools.xml";
+
     // ----------------------------------------------------------------------
     // Renderer implementation
     // ----------------------------------------------------------------------
@@ -497,6 +501,13 @@ public class DefaultSiteRenderer
             .tool( SortTool.class )
             .tool( XmlTool.class );
 
+        FactoryConfiguration customConfig = ConfigurationUtils.findInClasspath( TOOLS_LOCATION );
+
+        if ( customConfig != null )
+        {
+            config.addConfiguration( customConfig );
+        }
+
         ToolManager manager = new ToolManager( false, false );
         manager.configure( config );
 

Modified: maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/site/apt/index.apt.vm
URL: http://svn.apache.org/viewvc/maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/site/apt/index.apt.vm?rev=1765053&r1=1765052&r2=1765053&view=diff
==============================================================================
--- maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/site/apt/index.apt.vm (original)
+++ maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/site/apt/index.apt.vm Sat Oct 15 12:58:28 2016
@@ -137,6 +137,9 @@ Doxia Sitetools - Site Renderer
 | <<<xml>>>        | {{{$generic/XmlTool.html}XmlTool}}                       | For reading/navigating XML files. This uses dom4j under the covers and provides complete XPath support.
 *------------------+----------------------------------------------------------+-------------------------------+
 
+  If you intend to use custom Velocity tools, add them to the Maven Site Plugin's dependency list and make sure
+  that they have a bundled configuration file in <<</META-INF/maven/site-tools.xml>>>.
+
   See <<<{{{./xref/org/apache/maven/doxia/siterenderer/DefaultSiteRenderer.html\#L470}DefaultSiteRenderer.createToolManagedVelocityContext(...)}}>>>
   source for more details and the {{{http://velocity.apache.org/tools/devel/summary.html}tools usage summary}}.