Author: rfscholte Date: Thu Oct 20 20:41:56 2011 New Revision: 1187041 URL: http://svn.apache.org/viewvc?rev=1187041&view=rev Log: Fix DOXIA-450: Add Velocity Toolmanager support
Added: maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/test/resources/org/ maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/test/resources/org/apache/ maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/test/resources/org/apache/maven/ maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/test/resources/org/apache/maven/doxia/ maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/test/resources/org/apache/maven/doxia/siterenderer/ maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/test/resources/org/apache/maven/doxia/siterenderer/velocity-toolmanager.expected.txt maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/test/resources/org/apache/maven/doxia/siterenderer/velocity-toolmanager.vm Modified: maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/pom.xml 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/test/java/org/apache/maven/doxia/siterenderer/DefaultSiteRendererTest.java Modified: maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/pom.xml URL: http://svn.apache.org/viewvc/maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/pom.xml?rev=1187041&r1=1187040&r2=1187041&view=diff ============================================================================== --- maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/pom.xml (original) +++ maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/pom.xml Thu Oct 20 20:41:56 2011 @@ -136,6 +136,11 @@ under the License. <version>1.5</version> </dependency> <dependency> + <groupId>org.apache.velocity</groupId> + <artifactId>velocity-tools</artifactId> + <version>2.0</version> + </dependency> + <dependency> <groupId>commons-collections</groupId> <artifactId>commons-collections</artifactId> <version>3.2.1</version> 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=1187041&r1=1187040&r2=1187041&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 Thu Oct 20 20:41:56 2011 @@ -69,8 +69,8 @@ import org.apache.maven.doxia.siterender import org.apache.maven.doxia.util.XmlValidator; import org.apache.velocity.Template; -import org.apache.velocity.VelocityContext; import org.apache.velocity.context.Context; +import org.apache.velocity.tools.ToolManager; import org.codehaus.plexus.i18n.I18N; import org.codehaus.plexus.logging.AbstractLogEnabled; @@ -427,7 +427,8 @@ public class DefaultSiteRenderer private Context createContext( SiteRendererSink sink, SiteRenderingContext siteRenderingContext ) { - VelocityContext context = new VelocityContext(); + ToolManager toolManager = new ToolManager( true ); + Context context = toolManager.createContext(); // ---------------------------------------------------------------------- // Data objects Modified: maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/DefaultSiteRendererTest.java URL: http://svn.apache.org/viewvc/maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/DefaultSiteRendererTest.java?rev=1187041&r1=1187040&r2=1187041&view=diff ============================================================================== --- maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/DefaultSiteRendererTest.java (original) +++ maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/DefaultSiteRendererTest.java Thu Oct 20 20:41:56 2011 @@ -19,6 +19,7 @@ package org.apache.maven.doxia.siterende * under the License. */ +import java.io.ByteArrayInputStream; import java.io.File; import java.io.FileOutputStream; import java.io.FileReader; @@ -26,22 +27,24 @@ import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.io.Reader; +import java.io.StringWriter; import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Locale; import java.util.Map; +import org.apache.commons.io.IOUtils; +import org.apache.maven.doxia.sink.render.RenderingContext; import org.apache.maven.doxia.site.decoration.DecorationModel; import org.apache.maven.doxia.site.decoration.io.xpp3.DecorationXpp3Reader; +import org.apache.maven.doxia.siterenderer.sink.SiteRendererSink; import org.apache.maven.doxia.xsd.AbstractXmlValidator; - import org.codehaus.plexus.PlexusTestCase; import org.codehaus.plexus.util.FileUtils; import org.codehaus.plexus.util.IOUtil; import org.codehaus.plexus.util.ReaderFactory; import org.codehaus.plexus.util.StringUtils; - import org.xml.sax.EntityResolver; /** @@ -155,6 +158,22 @@ public class DefaultSiteRendererTest // ---------------------------------------------------------------------- validatePages(); } + + public void testVelocityToolManager() + throws Exception + { + StringWriter writer = new StringWriter(); + + SiteRenderingContext siteRenderingContext = new SiteRenderingContext(); + siteRenderingContext.setTemplateName( "org/apache/maven/doxia/siterenderer/velocity-toolmanager.vm" ); + RenderingContext context = new RenderingContext( new File( "" ), "document.html" ); + SiteRendererSink sink = new SiteRendererSink( context ); + renderer.generateDocument( writer, sink, siteRenderingContext ); + + String renderResult = writer.toString(); + String expectedResult = IOUtils.toString( getClass().getResourceAsStream( "velocity-toolmanager.expected.txt" ) ); + assertEquals( expectedResult, renderResult ); + } private SiteRenderingContext getSiteRenderingContext( DecorationModel decoration, String siteDir, boolean validate ) { Added: maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/test/resources/org/apache/maven/doxia/siterenderer/velocity-toolmanager.expected.txt URL: http://svn.apache.org/viewvc/maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/test/resources/org/apache/maven/doxia/siterenderer/velocity-toolmanager.expected.txt?rev=1187041&view=auto ============================================================================== --- maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/test/resources/org/apache/maven/doxia/siterenderer/velocity-toolmanager.expected.txt (added) +++ maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/test/resources/org/apache/maven/doxia/siterenderer/velocity-toolmanager.expected.txt Thu Oct 20 20:41:56 2011 @@ -0,0 +1,2 @@ +Maven 2 & 3 +This is... \ No newline at end of file Added: maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/test/resources/org/apache/maven/doxia/siterenderer/velocity-toolmanager.vm URL: http://svn.apache.org/viewvc/maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/test/resources/org/apache/maven/doxia/siterenderer/velocity-toolmanager.vm?rev=1187041&view=auto ============================================================================== --- maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/test/resources/org/apache/maven/doxia/siterenderer/velocity-toolmanager.vm (added) +++ maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/test/resources/org/apache/maven/doxia/siterenderer/velocity-toolmanager.vm Thu Oct 20 20:41:56 2011 @@ -0,0 +1,2 @@ +$esc.html('Maven 2 & 3') +$display.truncate("This is a long string.", 10) \ No newline at end of file