Author: vsiveton
Date: Tue Oct 28 04:23:39 2008
New Revision: 708527
URL: http://svn.apache.org/viewvc?rev=708527&view=rev
Log:
DOXIA-105: review error handling
o patch applied
o updated Exception's messages
o be sure that reader and sink will be closed before processing
generateDocument()
Modified:
maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/DefaultSiteRenderer.java
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=708527&r1=708526&r2=708527&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
Tue Oct 28 04:23:39 2008
@@ -327,9 +327,9 @@
File doc = new File( renderingContext.getBasedir(),
renderingContext.getInputName() );
+ Reader reader = null;
try
{
- Reader reader = null;
Parser parser = doxia.getParser( renderingContext.getParserId() );
// TODO: DOXIA-111: the filter used here must be checked generally.
@@ -377,27 +377,29 @@
}
sink.enableLogging( new PlexusLoggerWrapper( getLogger() ) );
doxia.parse( reader, renderingContext.getParserId(), sink );
-
- generateDocument( writer, sink, context );
}
catch ( ParserNotFoundException e )
{
- throw new RendererException( "Error getting a parser for " + doc +
": " + e.getMessage() );
+ throw new RendererException( "Error getting a parser for '" + doc
+ "': " + e.getMessage(), e );
}
catch ( ParseException e )
{
- getLogger().error( "Error parsing " + doc + ": line [" +
e.getLineNumber() + "] " + e.getMessage(), e );
+ throw new RendererException( "Error parsing '" + doc + "': line ["
+ e.getLineNumber() + "] " + e.getMessage(), e );
}
catch ( IOException e )
{
- getLogger().error( "Error parsing " + doc + " to detect encoding",
e );
+ throw new RendererException( "IOException when processing '" + doc
+ "'", e );
}
finally
{
sink.flush();
sink.close();
+
+ IOUtil.close( reader );
}
+
+ generateDocument( writer, sink, context );
}
private Context createContext( SiteRendererSink sink,