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 2020/06/07 18:14:57 UTC

[maven-site-plugin] branch master updated: [MSITE-862] log Doxia source when rendering with site:run

This is an automated email from the ASF dual-hosted git repository.

hboutemy pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven-site-plugin.git


The following commit(s) were added to refs/heads/master by this push:
     new bb0f9c5  [MSITE-862] log Doxia source when rendering with site:run
bb0f9c5 is described below

commit bb0f9c5044d168f7729a5b244e34f837c748b89c
Author: Hervé Boutemy <hb...@apache.org>
AuthorDate: Sun Jun 7 20:14:52 2020 +0200

    [MSITE-862] log Doxia source when rendering with site:run
---
 .../site/render/ReportDocumentRenderer.java        |  5 ++++
 .../apache/maven/plugins/site/run/DoxiaFilter.java | 31 +++++++++++++++++++++-
 2 files changed, 35 insertions(+), 1 deletion(-)

diff --git a/src/main/java/org/apache/maven/plugins/site/render/ReportDocumentRenderer.java b/src/main/java/org/apache/maven/plugins/site/render/ReportDocumentRenderer.java
index e59a023..45cf613 100644
--- a/src/main/java/org/apache/maven/plugins/site/render/ReportDocumentRenderer.java
+++ b/src/main/java/org/apache/maven/plugins/site/render/ReportDocumentRenderer.java
@@ -374,4 +374,9 @@ public class ReportDocumentRenderer
     {
         return report.isExternalReport();
     }
+
+    public String getReportMojoInfo()
+    {
+        return reportMojoInfo;
+    }
 }
diff --git a/src/main/java/org/apache/maven/plugins/site/run/DoxiaFilter.java b/src/main/java/org/apache/maven/plugins/site/run/DoxiaFilter.java
index eab33ce..7c69896 100644
--- a/src/main/java/org/apache/maven/plugins/site/run/DoxiaFilter.java
+++ b/src/main/java/org/apache/maven/plugins/site/run/DoxiaFilter.java
@@ -20,11 +20,14 @@ package org.apache.maven.plugins.site.run;
  */
 
 import org.apache.maven.doxia.siterenderer.DocumentRenderer;
+import org.apache.maven.doxia.siterenderer.DoxiaDocumentRenderer;
 import org.apache.maven.doxia.siterenderer.Renderer;
 import org.apache.maven.doxia.siterenderer.RendererException;
 import org.apache.maven.doxia.siterenderer.SiteRenderingContext;
 import org.apache.maven.plugins.site.render.ReportDocumentRenderer;
 
+import static org.apache.maven.shared.utils.logging.MessageUtils.buffer;
+
 import javax.servlet.Filter;
 import javax.servlet.FilterChain;
 import javax.servlet.FilterConfig;
@@ -53,6 +56,8 @@ public class DoxiaFilter
 
     public static final String LOCALES_LIST_KEY = "localesList";
 
+    private ServletContext servletContext;
+
     private Renderer siteRenderer;
 
     private Map<String, DoxiaBean> i18nDoxiaContexts;
@@ -65,7 +70,7 @@ public class DoxiaFilter
     public void init( FilterConfig filterConfig )
         throws ServletException
     {
-        ServletContext servletContext = filterConfig.getServletContext();
+        servletContext = filterConfig.getServletContext();
 
         siteRenderer = (Renderer) servletContext.getAttribute( SITE_RENDERER_KEY );
 
@@ -141,6 +146,7 @@ public class DoxiaFilter
             try
             {
                 DocumentRenderer renderer = documents.get( path );
+                logDocumentRenderer( path, renderer );
                 renderer.renderDocument( servletResponse.getWriter(), siteRenderer, context );
 
                 if ( renderer instanceof ReportDocumentRenderer )
@@ -176,6 +182,7 @@ public class DoxiaFilter
                 if ( locateDocuments.containsKey( path ) )
                 {
                     DocumentRenderer renderer = locateDocuments.get( path );
+                    logDocumentRenderer( path, renderer );
                     renderer.renderDocument( servletResponse.getWriter(), siteRenderer, generatedSiteContext );
 
                     return;
@@ -188,6 +195,28 @@ public class DoxiaFilter
         }
 
         filterChain.doFilter( servletRequest, servletResponse );
+
+        servletContext.log( path );
+    }
+
+    private void logDocumentRenderer( String path, DocumentRenderer renderer )
+    {
+        String source;
+        if ( renderer instanceof DoxiaDocumentRenderer )
+        {
+            DoxiaDocumentRenderer doxiaDocumentRenderer = (DoxiaDocumentRenderer) renderer;
+            source = doxiaDocumentRenderer.getRenderingContext().getInputName();
+        }
+        else if ( renderer instanceof ReportDocumentRenderer )
+        {
+            ReportDocumentRenderer reportDocumentRenderer = (ReportDocumentRenderer) renderer;
+            source = reportDocumentRenderer.getReportMojoInfo();
+        }
+        else
+        {
+            source = renderer.getClass().getName();
+        }
+        servletContext.log( path + " -> " + buffer().strong( source ) );
     }
 
     /**