Author: brett Date: Tue Dec 20 03:10:22 2005 New Revision: 357960 URL: http://svn.apache.org/viewcvs?rev=357960&view=rev Log: remove duplicated site renderer
Added: maven/doxia/trunk/doxia-core/src/test/resources/codehaus.dst - copied unchanged from r357906, maven/doxia/trunk/doxia-core/src/main/resources/codehaus.dst Removed: maven/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/plugin/ maven/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/site/renderer/DefaultSiteRenderer.java maven/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/site/renderer/SiteRenderer.java maven/doxia/trunk/doxia-core/src/main/resources/codehaus.dst maven/doxia/trunk/doxia-core/src/main/resources/maven.dst maven/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/SiteRenderingTest.java Modified: maven/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/parser/AbstractParser.java maven/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/SinkDescriptorReaderTest.java maven/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/XhtmlSinkTest.java maven/doxia/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/DefaultSiteRenderer.java maven/doxia/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/Renderer.java Modified: maven/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/parser/AbstractParser.java URL: http://svn.apache.org/viewcvs/maven/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/parser/AbstractParser.java?rev=357960&r1=357959&r2=357960&view=diff ============================================================================== --- maven/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/parser/AbstractParser.java (original) +++ maven/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/parser/AbstractParser.java Tue Dec 20 03:10:22 2005 @@ -35,22 +35,13 @@ */ private MacroManager macroManager; - public MacroManager getMacroManager() - { - return macroManager; - } - // Made public right now because of the structure of the APT parser and // all its inner classes. public void executeMacro( String macroId, MacroRequest request, Sink sink ) { try { -// System.out.println( "macroId = " + macroId ); -// -// System.out.println( "getMacroManager() = " + getMacroManager() ); - - Macro macro = getMacroManager().getMacro( macroId ); + Macro macro = macroManager.getMacro( macroId ); try { Modified: maven/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/SinkDescriptorReaderTest.java URL: http://svn.apache.org/viewcvs/maven/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/SinkDescriptorReaderTest.java?rev=357960&r1=357959&r2=357960&view=diff ============================================================================== --- maven/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/SinkDescriptorReaderTest.java (original) +++ maven/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/SinkDescriptorReaderTest.java Tue Dec 20 03:10:22 2005 @@ -35,7 +35,7 @@ { String basedir = System.getProperty( "basedir" ); - FileReader reader = new FileReader( new File( basedir, "src/main/resources/codehaus.dst" ) ); + FileReader reader = new FileReader( new File( basedir, "src/test/resources/codehaus.dst" ) ); SinkDescriptorReader sdr = new SinkDescriptorReader(); Modified: maven/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/XhtmlSinkTest.java URL: http://svn.apache.org/viewcvs/maven/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/XhtmlSinkTest.java?rev=357960&r1=357959&r2=357960&view=diff ============================================================================== --- maven/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/XhtmlSinkTest.java (original) +++ maven/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/XhtmlSinkTest.java Tue Dec 20 03:10:22 2005 @@ -53,7 +53,7 @@ RenderingContext renderingContext = new RenderingContext( getBasedirFile(), new File( getBasedirFile(), xdoc ).getPath(), navigation ); - FileReader reader = new FileReader( new File( getBasedirFile(), "src/main/resources/codehaus.dst" ) ); + FileReader reader = new FileReader( new File( getBasedirFile(), "src/test/resources/codehaus.dst" ) ); SinkDescriptorReader sdr = new SinkDescriptorReader(); Modified: maven/doxia/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/DefaultSiteRenderer.java URL: http://svn.apache.org/viewcvs/maven/doxia/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/DefaultSiteRenderer.java?rev=357960&r1=357959&r2=357960&view=diff ============================================================================== --- maven/doxia/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/DefaultSiteRenderer.java (original) +++ maven/doxia/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/DefaultSiteRenderer.java Tue Dec 20 03:10:22 2005 @@ -17,6 +17,10 @@ */ import org.apache.maven.doxia.Doxia; +import org.apache.maven.doxia.module.xhtml.SinkDescriptorReader; +import org.apache.maven.doxia.module.xhtml.XhtmlSink; +import org.apache.maven.doxia.module.xhtml.decoration.model.DecorationModel; +import org.apache.maven.doxia.module.xhtml.decoration.model.DecorationModelReader; import org.apache.maven.doxia.module.xhtml.decoration.render.RenderingContext; import org.apache.maven.doxia.site.module.SiteModule; import org.apache.maven.doxia.site.module.manager.SiteModuleManager; @@ -27,6 +31,7 @@ import org.codehaus.plexus.i18n.I18N; import org.codehaus.plexus.logging.AbstractLogEnabled; import org.codehaus.plexus.util.FileUtils; +import org.codehaus.plexus.util.IOUtil; import org.codehaus.plexus.util.PathTool; import org.codehaus.plexus.util.StringInputStream; import org.codehaus.plexus.util.StringUtils; @@ -39,10 +44,13 @@ import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.FileReader; +import java.io.FileWriter; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; +import java.io.LineNumberReader; import java.io.OutputStreamWriter; +import java.io.Reader; import java.io.StringWriter; import java.io.Writer; import java.text.SimpleDateFormat; @@ -477,4 +485,80 @@ return new SiteRendererSink( new StringWriter(), renderingContext ); } + + public XhtmlSink createSink( File moduleBasedir, String doc, String outputDirectory, InputStream siteDescriptor, + String flavour ) + throws Exception + { + DecorationModelReader decorationModelReader = new DecorationModelReader(); + + DecorationModel decorationModel = + decorationModelReader.createNavigation( new InputStreamReader( siteDescriptor ) ); + + String outputName = doc.substring( 0, doc.indexOf( "." ) + 1 ) + "html"; + + File outputFile = new File( outputDirectory, outputName ); + + if ( !outputFile.getParentFile().exists() ) + { + outputFile.getParentFile().mkdirs(); + } + + InputStream is = getClass().getResourceAsStream( "/" + flavour + ".dst" ); + + Reader r = new InputStreamReader( is ); + + SinkDescriptorReader sdr = new SinkDescriptorReader(); + + Map directives = sdr.read( r ); + + RenderingContext renderingContext = new RenderingContext( moduleBasedir, doc, decorationModel ); + + return new XhtmlSink( new FileWriter( outputFile ), renderingContext, directives ); + } + + public void copyResources( String outputDirectory, String flavour ) + throws Exception + { + InputStream resourceList = getStream( flavour + "/resources.txt" ); + + if ( resourceList != null ) + { + LineNumberReader reader = new LineNumberReader( new InputStreamReader( resourceList ) ); + + String line; + + while ( ( line = reader.readLine() ) != null ) + { + InputStream is = getStream( flavour + "/" + line ); + + if ( is == null ) + { + throw new IOException( "The resource " + line + " doesn't exists in " + flavour + " flavour." ); + } + + File outputFile = new File( outputDirectory, line ); + + if ( !outputFile.getParentFile().exists() ) + { + outputFile.getParentFile().mkdirs(); + } + + FileOutputStream w = new FileOutputStream( outputFile ); + + IOUtil.copy( is, w ); + + IOUtil.close( is ); + + IOUtil.close( w ); + } + } + } + + private InputStream getStream( String name ) + throws Exception + { + return DefaultSiteRenderer.class.getClassLoader().getResourceAsStream( name ); + } + } Modified: maven/doxia/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/Renderer.java URL: http://svn.apache.org/viewcvs/maven/doxia/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/Renderer.java?rev=357960&r1=357959&r2=357960&view=diff ============================================================================== --- maven/doxia/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/Renderer.java (original) +++ maven/doxia/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/Renderer.java Tue Dec 20 03:10:22 2005 @@ -88,4 +88,7 @@ throws RendererException, IOException; void setTemplateClassLoader( ClassLoader templateClassLoader ); + + void copyResources( String outputDirectory, String flavour ) + throws Exception; }