You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by rf...@apache.org on 2016/01/26 23:01:54 UTC
svn commit: r1726913 - in /maven/doxia/doxia/trunk:
doxia-core/src/main/java/org/apache/maven/doxia/parser/
doxia-core/src/main/java/org/apache/maven/doxia/util/
doxia-modules/doxia-module-apt/src/main/java/org/apache/maven/doxia/module/apt/
doxia-modu...
Author: rfscholte
Date: Tue Jan 26 22:01:54 2016
New Revision: 1726913
URL: http://svn.apache.org/viewvc?rev=1726913&view=rev
Log:
[DOXIA-224] Add source name in parser
Parser has extra parse method, AbstractParser has a default implementation for it.
Apt, Confluence and TWiki already pick up the reference of the source
Modified:
maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/parser/AbstractParser.java
maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/parser/Parser.java
maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/util/ByLineReaderSource.java
maven/doxia/doxia/trunk/doxia-modules/doxia-module-apt/src/main/java/org/apache/maven/doxia/module/apt/AptParser.java
maven/doxia/doxia/trunk/doxia-modules/doxia-module-confluence/src/main/java/org/apache/maven/doxia/module/confluence/ConfluenceParser.java
maven/doxia/doxia/trunk/doxia-modules/doxia-module-twiki/src/main/java/org/apache/maven/doxia/module/twiki/TWikiParser.java
Modified: maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/parser/AbstractParser.java
URL: http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/parser/AbstractParser.java?rev=1726913&r1=1726912&r2=1726913&view=diff
==============================================================================
--- maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/parser/AbstractParser.java (original)
+++ maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/parser/AbstractParser.java Tue Jan 26 22:01:54 2016
@@ -22,6 +22,7 @@ package org.apache.maven.doxia.parser;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
+import java.io.Reader;
import java.io.StringReader;
import java.util.Properties;
@@ -170,6 +171,13 @@ public abstract class AbstractParser
{
parse( new StringReader( string ), sink );
}
+
+ @Override
+ public void parse( Reader source, Sink sink, String reference )
+ throws ParseException
+ {
+ parse( source, sink );
+ }
/**
* Set <code>secondParsing</code> to true, if we need a second parsing.
Modified: maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/parser/Parser.java
URL: http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/parser/Parser.java?rev=1726913&r1=1726912&r2=1726913&view=diff
==============================================================================
--- maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/parser/Parser.java (original)
+++ maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/parser/Parser.java Tue Jan 26 22:01:54 2016
@@ -58,6 +58,17 @@ public interface Parser
*/
void parse( Reader source, Sink sink )
throws ParseException;
+
+ /**
+ * Parses the given source model and emits Doxia events into the given sink.
+ *
+ * @param source not null reader that provides the source document.
+ * You could use <code>newReader</code> methods from {@link org.codehaus.plexus.util.ReaderFactory}.
+ * @param sink A sink that consumes the Doxia events.
+ * @throws org.apache.maven.doxia.parser.ParseException if the model could not be parsed.
+ */
+ void parse( Reader source, Sink sink, String reference )
+ throws ParseException;
/**
* The parser type value could be {@link #UNKNOWN_TYPE}, {@link #TXT_TYPE} or
Modified: maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/util/ByLineReaderSource.java
URL: http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/util/ByLineReaderSource.java?rev=1726913&r1=1726912&r2=1726913&view=diff
==============================================================================
--- maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/util/ByLineReaderSource.java (original)
+++ maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/util/ByLineReaderSource.java Tue Jan 26 22:01:54 2016
@@ -58,6 +58,8 @@ public class ByLineReaderSource implemen
* called
*/
private boolean ungetted = false;
+
+ private String name;
/**
* Creates the ByLineReaderSource.
@@ -66,9 +68,16 @@ public class ByLineReaderSource implemen
*/
public ByLineReaderSource( final Reader in )
{
- reader = new LineNumberReader( in );
+ this( in, "" );
+ }
+
+ public ByLineReaderSource( final Reader in, final String name )
+ {
+ this.reader = new LineNumberReader( in );
+
+ this.name = name;
- lineNumber = -1;
+ this.lineNumber = -1;
}
/** {@inheritDoc} */
@@ -113,7 +122,7 @@ public class ByLineReaderSource implemen
/** {@inheritDoc} */
public final String getName()
{
- return "";
+ return name;
}
/** {@inheritDoc} */
Modified: maven/doxia/doxia/trunk/doxia-modules/doxia-module-apt/src/main/java/org/apache/maven/doxia/module/apt/AptParser.java
URL: http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-modules/doxia-module-apt/src/main/java/org/apache/maven/doxia/module/apt/AptParser.java?rev=1726913&r1=1726912&r2=1726913&view=diff
==============================================================================
--- maven/doxia/doxia/trunk/doxia-modules/doxia-module-apt/src/main/java/org/apache/maven/doxia/module/apt/AptParser.java (original)
+++ maven/doxia/doxia/trunk/doxia-modules/doxia-module-apt/src/main/java/org/apache/maven/doxia/module/apt/AptParser.java Tue Jan 26 22:01:54 2016
@@ -184,10 +184,17 @@ public class AptParser
// Public methods
// ----------------------------------------------------------------------
- /** {@inheritDoc} */
+ @Override
public void parse( Reader source, Sink sink )
throws ParseException
{
+ parse( source, sink, "" );
+ }
+
+ @Override
+ public void parse( Reader source, Sink sink, String reference )
+ throws ParseException
+ {
init();
try
@@ -203,7 +210,7 @@ public class AptParser
try
{
- this.source = new AptReaderSource( new StringReader( sourceContent ) );
+ this.source = new AptReaderSource( new StringReader( sourceContent ), reference );
this.sink = sink;
sink.enableLogging( getLog() );
Modified: maven/doxia/doxia/trunk/doxia-modules/doxia-module-confluence/src/main/java/org/apache/maven/doxia/module/confluence/ConfluenceParser.java
URL: http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-modules/doxia-module-confluence/src/main/java/org/apache/maven/doxia/module/confluence/ConfluenceParser.java?rev=1726913&r1=1726912&r2=1726913&view=diff
==============================================================================
--- maven/doxia/doxia/trunk/doxia-modules/doxia-module-confluence/src/main/java/org/apache/maven/doxia/module/confluence/ConfluenceParser.java (original)
+++ maven/doxia/doxia/trunk/doxia-modules/doxia-module-confluence/src/main/java/org/apache/maven/doxia/module/confluence/ConfluenceParser.java Tue Jan 26 22:01:54 2016
@@ -104,11 +104,18 @@ public class ConfluenceParser
return blocks;
}
- /** {@inheritDoc} */
- public synchronized void parse( Reader source, Sink sink )
+ @Override
+ public void parse( Reader source, Sink sink )
throws ParseException
{
- ByLineSource src = new ByLineReaderSource( source );
+ parse( source, sink, "" );
+ }
+
+ @Override
+ public synchronized void parse( Reader source, Sink sink, String reference )
+ throws ParseException
+ {
+ ByLineSource src = new ByLineReaderSource( source, reference );
try
{
Modified: maven/doxia/doxia/trunk/doxia-modules/doxia-module-twiki/src/main/java/org/apache/maven/doxia/module/twiki/TWikiParser.java
URL: http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-modules/doxia-module-twiki/src/main/java/org/apache/maven/doxia/module/twiki/TWikiParser.java?rev=1726913&r1=1726912&r2=1726913&view=diff
==============================================================================
--- maven/doxia/doxia/trunk/doxia-modules/doxia-module-twiki/src/main/java/org/apache/maven/doxia/module/twiki/TWikiParser.java (original)
+++ maven/doxia/doxia/trunk/doxia-modules/doxia-module-twiki/src/main/java/org/apache/maven/doxia/module/twiki/TWikiParser.java Tue Jan 26 22:01:54 2016
@@ -131,14 +131,21 @@ public class TWikiParser
return ret;
}
- /** {@inheritDoc} */
- public final synchronized void parse( final Reader source, final Sink sink )
+ @Override
+ public void parse( Reader source, Sink sink )
+ throws ParseException
+ {
+ parse( source, sink, "" );
+ }
+
+ @Override
+ public final synchronized void parse( final Reader source, final Sink sink, String reference )
throws ParseException
{
init();
List<Block> blocks;
- final ByLineSource src = new ByLineReaderSource( source );
+ final ByLineSource src = new ByLineReaderSource( source, reference );
try
{