You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by hb...@apache.org on 2016/10/30 14:48:28 UTC
svn commit: r1767162 - in /maven/doxia/doxia-sitetools/trunk: ./
doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/
doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/
Author: hboutemy
Date: Sun Oct 30 14:48:28 2016
New Revision: 1767162
URL: http://svn.apache.org/viewvc?rev=1767162&view=rev
Log:
[DOXIASITETOOLS-170] use skin artifact instead of File to improve error messages
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/main/java/org/apache/maven/doxia/siterenderer/Renderer.java
maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/SiteRenderingContext.java
maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/DefaultSiteRendererTest.java
maven/doxia/doxia-sitetools/trunk/pom.xml
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=1767162&r1=1767161&r2=1767162&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 Sun Oct 30 14:48:28 2016
@@ -55,6 +55,7 @@ import java.util.zip.ZipFile;
import org.apache.commons.lang.ArrayUtils;
import org.apache.commons.lang.SystemUtils;
+import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.versioning.ArtifactVersion;
import org.apache.maven.artifact.versioning.DefaultArtifactVersion;
import org.apache.maven.artifact.versioning.InvalidVersionSpecificationException;
@@ -701,7 +702,7 @@ public class DefaultSiteRenderer
try
{
Template template;
- File skin = siteRenderingContext.getSkinJarFile();
+ Artifact skin = siteRenderingContext.getSkin();
try
{
@@ -713,18 +714,15 @@ public class DefaultSiteRenderer
}
catch ( ParseErrorException pee )
{
- throw new RendererException( "Velocity parsing error while reading the site decoration template '"
- + templateName + "'" + ( ( skin == null ) ? "" : ( " from " + skin.getName() + " skin" ) ), pee );
+ throw new RendererException( "Velocity parsing error while reading the site decoration template "
+ + ( ( skin == null ) ? ( "'" + templateName + "'" ) : ( "from " + skin.getId() + " skin" ) ),
+ pee );
}
catch ( ResourceNotFoundException rnfe )
{
- throw new RendererException( "Could not find the site decoration template '" + templateName + "'"
- + ( ( skin == null ) ? "" : ( " in " + skin.getName() + " skin" ) ), rnfe );
- }
- catch ( VelocityException ve )
- {
- throw new RendererException( "Velocity error while getting site decoration template"
- + ( ( skin == null ) ? "" : ( " from " + skin.getName() + " skin" ) ), ve );
+ throw new RendererException( "Could not find the site decoration template "
+ + ( ( skin == null ) ? ( "'" + templateName + "'" ) : ( "from " + skin.getId() + " skin" ) ),
+ rnfe );
}
try
@@ -767,16 +765,16 @@ public class DefaultSiteRenderer
}
/** {@inheritDoc} */
- public SiteRenderingContext createContextForSkin( File skinFile, Map<String, ?> attributes,
+ public SiteRenderingContext createContextForSkin( Artifact skin, Map<String, ?> attributes,
DecorationModel decoration, String defaultWindowTitle,
Locale locale )
throws IOException, RendererException
{
SiteRenderingContext context = createSiteRenderingContext( attributes, decoration, defaultWindowTitle, locale );
- context.setSkinJarFile( skinFile );
+ context.setSkin( skin );
- ZipFile zipFile = getZipFile( skinFile );
+ ZipFile zipFile = getZipFile( skin.getFile() );
InputStream in = null;
try
@@ -784,7 +782,7 @@ public class DefaultSiteRenderer
if ( zipFile.getEntry( SKIN_TEMPLATE_LOCATION ) != null )
{
context.setTemplateName( SKIN_TEMPLATE_LOCATION );
- context.setTemplateClassLoader( new URLClassLoader( new URL[]{skinFile.toURI().toURL()} ) );
+ context.setTemplateClassLoader( new URLClassLoader( new URL[]{skin.getFile().toURI().toURL()} ) );
}
else
{
@@ -818,7 +816,7 @@ public class DefaultSiteRenderer
catch ( XmlPullParserException e )
{
throw new RendererException( "Failed to parse " + SkinModel.SKIN_DESCRIPTOR_LOCATION
- + " skin descriptor from " + skinFile, e );
+ + " skin descriptor from " + skin.getId() + " skin", e );
}
finally
{
@@ -900,9 +898,9 @@ public class DefaultSiteRenderer
public void copyResources( SiteRenderingContext siteRenderingContext, File outputDirectory )
throws IOException
{
- if ( siteRenderingContext.getSkinJarFile() != null )
+ if ( siteRenderingContext.getSkin() != null )
{
- ZipFile file = getZipFile( siteRenderingContext.getSkinJarFile() );
+ ZipFile file = getZipFile( siteRenderingContext.getSkin().getFile() );
try
{
Modified: maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/Renderer.java
URL: http://svn.apache.org/viewvc/maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/Renderer.java?rev=1767162&r1=1767161&r2=1767162&view=diff
==============================================================================
--- maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/Renderer.java (original)
+++ maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/Renderer.java Sun Oct 30 14:48:28 2016
@@ -29,6 +29,7 @@ import java.util.Collection;
import java.util.Locale;
import java.util.Map;
+import org.apache.maven.artifact.Artifact;
import org.apache.maven.doxia.site.decoration.DecorationModel;
import org.apache.maven.doxia.siterenderer.sink.SiteRendererSink;
@@ -73,15 +74,16 @@ public interface Renderer
/**
* Create a Site Rendering Context for a site using a skin.
*
- * @param skinFile
+ * @param skin
* @param attributes
* @param decoration
* @param defaultWindowTitle
* @param locale
* @return a SiteRenderingContext.
* @throws java.io.IOException if it bombs.
+ * @since 1.7.3 was previously with skin as File instead of Artifact
*/
- SiteRenderingContext createContextForSkin( File skinFile, Map<String, ?> attributes, DecorationModel decoration,
+ SiteRenderingContext createContextForSkin( Artifact skin, Map<String, ?> attributes, DecorationModel decoration,
String defaultWindowTitle, Locale locale )
throws RendererException, IOException;
Modified: maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/SiteRenderingContext.java
URL: http://svn.apache.org/viewvc/maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/SiteRenderingContext.java?rev=1767162&r1=1767161&r2=1767162&view=diff
==============================================================================
--- maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/SiteRenderingContext.java (original)
+++ maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/SiteRenderingContext.java Sun Oct 30 14:48:28 2016
@@ -27,6 +27,7 @@ import java.util.List;
import java.util.Locale;
import java.util.Map;
+import org.apache.maven.artifact.Artifact;
import org.apache.maven.doxia.site.decoration.DecorationModel;
import org.apache.maven.doxia.site.skin.SkinModel;
import org.codehaus.plexus.util.ReaderFactory;
@@ -58,7 +59,7 @@ public class SiteRenderingContext
private String defaultWindowTitle;
- private File skinJarFile;
+ private Artifact skin;
private SkinModel skinModel;
@@ -231,23 +232,23 @@ public class SiteRenderingContext
}
/**
- * <p>Getter for the field <code>skinJarFile</code>.</p>
+ * <p>Getter for the field <code>skin</code>.</p>
*
- * @return a {@link java.io.File} object.
+ * @return a {@link Artifact} object.
*/
- public File getSkinJarFile()
+ public Artifact getSkin()
{
- return skinJarFile;
+ return skin;
}
/**
* <p>Setter for the field <code>skinJarFile</code>.</p>
*
- * @param skinJarFile a {@link java.io.File} object.
+ * @param skin an {@link Artifact} object.
*/
- public void setSkinJarFile( File skinJarFile )
+ public void setSkin( Artifact skin )
{
- this.skinJarFile = skinJarFile;
+ this.skin = skin;
}
/**
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=1767162&r1=1767161&r2=1767162&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 Sun Oct 30 14:48:28 2016
@@ -43,6 +43,8 @@ import java.util.jar.JarOutputStream;
import java.util.zip.ZipEntry;
import org.apache.commons.io.IOUtils;
+import org.apache.maven.artifact.Artifact;
+import org.apache.maven.artifact.DefaultArtifact;
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;
@@ -277,8 +279,10 @@ public class DefaultSiteRendererTest
*/
attributes.put( "doxiaSiteRendererVersion", "1.7-bogus" );
+ Artifact skin = new DefaultArtifact( "org.group", "artifact", "1.1", null, "jar", "", null );
+ skin.setFile( skinFile );
SiteRenderingContext siteRenderingContext =
- renderer.createContextForSkin( skinFile, attributes, new DecorationModel(), "defaultWindowTitle",
+ renderer.createContextForSkin( skin, attributes, new DecorationModel(), "defaultWindowTitle",
Locale.ENGLISH );
RenderingContext context = new RenderingContext( new File( "" ), "document.html" );
SiteRendererSink sink = new SiteRendererSink( context );
Modified: maven/doxia/doxia-sitetools/trunk/pom.xml
URL: http://svn.apache.org/viewvc/maven/doxia/doxia-sitetools/trunk/pom.xml?rev=1767162&r1=1767161&r2=1767162&view=diff
==============================================================================
--- maven/doxia/doxia-sitetools/trunk/pom.xml (original)
+++ maven/doxia/doxia-sitetools/trunk/pom.xml Sun Oct 30 14:48:28 2016
@@ -257,6 +257,8 @@ under the License.
<!-- DOXIA-511 -->
<exclude>org/apache/maven/doxia/docrenderer/AbstractDocumentRenderer</exclude>
<exclude>org/apache/maven/doxia/docrenderer/itext/AbstractITextRender</exclude>
+ <!-- DOXIASITETOOLS-170 -->
+ <exlcude>org/apache/maven/doxia/siterenderer/SiteRenderingContext</exlcude>
</excludes>
</configuration>
</execution>