From 9ed0a8dbad121b64ca8baca78f28ca58602c47ca Mon Sep 17 00:00:00 2001
From: MW
Date: Wed, 25 Apr 2007 18:12:06 +0000
Subject: updated to use lastest version of libsl but is currently broke when
using SL viewer 1.15.02, due to big changes in the message templates.
---
XmlRpcCS/XmlRpcBoxcarRequest.cs | 51 +++++++++++++++++++++++++++++++++++++++++
1 file changed, 51 insertions(+)
create mode 100644 XmlRpcCS/XmlRpcBoxcarRequest.cs
(limited to 'XmlRpcCS/XmlRpcBoxcarRequest.cs')
diff --git a/XmlRpcCS/XmlRpcBoxcarRequest.cs b/XmlRpcCS/XmlRpcBoxcarRequest.cs
new file mode 100644
index 0000000..f87f7a5
--- /dev/null
+++ b/XmlRpcCS/XmlRpcBoxcarRequest.cs
@@ -0,0 +1,51 @@
+namespace Nwc.XmlRpc
+{
+ using System;
+ using System.Collections;
+ using System.IO;
+ using System.Xml;
+ using System.Net;
+ using System.Text;
+ using System.Reflection;
+
+ /// Class that collects individual XmlRpcRequest objects and submits them as a boxcarred request.
+ /// A boxcared request is when a number of request are collected before being sent via XML-RPC, and then are sent via
+ /// a single HTTP connection. This results in a speed up from reduced connection time. The results are then retuned collectively
+ /// as well.
+ ///
+ ///
+ public class XmlRpcBoxcarRequest : XmlRpcRequest
+ {
+ /// ArrayList to collect the requests to boxcar.
+ public IList Requests = new ArrayList();
+
+ /// Basic constructor.
+ public XmlRpcBoxcarRequest()
+ {
+ }
+
+ /// Returns the String "system.multiCall" which is the server method that handles boxcars.
+ public override String MethodName
+ {
+ get { return "system.multiCall"; }
+ }
+
+ /// The ArrayList of boxcarred Requests as properly formed parameters.
+ public override IList Params
+ {
+ get {
+ _params.Clear();
+ ArrayList reqArray = new ArrayList();
+ foreach (XmlRpcRequest request in Requests)
+ {
+ Hashtable requestEntry = new Hashtable();
+ requestEntry.Add(XmlRpcXmlTokens.METHOD_NAME, request.MethodName);
+ requestEntry.Add(XmlRpcXmlTokens.PARAMS, request.Params);
+ reqArray.Add(requestEntry);
+ }
+ _params.Add(reqArray);
+ return _params;
+ }
+ }
+ }
+}
--
cgit v1.1