You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by sl...@apache.org on 2021/05/30 15:45:06 UTC

[maven-doxia] branch master updated (8bfb5be -> 497a438)

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

slachiewicz pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/maven-doxia.git.


    from 8bfb5be  (doc) misc javadoc updates
     new 64ddf82  [DOXIA-614] Make Parser::parse(Reader,Sink,String) the default method for modules
     new cb017d8  [DOXIA-614] Exclude expected changes to API - clirr reported errors
     new 497a438  [DOXIA-614] Support passing source reference to Doxia instance

The 3 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../java/org/apache/maven/doxia/DefaultDoxia.java  | 10 +++++-
 .../main/java/org/apache/maven/doxia/Doxia.java    | 14 ++++++++
 .../apache/maven/doxia/parser/AbstractParser.java  | 23 ++++++++++--
 .../maven/doxia/parser/AbstractXmlParser.java      | 14 +-------
 .../maven/doxia/parser/Xhtml5BaseParser.java       |  4 +--
 .../apache/maven/doxia/parser/XhtmlBaseParser.java |  4 +--
 ...MacroManagerTest.java => DefaultDoxiaTest.java} | 41 +++++++++++-----------
 .../apache/maven/doxia/module/fml/FmlParser.java   |  4 +--
 .../doxia/module/markdown/MarkdownParser.java      |  2 +-
 .../apache/maven/doxia/module/xdoc/XdocParser.java |  4 +--
 .../maven/doxia/module/xhtml/XhtmlParser.java      |  4 +--
 .../maven/doxia/module/xhtml5/Xhtml5Parser.java    |  4 +--
 pom.xml                                            | 35 ++++++------------
 13 files changed, 88 insertions(+), 75 deletions(-)
 copy doxia-core/src/test/java/org/apache/maven/doxia/{macro/manager/MacroManagerTest.java => DefaultDoxiaTest.java} (55%)

[maven-doxia] 03/03: [DOXIA-614] Support passing source reference to Doxia instance

Posted by sl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 497a4387007732ffe5c780451cbc3778c9e0b265
Author: Abel Salgado Romero <ab...@gmail.com>
AuthorDate: Mon Jun 29 19:51:37 2020 +0200

    [DOXIA-614] Support passing source reference to Doxia instance
    
    Closes #35
---
 .../java/org/apache/maven/doxia/DefaultDoxia.java  | 10 +++-
 .../main/java/org/apache/maven/doxia/Doxia.java    | 14 ++++++
 .../org/apache/maven/doxia/DefaultDoxiaTest.java   | 54 ++++++++++++++++++++++
 3 files changed, 77 insertions(+), 1 deletion(-)

diff --git a/doxia-core/src/main/java/org/apache/maven/doxia/DefaultDoxia.java b/doxia-core/src/main/java/org/apache/maven/doxia/DefaultDoxia.java
index f8583e7..dae7ec2 100644
--- a/doxia-core/src/main/java/org/apache/maven/doxia/DefaultDoxia.java
+++ b/doxia-core/src/main/java/org/apache/maven/doxia/DefaultDoxia.java
@@ -57,11 +57,19 @@ public class DefaultDoxia
     public void parse( Reader source, String parserId, Sink sink )
         throws ParserNotFoundException, ParseException
     {
+        this.parse( source, parserId, sink, null );
+    }
+
+    /** {@inheritDoc} */
+    @Override
+    public void parse( Reader source, String parserId, Sink sink, String reference )
+        throws ParserNotFoundException, ParseException
+    {
         Parser parser = parserManager.getParser( parserId );
 
         parser.enableLogging( new PlexusLoggerWrapper( getLogger() ) );
 
-        parser.parse( source, sink );
+        parser.parse( source, sink, reference );
     }
 
     /** {@inheritDoc} */
diff --git a/doxia-core/src/main/java/org/apache/maven/doxia/Doxia.java b/doxia-core/src/main/java/org/apache/maven/doxia/Doxia.java
index 5741910..17d3920 100644
--- a/doxia-core/src/main/java/org/apache/maven/doxia/Doxia.java
+++ b/doxia-core/src/main/java/org/apache/maven/doxia/Doxia.java
@@ -51,6 +51,20 @@ public interface Doxia
         throws ParserNotFoundException, ParseException;
 
     /**
+     * Parses the given source model using a parser with given id,
+     * and emits Doxia events into the given sink.
+     *
+     * @param source not null reader that provides the source document
+     * @param parserId identifier for the parser to use
+     * @param sink a sink that consumes the Doxia events
+     * @param reference string containing the reference to the source (e.g. filename)
+     * @throws ParserNotFoundException if no parser could be found for the given id
+     * @throws ParseException if the model could not be parsed
+     */
+    void parse( Reader source, String parserId, Sink sink, String reference )
+        throws ParserNotFoundException, ParseException;
+
+    /**
      * Return a parser for the given <code>parserId</code>.
      *
      * @param parserId identifier for the parser to use
diff --git a/doxia-core/src/test/java/org/apache/maven/doxia/DefaultDoxiaTest.java b/doxia-core/src/test/java/org/apache/maven/doxia/DefaultDoxiaTest.java
new file mode 100644
index 0000000..2075b7f
--- /dev/null
+++ b/doxia-core/src/test/java/org/apache/maven/doxia/DefaultDoxiaTest.java
@@ -0,0 +1,54 @@
+package org.apache.maven.doxia;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import org.apache.maven.doxia.parser.manager.ParserNotFoundException;
+import org.codehaus.plexus.PlexusTestCase;
+import org.junit.Test;
+
+public class DefaultDoxiaTest extends PlexusTestCase
+{
+
+    @Test
+    public void testCreatesDefaultDoxia()
+    {
+        final DefaultDoxia defaultDoxia = new DefaultDoxia();
+
+        assertNotNull( defaultDoxia );
+    }
+
+    @Test
+    public void testFailsWhenParserIdDoesNotExist() throws Exception
+    {
+        final String parserId = "a-parser";
+        final Doxia doxia = lookup( Doxia.class );
+
+        try
+        {
+            doxia.getParser( parserId );
+            fail( "Call should fail with ParserNotFoundException" );
+        }
+        catch ( ParserNotFoundException e )
+        {
+            assertEquals( "Cannot find parser with id = a-parser", e.getMessage() );
+        }
+    }
+
+}

[maven-doxia] 02/03: [DOXIA-614] Exclude expected changes to API - clirr reported errors

Posted by sl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit cb017d87f4a91f27c5a02f5cb3b1b148f4a8b23a
Author: Sylwester Lachiewicz <sl...@apache.org>
AuthorDate: Thu Aug 20 10:11:22 2020 +0200

    [DOXIA-614] Exclude expected changes to API - clirr reported errors
---
 pom.xml | 35 +++++++++++------------------------
 1 file changed, 11 insertions(+), 24 deletions(-)

diff --git a/pom.xml b/pom.xml
index e0018ab..0b262db 100644
--- a/pom.xml
+++ b/pom.xml
@@ -299,33 +299,20 @@ under the License.
               <goal>check</goal>
             </goals>
             <configuration>
+              <comparisonVersion>1.9.1</comparisonVersion>
               <excludes>
-                <!-- module-markdown flexmark-java implementation -->
-                <exclude>org/apache/maven/doxia/module/markdown/MarkdownParser$MarkdownHtmlParser</exclude>
-                <exclude>org/apache/maven/doxia/module/markdown/MarkdownParser$PegDownHtmlParser</exclude>
-                <exclude>org/apache/maven/doxia/module/markdown/MarkdownToDoxiaHtmlSerializer</exclude>
-                <exclude>org/apache/maven/doxia/module/fo/FoAggregateSink</exclude>
-                <!-- DOXIA-527 -->
-                <exclude>org/apache/maven/doxia/parser/module/*Module</exclude>
-                <!-- DOXIA-492 -->
-                <exclude>org/apache/maven/doxia/module/markdown/MarkdownParser</exclude>
-                <!-- DOXIA-511 -->
-                <exclude>org/apache/maven/doxia/module/site</exclude>
-                <exclude>org/apache/maven/doxia/module/site/**</exclude>
-                <exclude>org/apache/maven/doxia/module/*/*SiteModule</exclude>
-                <!-- DOXIA-482 -->
-                <exclude>org/apache/maven/doxia/parser/Parser</exclude>
-                <!-- DOXIA-506 -->
-                <exclude>org/apache/maven/doxia/sink/**</exclude>
-                <exclude>org/apache/maven/doxia/index/IndexingSink</exclude>
+                <!-- DOXIA-614 expected API changes to 1.9.1 -->
+                <exclude>org/apache/maven/doxia/Doxia</exclude>
+                <exclude>org/apache/maven/doxia/parser/AbstractParser</exclude>
                 <exclude>org/apache/maven/doxia/parser/AbstractXmlParser</exclude>
-                <exclude>org/apache/maven/doxia/module/*/*Sink</exclude>
-                <exclude>org/apache/maven/doxia/module/*/*SinkFactory</exclude>
-                <!-- DOXIA-409 -->
-                <exclude>org/apache/maven/doxia/module/fo/FoUtils</exclude>
-                <!--  -->
-                <exclude>org/apache/maven/doxia/module/fml/FmlContentParser</exclude>
+                <exclude>org/apache/maven/doxia/parser/FmlParser</exclude>
+                <exclude>org/apache/maven/doxia/parser/XhtmlBaseParser</exclude>
+                <exclude>org/apache/maven/doxia/parser/Xhtml5BaseParser</exclude>
+                <exclude>org/apache/maven/doxia/module/fml/FmlParser</exclude>
+                <exclude>org/apache/maven/doxia/module/markdown/MarkdownParser</exclude>
                 <exclude>org/apache/maven/doxia/module/xdoc/XdocParser</exclude>
+                <exclude>org/apache/maven/doxia/module/xhtml/XhtmlParser</exclude>
+                <exclude>org/apache/maven/doxia/module/xhtml5/Xhtml5Parser</exclude>
               </excludes>
               <ignored>
                 <!-- DOXIA-616 -->

[maven-doxia] 01/03: [DOXIA-614] Make Parser::parse(Reader, Sink, String) the default method for modules

Posted by sl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 64ddf82fc668754f682bba0a973a9090ae49a86d
Author: Sylwester Lachiewicz <sl...@apache.org>
AuthorDate: Sun May 30 13:29:44 2021 +0200

    [DOXIA-614] Make Parser::parse(Reader,Sink,String) the default method for modules
    
    Closes #35
---
 .../apache/maven/doxia/parser/AbstractParser.java  | 23 +++++++++++++++++++---
 .../maven/doxia/parser/AbstractXmlParser.java      | 14 +------------
 .../maven/doxia/parser/Xhtml5BaseParser.java       |  4 ++--
 .../apache/maven/doxia/parser/XhtmlBaseParser.java |  4 ++--
 .../apache/maven/doxia/module/fml/FmlParser.java   |  4 ++--
 .../doxia/module/markdown/MarkdownParser.java      |  2 +-
 .../apache/maven/doxia/module/xdoc/XdocParser.java |  4 ++--
 .../maven/doxia/module/xhtml/XhtmlParser.java      |  4 ++--
 .../maven/doxia/module/xhtml5/Xhtml5Parser.java    |  4 ++--
 9 files changed, 34 insertions(+), 29 deletions(-)

diff --git a/doxia-core/src/main/java/org/apache/maven/doxia/parser/AbstractParser.java b/doxia-core/src/main/java/org/apache/maven/doxia/parser/AbstractParser.java
index 72100c6..8520e43 100644
--- a/doxia-core/src/main/java/org/apache/maven/doxia/parser/AbstractParser.java
+++ b/doxia-core/src/main/java/org/apache/maven/doxia/parser/AbstractParser.java
@@ -179,15 +179,32 @@ public abstract class AbstractParser
     public void parse( String string, Sink sink )
         throws ParseException
     {
-        parse( new StringReader( string ), sink );
+        this.parse( string, sink, null );
+    }
+
+    /**
+     * {@inheritDoc}
+     *
+     * Convenience method to parse an arbitrary string and emit events into the given sink.
+     *
+     * @param string a string that provides the source input
+     * @param sink a sink that consumes the Doxia events
+     * @param reference a string containing the reference to the source of the input string (e.g. filename)
+     * @throws org.apache.maven.doxia.parser.ParseException if the string could not be parsed
+     * @since 1.10
+     */
+    public void parse( String string, Sink sink, String reference )
+        throws ParseException
+    {
+        parse( new StringReader( string ), sink, reference );
     }
 
     /** {@inheritDoc} */
     @Override
-    public void parse( Reader source, Sink sink, String reference )
+    public void parse( Reader source, Sink sink )
         throws ParseException
     {
-        parse( source, sink );
+        parse( source, sink, null );
     }
 
     /**
diff --git a/doxia-core/src/main/java/org/apache/maven/doxia/parser/AbstractXmlParser.java b/doxia-core/src/main/java/org/apache/maven/doxia/parser/AbstractXmlParser.java
index fd615c1..c0b1ddb 100644
--- a/doxia-core/src/main/java/org/apache/maven/doxia/parser/AbstractXmlParser.java
+++ b/doxia-core/src/main/java/org/apache/maven/doxia/parser/AbstractXmlParser.java
@@ -100,7 +100,7 @@ public abstract class AbstractXmlParser
     private boolean validate = false;
 
     /** {@inheritDoc} */
-    public void parse( Reader source, Sink sink )
+    public void parse( Reader source, Sink sink, String reference )
         throws ParseException
     {
         init();
@@ -166,18 +166,6 @@ public abstract class AbstractXmlParser
         // nop
     }
 
-    /**
-     * {@inheritDoc}
-     *
-     * Convenience method to parse an arbitrary string and emit any xml events into the given sink.
-     */
-    @Override
-    public void parse( String string, Sink sink )
-        throws ParseException
-    {
-        super.parse( string, sink );
-    }
-
     /** {@inheritDoc} */
     @Override
     public final int getType()
diff --git a/doxia-core/src/main/java/org/apache/maven/doxia/parser/Xhtml5BaseParser.java b/doxia-core/src/main/java/org/apache/maven/doxia/parser/Xhtml5BaseParser.java
index 5dfc757..dd10f58 100644
--- a/doxia-core/src/main/java/org/apache/maven/doxia/parser/Xhtml5BaseParser.java
+++ b/doxia-core/src/main/java/org/apache/maven/doxia/parser/Xhtml5BaseParser.java
@@ -81,14 +81,14 @@ public class Xhtml5BaseParser
 
     /** {@inheritDoc} */
     @Override
-    public void parse( Reader source, Sink sink )
+    public void parse( Reader source, Sink sink, String reference )
         throws ParseException
     {
         init();
 
         try
         {
-            super.parse( source, sink );
+            super.parse( source, sink, reference );
         }
         finally
         {
diff --git a/doxia-core/src/main/java/org/apache/maven/doxia/parser/XhtmlBaseParser.java b/doxia-core/src/main/java/org/apache/maven/doxia/parser/XhtmlBaseParser.java
index 57049e3..411b045 100644
--- a/doxia-core/src/main/java/org/apache/maven/doxia/parser/XhtmlBaseParser.java
+++ b/doxia-core/src/main/java/org/apache/maven/doxia/parser/XhtmlBaseParser.java
@@ -82,14 +82,14 @@ public class XhtmlBaseParser
 
     /** {@inheritDoc} */
     @Override
-    public void parse( Reader source, Sink sink )
+    public void parse( Reader source, Sink sink, String reference )
         throws ParseException
     {
         init();
 
         try
         {
-            super.parse( source, sink );
+            super.parse( source, sink, reference );
         }
         finally
         {
diff --git a/doxia-modules/doxia-module-fml/src/main/java/org/apache/maven/doxia/module/fml/FmlParser.java b/doxia-modules/doxia-module-fml/src/main/java/org/apache/maven/doxia/module/fml/FmlParser.java
index 6fc121b..da334a1 100644
--- a/doxia-modules/doxia-module-fml/src/main/java/org/apache/maven/doxia/module/fml/FmlParser.java
+++ b/doxia-modules/doxia-module-fml/src/main/java/org/apache/maven/doxia/module/fml/FmlParser.java
@@ -89,7 +89,7 @@ public class FmlParser
     private Map<String, Object> macroParameters = new HashMap<>();
 
     /** {@inheritDoc} */
-    public void parse( Reader source, Sink sink )
+    public void parse( Reader source, Sink sink, String reference )
         throws ParseException
     {
         this.faqs = null;
@@ -118,7 +118,7 @@ public class FmlParser
             this.faqs = new Faqs();
 
             // this populates faqs
-            super.parse( tmp, sink );
+            super.parse( tmp, sink, reference );
 
             writeFaqs( sink );
         }
diff --git a/doxia-modules/doxia-module-markdown/src/main/java/org/apache/maven/doxia/module/markdown/MarkdownParser.java b/doxia-modules/doxia-module-markdown/src/main/java/org/apache/maven/doxia/module/markdown/MarkdownParser.java
index 37a41a5..33057ea 100644
--- a/doxia-modules/doxia-module-markdown/src/main/java/org/apache/maven/doxia/module/markdown/MarkdownParser.java
+++ b/doxia-modules/doxia-module-markdown/src/main/java/org/apache/maven/doxia/module/markdown/MarkdownParser.java
@@ -163,7 +163,7 @@ public class MarkdownParser
 
     /** {@inheritDoc} */
     @Override
-    public void parse( Reader source, Sink sink )
+    public void parse( Reader source, Sink sink, String reference )
         throws ParseException
     {
         try
diff --git a/doxia-modules/doxia-module-xdoc/src/main/java/org/apache/maven/doxia/module/xdoc/XdocParser.java b/doxia-modules/doxia-module-xdoc/src/main/java/org/apache/maven/doxia/module/xdoc/XdocParser.java
index 6efa2b5..e1b8184 100644
--- a/doxia-modules/doxia-module-xdoc/src/main/java/org/apache/maven/doxia/module/xdoc/XdocParser.java
+++ b/doxia-modules/doxia-module-xdoc/src/main/java/org/apache/maven/doxia/module/xdoc/XdocParser.java
@@ -85,7 +85,7 @@ public class XdocParser
     private boolean hasTitle;
 
     /** {@inheritDoc} */
-    public void parse( Reader source, Sink sink )
+    public void parse( Reader source, Sink sink, String reference )
         throws ParseException
     {
         this.sourceContent = null;
@@ -110,7 +110,7 @@ public class XdocParser
 
         try
         {
-            super.parse( new StringReader( sourceContent ), sink );
+            super.parse( new StringReader( sourceContent ), sink, reference );
         }
         finally
         {
diff --git a/doxia-modules/doxia-module-xhtml/src/main/java/org/apache/maven/doxia/module/xhtml/XhtmlParser.java b/doxia-modules/doxia-module-xhtml/src/main/java/org/apache/maven/doxia/module/xhtml/XhtmlParser.java
index 470fc2f..fbeeb9a 100644
--- a/doxia-modules/doxia-module-xhtml/src/main/java/org/apache/maven/doxia/module/xhtml/XhtmlParser.java
+++ b/doxia-modules/doxia-module-xhtml/src/main/java/org/apache/maven/doxia/module/xhtml/XhtmlParser.java
@@ -333,7 +333,7 @@ public class XhtmlParser
     }
 
     /** {@inheritDoc} */
-    public void parse( Reader source, Sink sink )
+    public void parse( Reader source, Sink sink, String reference )
         throws ParseException
     {
         this.sourceContent = null;
@@ -355,7 +355,7 @@ public class XhtmlParser
 
         try
         {
-            super.parse( new StringReader( sourceContent ), sink );
+            super.parse( new StringReader( sourceContent ), sink, reference );
         }
         finally
         {
diff --git a/doxia-modules/doxia-module-xhtml5/src/main/java/org/apache/maven/doxia/module/xhtml5/Xhtml5Parser.java b/doxia-modules/doxia-module-xhtml5/src/main/java/org/apache/maven/doxia/module/xhtml5/Xhtml5Parser.java
index a1cd434..cf79171 100644
--- a/doxia-modules/doxia-module-xhtml5/src/main/java/org/apache/maven/doxia/module/xhtml5/Xhtml5Parser.java
+++ b/doxia-modules/doxia-module-xhtml5/src/main/java/org/apache/maven/doxia/module/xhtml5/Xhtml5Parser.java
@@ -334,7 +334,7 @@ public class Xhtml5Parser
     }
 
     /** {@inheritDoc} */
-    public void parse( Reader source, Sink sink )
+    public void parse( Reader source, Sink sink, String reference )
         throws ParseException
     {
         this.sourceContent = null;
@@ -356,7 +356,7 @@ public class Xhtml5Parser
 
         try
         {
-            super.parse( new StringReader( sourceContent ), sink );
+            super.parse( new StringReader( sourceContent ), sink, reference );
         }
         finally
         {