Author: mgrigorov
Date: Sat May  7 13:37:33 2011
New Revision: 1100529

URL: http://svn.apache.org/viewvc?rev=1100529&view=rev
Log:
WICKET-3681 Make it easy to provide custom IXmlPullParser for MarkupFactory

Add factory method for the creation of IXmlPullParser.


Modified:
    
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/MarkupFactory.java

Modified: 
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/MarkupFactory.java
URL: 
http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/MarkupFactory.java?rev=1100529&r1=1100528&r2=1100529&view=diff
==============================================================================
--- 
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/MarkupFactory.java
 (original)
+++ 
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/MarkupFactory.java
 Sat May  7 13:37:33 2011
@@ -24,6 +24,7 @@ import org.apache.wicket.WicketRuntimeEx
 import org.apache.wicket.markup.loader.DefaultMarkupLoader;
 import org.apache.wicket.markup.loader.IMarkupLoader;
 import org.apache.wicket.markup.parser.IMarkupFilter;
+import org.apache.wicket.markup.parser.IXmlPullParser;
 import org.apache.wicket.markup.parser.XmlPullParser;
 import org.apache.wicket.util.lang.Args;
 import org.apache.wicket.util.resource.IResourceStream;
@@ -103,7 +104,7 @@ public class MarkupFactory
        public MarkupParser newMarkupParser(final MarkupResourceStream resource)
        {
                // Markup parsers can not be re-used
-               return new MarkupParser(new XmlPullParser(), resource)
+               return new MarkupParser(newXmlPullParser(), resource)
                {
                        /**
                         * @see 
org.apache.wicket.markup.MarkupParser#onAppendMarkupFilter(org.apache.wicket.markup.parser.IMarkupFilter)
@@ -117,6 +118,16 @@ public class MarkupFactory
        }
 
        /**
+        * Subclasses can override this to use custom parsers.
+        * 
+        * @return parser instance used by {@link MarkupParser} to parse markup.
+        */
+       protected IXmlPullParser newXmlPullParser()
+       {
+               return new XmlPullParser();
+       }
+
+       /**
         * A callback method that is invoked prior to any {@link IMarkupFilter} 
being registered with
         * {@link MarkupParser}. Hence it allows to:
         * <ul>


Reply via email to