This is an automated email from the ASF dual-hosted git repository. slachiewicz pushed a commit to branch DOXIA-614/support-source-reference-in-doxia-parser in repository https://gitbox.apache.org/repos/asf/maven-doxia.git
commit 82a083d2454a71b0cc2ed645a52f0a5ce7eb0411 Author: Abel Salgado Romero <[email protected]> AuthorDate: Tue Jun 30 22:33:43 2020 +0200 [DOXIA-614] Make Parser::parse(Reader,Sink,String) the default method for modules --- .../apache/maven/doxia/parser/AbstractParser.java | 55 ++++++++++++++-------- .../maven/doxia/parser/AbstractXmlParser.java | 16 +------ .../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, 51 insertions(+), 46 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 1745585..b46d6f4 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 @@ -101,7 +101,7 @@ public abstract class AbstractParser /** * {@inheritDoc} * - * @return a int. + * @return a int */ public int getType() { @@ -117,7 +117,7 @@ public abstract class AbstractParser /** * <p>isEmitComments.</p> * - * @return a boolean. + * @return a boolean */ public boolean isEmitComments() { @@ -127,11 +127,11 @@ public abstract class AbstractParser /** * Execute a macro on the given sink. * - * @param macroId An id to lookup the macro. - * @param request The corresponding MacroRequest. - * @param sink The sink to receive the events. - * @throws org.apache.maven.doxia.macro.MacroExecutionException if an error occurred during execution. - * @throws org.apache.maven.doxia.macro.manager.MacroNotFoundException if the macro could not be found. + * @param macroId an id to lookup the macro + * @param request the corresponding MacroRequest + * @param sink the sink to receive the events + * @throws org.apache.maven.doxia.macro.MacroExecutionException if an error occurred during execution + * @throws org.apache.maven.doxia.macro.manager.MacroNotFoundException if the macro could not be found */ // Made public right now because of the structure of the APT parser and // all its inner classes. @@ -148,7 +148,7 @@ public abstract class AbstractParser /** * Returns the current base directory. * - * @return The base directory. + * @return the base directory * @deprecated this does not work in multi-module builds, see DOXIA-373 */ protected File getBasedir() @@ -171,29 +171,46 @@ public abstract class AbstractParser * * 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. - * @throws org.apache.maven.doxia.parser.ParseException if the string could not be parsed. + * @param string a string that provides the source input + * @param sink a sink that consumes the Doxia events + * @throws org.apache.maven.doxia.parser.ParseException if the string could not be parsed * @since 1.1 */ 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.9.2 + */ + 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 ); } /** * Set <code>secondParsing</code> to true, if we need a second parsing. * - * @param second True for second parsing. + * @param second true for second parsing */ public void setSecondParsing( boolean second ) { @@ -203,7 +220,7 @@ public abstract class AbstractParser /** * Indicates if we are currently parsing a second time. * - * @return true if we are currently parsing a second time. + * @return true if we are currently parsing a second time * @since 1.1 */ protected boolean isSecondParsing() @@ -237,7 +254,7 @@ public abstract class AbstractParser /** * Gets the current {@link MacroManager}. * - * @return The current {@link MacroManager}. + * @return the current {@link MacroManager} * @since 1.1 */ protected MacroManager getMacroManager() @@ -260,7 +277,7 @@ public abstract class AbstractParser /** * The current Doxia version. * - * @return the current Doxia version as a String. + * @return the current Doxia version as a String * @since 1.2 */ protected static String doxiaVersion() 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 224c1cf..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(); @@ -153,7 +153,7 @@ public abstract class AbstractXmlParser setSecondParsing( false ); init(); } - + /** * Initializes the parser with custom entities or other options. * @@ -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 36b1024..da379c2 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 f40e123..9ae9706 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 @@ -107,7 +107,7 @@ public class MarkdownParser private MarkdownHtmlParser parser; /** {@inheritDoc} */ - 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 00cfc8d..5c12ace 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 984769b..e049355 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 {
