Interface Renderer
-
- All Known Implementing Classes:
DefaultSiteRenderer
public interface Renderer
Site Renderer interface: render a collection of documents into a site, ie decorated with a site template.- Author:
- Emmanuel Venisse
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
copyResources(SiteRenderingContext siteRenderingContext, File outputDirectory)
Copy resource files from skin, template, and site resources.SiteRenderingContext
createContextForSkin(org.apache.maven.artifact.Artifact skin, Map<String,?> attributes, DecorationModel decoration, String defaultTitle, Locale locale)
Create a Site Rendering Context for a site using a skin.Map<String,DocumentRenderer>
locateDocumentFiles(SiteRenderingContext siteRenderingContext, boolean editable)
Locate Doxia document source files in the site source context.void
mergeDocumentIntoSite(Writer writer, DocumentContent content, SiteRenderingContext siteRenderingContext)
Generate a document output integrated in a site from a document content, i.e.void
render(Collection<DocumentRenderer> documents, SiteRenderingContext siteRenderingContext, File outputDirectory)
Render a collection of documents into a site.void
renderDocument(Writer writer, RenderingContext docRenderingContext, SiteRenderingContext siteContext)
Render a document written in a Doxia markup language.
-
-
-
Method Detail
-
render
void render(Collection<DocumentRenderer> documents, SiteRenderingContext siteRenderingContext, File outputDirectory) throws RendererException, IOException
Render a collection of documents into a site.- Parameters:
documents
- the documents to render.siteRenderingContext
- the SiteRenderingContext to use.outputDirectory
- the output directory to write results.- Throws:
RendererException
- if it bombs.IOException
- if it bombs.
-
mergeDocumentIntoSite
void mergeDocumentIntoSite(Writer writer, DocumentContent content, SiteRenderingContext siteRenderingContext) throws RendererException
Generate a document output integrated in a site from a document content, i.e. merge the document content into the site template.- Parameters:
writer
- the Writer to use.content
- the document content to be merged.siteRenderingContext
- the SiteRenderingContext to use.- Throws:
RendererException
- if it bombs.- Since:
- 1.8
-
createContextForSkin
SiteRenderingContext createContextForSkin(org.apache.maven.artifact.Artifact skin, Map<String,?> attributes, DecorationModel decoration, String defaultTitle, Locale locale) throws RendererException, IOException
Create a Site Rendering Context for a site using a skin.- Parameters:
skin
- a skinattributes
- attributes to usedecoration
- a decoration modeldefaultTitle
- default titlelocale
- locale to use- Returns:
- a SiteRenderingContext.
- Throws:
RendererException
- if it bombs.IOException
- if it bombs.- Since:
- 1.7.3 was previously with skin as File instead of Artifact
-
copyResources
void copyResources(SiteRenderingContext siteRenderingContext, File outputDirectory) throws IOException
Copy resource files from skin, template, and site resources.- Parameters:
siteRenderingContext
- the SiteRenderingContext to use.outputDirectory
- output directory as file- Throws:
IOException
- if it bombs.- Since:
- 1.7
-
locateDocumentFiles
Map<String,DocumentRenderer> locateDocumentFiles(SiteRenderingContext siteRenderingContext, boolean editable) throws IOException, RendererException
Locate Doxia document source files in the site source context.- Parameters:
siteRenderingContext
- the SiteRenderingContext to useeditable
- Doxia document renderer as editable? (should not set editable if generated Doxia source)- Returns:
- the Doxia document renderers in a Map keyed by output file name.
- Throws:
IOException
- if it bombs.RendererException
- if it bombs.- Since:
- 1.8
-
renderDocument
void renderDocument(Writer writer, RenderingContext docRenderingContext, SiteRenderingContext siteContext) throws RendererException, FileNotFoundException, UnsupportedEncodingException
Render a document written in a Doxia markup language. This method is an internal method, used byDoxiaDocumentRenderer
.- Parameters:
writer
- the writer to render the document to.docRenderingContext
- the document's rendering context, which is expected to have a non-null parser id.siteContext
- the site's rendering context- Throws:
RendererException
- if it bombs.FileNotFoundException
- if it bombs.UnsupportedEncodingException
- if it bombs.
-
-