Author: jochen
Date: Wed May 10 04:36:24 2006
New Revision: 405718
URL: http://svn.apache.org/viewcvs?rev=405718&view=rev
Log:
Made XmlWriter public and added a FAQ, which demonstrates how to use a
customized XmlWriter.
Modified:
webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/changes.xml
webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/src/java/org/apache/xmlrpc/XmlRpcClient.java
webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/src/java/org/apache/xmlrpc/XmlRpcClientRequestProcessor.java
webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/src/java/org/apache/xmlrpc/XmlRpcResponseProcessor.java
webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/src/java/org/apache/xmlrpc/XmlWriter.java
webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/src/site/site.xml
Modified: webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/changes.xml
URL:
http://svn.apache.org/viewcvs/webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/changes.xml?rev=405718&r1=405717&r2=405718&view=diff
==============================================================================
--- webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/changes.xml (original)
+++ webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/changes.xml Wed May 10
04:36:24 2006
@@ -12,6 +12,10 @@
</action>
<action dev="jochen" type="enhancement" issue="XMLRPC-40">
Made the maximum number of async workers configurable.
+ </action>
+ <action dev="jochen" type="enhancement" issue="XMLRPC-42">
+ Made XMLWriter public and added methods for supplying a custom
+ XMLWriter.
</action>
</release>
<release version="2.0.1" date="28-Dec-2005">
Modified:
webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/src/java/org/apache/xmlrpc/XmlRpcClient.java
URL:
http://svn.apache.org/viewcvs/webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/src/java/org/apache/xmlrpc/XmlRpcClient.java?rev=405718&r1=405717&r2=405718&view=diff
==============================================================================
---
webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/src/java/org/apache/xmlrpc/XmlRpcClient.java
(original)
+++
webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/src/java/org/apache/xmlrpc/XmlRpcClient.java
Wed May 10 04:36:24 2006
@@ -352,10 +352,17 @@
{
workers += 1;
}
- return new XmlRpcClientWorker(getTimeZone());
+ return newXmlRpcClientWorker();
}
throw new IOException("XML-RPC System overload");
}
+ }
+
+ /** Creates and returns a new instance of [EMAIL PROTECTED]
XmlRpcClientWorker}.
+ * You should overwrite this method, if you want a custom worker.
+ */
+ protected XmlRpcClientWorker newXmlRpcClientWorker() {
+ return new XmlRpcClientWorker(getTimeZone());
}
TimeZone tz;
Modified:
webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/src/java/org/apache/xmlrpc/XmlRpcClientRequestProcessor.java
URL:
http://svn.apache.org/viewcvs/webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/src/java/org/apache/xmlrpc/XmlRpcClientRequestProcessor.java?rev=405718&r1=405717&r2=405718&view=diff
==============================================================================
---
webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/src/java/org/apache/xmlrpc/XmlRpcClientRequestProcessor.java
(original)
+++
webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/src/java/org/apache/xmlrpc/XmlRpcClientRequestProcessor.java
Wed May 10 04:36:24 2006
@@ -20,6 +20,7 @@
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.OutputStream;
+import java.io.UnsupportedEncodingException;
import java.util.TimeZone;
/**
@@ -55,7 +56,7 @@
{
XmlWriter writer;
- writer = new XmlWriter(out, encoding);
+ writer = newXMLWriter(encoding, out);
writer.dateTool.setTimeZone(tz);
writer.startElement("methodCall");
writer.startElement("methodName");
@@ -80,6 +81,13 @@
writer.endElement("params");
writer.endElement("methodCall");
writer.flush();
+ }
+
+ /** Creates and returns a new instance of [EMAIL PROTECTED] XmlWriter}.
You should
+ * overwrite this method, if you need a custom writer.
+ */
+ protected XmlWriter newXMLWriter(String encoding, OutputStream out) throws
UnsupportedEncodingException {
+ return new XmlWriter(out, encoding);
}
/**
Modified:
webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/src/java/org/apache/xmlrpc/XmlRpcResponseProcessor.java
URL:
http://svn.apache.org/viewcvs/webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/src/java/org/apache/xmlrpc/XmlRpcResponseProcessor.java?rev=405718&r1=405717&r2=405718&view=diff
==============================================================================
---
webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/src/java/org/apache/xmlrpc/XmlRpcResponseProcessor.java
(original)
+++
webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/src/java/org/apache/xmlrpc/XmlRpcResponseProcessor.java
Wed May 10 04:36:24 2006
@@ -62,7 +62,7 @@
try
{
ByteArrayOutputStream buffer = new ByteArrayOutputStream();
- XmlWriter writer = new XmlWriter(buffer, encoding);
+ XmlWriter writer = newXMLWriter(encoding, buffer);
writeResponse(responseParam, writer);
writer.flush();
return buffer.toByteArray();
@@ -102,7 +102,7 @@
XmlWriter writer = null;
try
{
- writer = new XmlWriter(buffer, encoding);
+ writer = newXMLWriter(encoding, buffer);
}
catch (UnsupportedEncodingException encx)
{
@@ -133,6 +133,13 @@
}
return (writer != null ? buffer.toByteArray() : EMPTY_BYTE_ARRAY);
+ }
+
+ /** Creates and returns a new instance of [EMAIL PROTECTED] XMLWriter}.
You should
+ * overwrite this method, if you need a custom writer.
+ */
+ protected XmlWriter newXMLWriter(String encoding, ByteArrayOutputStream
buffer) throws UnsupportedEncodingException {
+ return new XmlWriter(buffer, encoding);
}
/**
Modified:
webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/src/java/org/apache/xmlrpc/XmlWriter.java
URL:
http://svn.apache.org/viewcvs/webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/src/java/org/apache/xmlrpc/XmlWriter.java?rev=405718&r1=405717&r2=405718&view=diff
==============================================================================
---
webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/src/java/org/apache/xmlrpc/XmlWriter.java
(original)
+++
webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/src/java/org/apache/xmlrpc/XmlWriter.java
Wed May 10 04:36:24 2006
@@ -43,7 +43,7 @@
* @see <a href="http://www.xml.com/axml/testaxml.htm">Tim Bray's
* Annotated XML Spec</a>
*/
-class XmlWriter extends OutputStreamWriter
+public class XmlWriter extends OutputStreamWriter
{
// Various XML pieces.
protected static final String PROLOG_START = "<?xml version=\"1.0";
Modified: webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/src/site/site.xml
URL:
http://svn.apache.org/viewcvs/webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/src/site/site.xml?rev=405718&r1=405717&r2=405718&view=diff
==============================================================================
--- webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/src/site/site.xml (original)
+++ webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/src/site/site.xml Wed May 10
04:36:24 2006
@@ -18,6 +18,7 @@
<item name="Server Side XML-RPC" href="/server.html"/>
<item name="XML-RPC Types" href="/types.html"/>
<item name="XML Parsers" href="/parser.html"/>
+ <item name="FAQ" href="/faq.html"/>
</menu>
<menu name="Resources">
<item name="Download" href="/download.html"/>