Author: ltheussl
Date: Mon Jun 15 11:46:08 2009
New Revision: 784737
URL: http://svn.apache.org/viewvc?rev=784737&view=rev
Log:
Add an init() method to initialize a parser for multiple runs
Modified:
maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/parser/AbstractXmlParser.java
maven/doxia/doxia/trunk/doxia-modules/doxia-module-docbook-simple/src/main/java/org/apache/maven/doxia/module/docbook/DocBookParser.java
Modified:
maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/parser/AbstractXmlParser.java
URL:
http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/parser/AbstractXmlParser.java?rev=784737&r1=784736&r2=784737&view=diff
==============================================================================
---
maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/parser/AbstractXmlParser.java
(original)
+++
maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/parser/AbstractXmlParser.java
Mon Jun 15 11:46:08 2009
@@ -124,6 +124,8 @@
public void parse( Reader source, Sink sink )
throws ParseException
{
+ init();
+
// 1 first parsing if validation is required
if ( isValidate() )
{
@@ -208,6 +210,18 @@
}
/**
+ * Initialize the parser. This is called first by
+ * {...@link #parse(java.io.Reader, org.apache.maven.doxia.sink.Sink)} and
can be used
+ * to set the parser into a clear state so it can be re-used.
+ *
+ * @since 1.1.1
+ */
+ protected void init()
+ {
+ // default: empty
+ }
+
+ /**
* Parse the model from the XmlPullParser into the given sink.
*
* @param parser A parser, not null.
Modified:
maven/doxia/doxia/trunk/doxia-modules/doxia-module-docbook-simple/src/main/java/org/apache/maven/doxia/module/docbook/DocBookParser.java
URL:
http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-modules/doxia-module-docbook-simple/src/main/java/org/apache/maven/doxia/module/docbook/DocBookParser.java?rev=784737&r1=784736&r2=784737&view=diff
==============================================================================
---
maven/doxia/doxia/trunk/doxia-modules/doxia-module-docbook-simple/src/main/java/org/apache/maven/doxia/module/docbook/DocBookParser.java
(original)
+++
maven/doxia/doxia/trunk/doxia-modules/doxia-module-docbook-simple/src/main/java/org/apache/maven/doxia/module/docbook/DocBookParser.java
Mon Jun 15 11:46:08 2009
@@ -62,7 +62,8 @@
private boolean simpleTag;
- private char trademark = '\u2122';
+ private char trademark;
+
/**
* A selective stack of parent elements
*/
@@ -167,6 +168,18 @@
IGNORABLE_ELEMENTS.add(
SimplifiedDocbookMarkup.VOLUMENUM_TAG.toString() );
}
+ /** {...@inheritdoc} */
+ protected void init()
+ {
+ parent.clear();
+ trademark = 0;
+ level = 0;
+ isBold = false;
+ inHead = false;
+ ignore = false;
+ simpleTag = false;
+ }
+
// ----------------------------------------------------------------------
//
// ----------------------------------------------------------------------