aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/Common/XmlRpcCS/XmlRpcRequestSerializer.cs
diff options
context:
space:
mode:
authorAdam Frisby2007-07-11 08:02:47 +0000
committerAdam Frisby2007-07-11 08:02:47 +0000
commit5c7ffdde0b9642a42e8f5987e06eb01220ff7776 (patch)
tree4b825dc642cb6eb9a060e54bf8d69288fbee4904 /Common/XmlRpcCS/XmlRpcRequestSerializer.cs
parentWho would have known that the only way of specifying utf-8 without preamble, ... (diff)
downloadopensim-SC_OLD-5c7ffdde0b9642a42e8f5987e06eb01220ff7776.zip
opensim-SC_OLD-5c7ffdde0b9642a42e8f5987e06eb01220ff7776.tar.gz
opensim-SC_OLD-5c7ffdde0b9642a42e8f5987e06eb01220ff7776.tar.bz2
opensim-SC_OLD-5c7ffdde0b9642a42e8f5987e06eb01220ff7776.tar.xz
* Wiping trunk in prep for Sugilite
Diffstat (limited to '')
-rw-r--r--Common/XmlRpcCS/XmlRpcRequestSerializer.cs78
1 files changed, 0 insertions, 78 deletions
diff --git a/Common/XmlRpcCS/XmlRpcRequestSerializer.cs b/Common/XmlRpcCS/XmlRpcRequestSerializer.cs
deleted file mode 100644
index 9bf95c7..0000000
--- a/Common/XmlRpcCS/XmlRpcRequestSerializer.cs
+++ /dev/null
@@ -1,78 +0,0 @@
1/*
2* Copyright (c) Contributors, http://www.openmetaverse.org/
3* See CONTRIBUTORS.TXT for a full list of copyright holders.
4*
5* Redistribution and use in source and binary forms, with or without
6* modification, are permitted provided that the following conditions are met:
7* * Redistributions of source code must retain the above copyright
8* notice, this list of conditions and the following disclaimer.
9* * Redistributions in binary form must reproduce the above copyright
10* notice, this list of conditions and the following disclaimer in the
11* documentation and/or other materials provided with the distribution.
12* * Neither the name of the OpenSim Project nor the
13* names of its contributors may be used to endorse or promote products
14* derived from this software without specific prior written permission.
15*
16* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS AND ANY
17* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
20* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26*
27*/
28namespace Nwc.XmlRpc
29{
30 using System;
31 using System.Collections;
32 using System.Xml;
33 using System.IO;
34
35 /// <summary>Class responsible for serializing an XML-RPC request.</summary>
36 /// <remarks>This class handles the request envelope, depending on <c>XmlRpcSerializer</c>
37 /// to serialize the payload.</remarks>
38 /// <seealso cref="XmlRpcSerializer"/>
39 public class XmlRpcRequestSerializer : XmlRpcSerializer
40 {
41 static private XmlRpcRequestSerializer _singleton;
42 /// <summary>A static singleton instance of this deserializer.</summary>
43 static public XmlRpcRequestSerializer Singleton
44 {
45 get
46 {
47 if (_singleton == null)
48 _singleton = new XmlRpcRequestSerializer();
49
50 return _singleton;
51 }
52 }
53
54 /// <summary>Serialize the <c>XmlRpcRequest</c> to the output stream.</summary>
55 /// <param name="output">An <c>XmlTextWriter</c> stream to write data to.</param>
56 /// <param name="obj">An <c>XmlRpcRequest</c> to serialize.</param>
57 /// <seealso cref="XmlRpcRequest"/>
58 override public void Serialize(XmlTextWriter output, Object obj)
59 {
60 XmlRpcRequest request = (XmlRpcRequest)obj;
61 output.WriteStartDocument();
62 output.WriteStartElement(METHOD_CALL);
63 output.WriteElementString(METHOD_NAME, request.MethodName);
64 output.WriteStartElement(PARAMS);
65 foreach (Object param in request.Params)
66 {
67 output.WriteStartElement(PARAM);
68 output.WriteStartElement(VALUE);
69 SerializeObject(output, param);
70 output.WriteEndElement();
71 output.WriteEndElement();
72 }
73
74 output.WriteEndElement();
75 output.WriteEndElement();
76 }
77 }
78}