* HttpSimpleClientProtocol.cs, HttpWebClientProtocol.cs,
authorLluis Sanchez <lluis@novell.com>
Fri, 9 Jul 2004 23:21:42 +0000 (23:21 -0000)
committerLluis Sanchez <lluis@novell.com>
Fri, 9 Jul 2004 23:21:42 +0000 (23:21 -0000)
  SoapClientMessage.cs, SoapHttpClientProtocol.cs, SoapServerMessage.cs:
  Added 2.0 stubs.
* SoapException.cs, SoapHeader.cs, SoapHeaderException.cs, SoapMessage.cs,
  SoapRpcMethodAttribute.cs, SoapRpcServiceAttribute.cs: Implemented some
  new methods and properties.
* WebClientProtocol.cs: uri field must be internal.

svn path=/trunk/mcs/; revision=30972

18 files changed:
mcs/class/System.Web.Services/System.Web.Services.Protocols/ChangeLog
mcs/class/System.Web.Services/System.Web.Services.Protocols/HttpSimpleClientProtocol.cs
mcs/class/System.Web.Services/System.Web.Services.Protocols/HttpWebClientProtocol.cs
mcs/class/System.Web.Services/System.Web.Services.Protocols/InvokeCompletedEventArgs.cs [new file with mode: 0644]
mcs/class/System.Web.Services/System.Web.Services.Protocols/InvokeCompletedEventHandler.cs [new file with mode: 0644]
mcs/class/System.Web.Services/System.Web.Services.Protocols/Soap12FaultCodes.cs [new file with mode: 0644]
mcs/class/System.Web.Services/System.Web.Services.Protocols/SoapClientMessage.cs
mcs/class/System.Web.Services/System.Web.Services.Protocols/SoapException.cs
mcs/class/System.Web.Services/System.Web.Services.Protocols/SoapFaultSubcode.cs [new file with mode: 0644]
mcs/class/System.Web.Services/System.Web.Services.Protocols/SoapHeader.cs
mcs/class/System.Web.Services/System.Web.Services.Protocols/SoapHeaderException.cs
mcs/class/System.Web.Services/System.Web.Services.Protocols/SoapHttpClientProtocol.cs
mcs/class/System.Web.Services/System.Web.Services.Protocols/SoapMessage.cs
mcs/class/System.Web.Services/System.Web.Services.Protocols/SoapProtocolVersion.cs [new file with mode: 0644]
mcs/class/System.Web.Services/System.Web.Services.Protocols/SoapRpcMethodAttribute.cs
mcs/class/System.Web.Services/System.Web.Services.Protocols/SoapRpcServiceAttribute.cs
mcs/class/System.Web.Services/System.Web.Services.Protocols/SoapServerMessage.cs
mcs/class/System.Web.Services/System.Web.Services.Protocols/WebClientProtocol.cs

index ba8026396efb06dccbcd2bc7734a6b7fd7e242a2..b720184fc0e68c7ca84885ac9627d195f784972f 100644 (file)
@@ -1,3 +1,13 @@
+2004-07-10  Lluis Sanchez Gual  <lluis@ximian.com>
+
+       * HttpSimpleClientProtocol.cs, HttpWebClientProtocol.cs, 
+         SoapClientMessage.cs, SoapHttpClientProtocol.cs, SoapServerMessage.cs:
+         Added 2.0 stubs.
+       * SoapException.cs, SoapHeader.cs, SoapHeaderException.cs, SoapMessage.cs,
+         SoapRpcMethodAttribute.cs, SoapRpcServiceAttribute.cs: Implemented some
+         new methods and properties.
+       * WebClientProtocol.cs: uri field must be internal.
+
 2004-07-05  Lluis Sanchez Gual  <lluis@ximian.com>
 
        * Methods.cs: When using RPC, ignore RequestElementName and MessageName, 
index 2d361bf11b5138f4bbd951b6d1f557970e75b78a..556b0431d2d2b5d44c78f0f17d8948053789bdcb 100644 (file)
@@ -32,6 +32,7 @@
 using System.Web.Services;\r
 using System.Net;\r
 using System.IO;\r
+using System.Threading;\r
 \r
 namespace System.Web.Services.Protocols {\r
        public abstract class HttpSimpleClientProtocol : HttpWebClientProtocol {\r
@@ -171,6 +172,22 @@ namespace System.Web.Services.Protocols {
                        return returnReader.Read (response, response.GetResponseStream ());\r
                }\r
                \r
+#if NET_2_0\r
+\r
+               [MonoTODO]\r
+               protected void InvokeAsync (string methodName, string requestUrl, object[] parameters, SendOrPostCallback callback)\r
+               {\r
+                       throw new NotImplementedException ();\r
+               }\r
+\r
+               [MonoTODO]\r
+               protected void InvokeAsync (string methodName, string requestUrl, object[] parameters, SendOrPostCallback callback, object userState)\r
+               {\r
+                       throw new NotImplementedException ();\r
+               }\r
+\r
+#endif\r
+               \r
                #endregion // Methods\r
        }\r
        \r
index 3be915cfbc80d26dbdebd095a4129394038aadc0..6acf87f4ad12dc7e45bfeb6bf7eeae2699417830 100644 (file)
@@ -34,6 +34,7 @@ using System.Net;
 using System.Security.Cryptography.X509Certificates;\r
 using System.Threading;\r
 using System.Web.Services;\r
+using System.Collections;\r
 \r
 namespace System.Web.Services.Protocols {\r
        public abstract class HttpWebClientProtocol : WebClientProtocol {\r
@@ -197,6 +198,27 @@ namespace System.Web.Services.Protocols {
                                \r
                        return response;\r
                }\r
+               \r
+#if NET_2_0\r
+\r
+               [MonoTODO]\r
+               protected void CancelAsync (object userState)\r
+               {\r
+                       throw new NotImplementedException ();\r
+               }\r
+\r
+               [MonoTODO]\r
+               public static Hashtable GenerateXmlMappings (Type type, ArrayList mapping)\r
+               {\r
+                       throw new NotImplementedException ();\r
+               }\r
+\r
+               [MonoTODO]\r
+               public static Hashtable GenerateXmlMappings (Type[] types, ArrayList mapping)\r
+               {\r
+                       throw new NotImplementedException ();\r
+               }\r
+#endif\r
 \r
                #endregion // Methods\r
        }\r
diff --git a/mcs/class/System.Web.Services/System.Web.Services.Protocols/InvokeCompletedEventArgs.cs b/mcs/class/System.Web.Services/System.Web.Services.Protocols/InvokeCompletedEventArgs.cs
new file mode 100644 (file)
index 0000000..56ba7dc
--- /dev/null
@@ -0,0 +1,54 @@
+// 
+// System.Web.Services.Protocols.InvokeCompletedEventArgs.cs
+//
+// Author:
+//   Lluis Sanchez (lluis@novell.com)
+//
+// Copyright (C) Novell, Inc., 2004
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+// 
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+// 
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+#if NET_2_0
+
+using System.ComponentModel;
+
+namespace System.Web.Services.Protocols 
+{
+       [MonoTODO]
+       public class InvokeCompletedEventArgs : AsyncCompletedEventArgs
+       {
+               object[] _results;
+               
+               internal InvokeCompletedEventArgs ()
+               : base (null, false, null)
+               {
+               }
+               
+               public object[] Results {
+                       get { return _results; }
+               }
+
+       }
+}
+
+#endif
diff --git a/mcs/class/System.Web.Services/System.Web.Services.Protocols/InvokeCompletedEventHandler.cs b/mcs/class/System.Web.Services/System.Web.Services.Protocols/InvokeCompletedEventHandler.cs
new file mode 100644 (file)
index 0000000..f1a31db
--- /dev/null
@@ -0,0 +1,41 @@
+// 
+// System.Web.Services.Protocols.InvokeCompletedEventHandler.cs
+//
+// Author:
+//   Lluis Sanchez (lluis@novell.com)
+//
+// Copyright (C) Novell, Inc., 2004
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+// 
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+// 
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+#if NET_2_0
+
+namespace System.Web.Services.Protocols 
+{
+       public delegate void InvokeCompletedEventHandler (
+               object sender, 
+               InvokeCompletedEventArgs e
+       );
+}
+
+#endif
diff --git a/mcs/class/System.Web.Services/System.Web.Services.Protocols/Soap12FaultCodes.cs b/mcs/class/System.Web.Services/System.Web.Services.Protocols/Soap12FaultCodes.cs
new file mode 100644 (file)
index 0000000..a66e2f0
--- /dev/null
@@ -0,0 +1,68 @@
+// 
+// System.Web.Services.Protocols.Soap12FaultCodes.cs
+//
+// Author:
+//   Lluis Sanchez (lluis@novell.com)
+//
+// Copyright (C) Novell, Inc., 2004
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+// 
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+// 
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+#if NET_2_0
+
+using System.Xml;
+
+namespace System.Web.Services.Protocols 
+{
+       public sealed class Soap12FaultCodes
+       {
+               public static readonly XmlQualifiedName DataEncodingUnknownFaultCode 
+                       = new XmlQualifiedName ("DataEncodingUnknown", "http://www.w3.org/2003/05/soap-envelope");
+                       
+               public static readonly XmlQualifiedName EncodingMissingIDFaultCode
+                       = new XmlQualifiedName ("MissingID", "http://www.w3.org/2003/05/soap-encoding");
+                       
+               public static readonly XmlQualifiedName EncodingUntypedValueFaultCode
+                       = new XmlQualifiedName ("UntypedValue", "http://www.w3.org/2003/05/soap-encoding");
+                       
+               public static readonly XmlQualifiedName MustUnderstandFaultCode
+                       = new XmlQualifiedName ("MustUnderstand", "http://www.w3.org/2003/05/soap-envelope");
+                       
+               public static readonly XmlQualifiedName ReceiverFaultCode
+                       = new XmlQualifiedName ("Receiver", "http://www.w3.org/2003/05/soap-envelope");
+                       
+               public static readonly XmlQualifiedName RpcBadArgumentsFaultCode
+                       = new XmlQualifiedName ("BadArguments", "http://www.w3.org/2003/05/soap-rpc");
+                       
+               public static readonly XmlQualifiedName RpcProcedureNotPresentFaultCode
+                       = new XmlQualifiedName ("ProcedureNotPresent", "http://www.w3.org/2003/05/soap-rpc");
+                       
+               public static readonly XmlQualifiedName SenderFaultCode
+                       = new XmlQualifiedName ("Sender", "http://www.w3.org/2003/05/soap-envelope");
+                       
+               public static readonly XmlQualifiedName VersionMismatchFaultCode
+                       = new XmlQualifiedName ("VersionMismatch", "http://www.w3.org/2003/05/soap-envelope");
+       }
+}
+
+#endif
index 6e219a2065c89efca1431935ce9a7a7b4eb4b54c..a8b0d4991f5a2a04cf90d0a18524449861d75712 100644 (file)
@@ -84,6 +84,13 @@ namespace System.Web.Services.Protocols {
                public override string Url {\r
                        get { return url; }\r
                }\r
+               \r
+#if NET_2_0\r
+               [MonoTODO]\r
+               public override SoapProtocolVersion SoapVersion {\r
+                       get { throw new NotImplementedException (); }\r
+               }\r
+#endif\r
 \r
                #endregion // Properties\r
 \r
index a627b17605a2b9f8dfe3693ec89e5b78878d1b47..1b2669aa1c07bc2fc54c36f14b3cb096bdaf8370 100644 (file)
@@ -3,6 +3,7 @@
 //\r
 // Author:\r
 //   Tim Coleman (tim@timcoleman.com)\r
+//   Lluis Sanchez Gual (lluis@novell.com)\r
 //\r
 // Copyright (C) Tim Coleman, 2002\r
 //\r
 \r
 using System.Xml;\r
 \r
-namespace System.Web.Services.Protocols {\r
-       public class SoapException : SystemException {\r
-\r
+namespace System.Web.Services.Protocols \r
+{\r
+       [Serializable]\r
+       public class SoapException : SystemException \r
+       {\r
                #region Fields\r
 \r
                public static readonly XmlQualifiedName ClientFaultCode = new XmlQualifiedName ("Client", "http://schemas.xmlsoap.org/soap/envelope/");\r
@@ -44,7 +47,12 @@ namespace System.Web.Services.Protocols {
                string actor;\r
                XmlQualifiedName code;\r
                XmlNode detail;\r
-\r
+               \r
+#if NET_2_0\r
+               string lang;\r
+               string role;\r
+               SoapFaultSubcode subcode;\r
+#endif\r
                #endregion\r
 \r
                #region Constructors\r
@@ -91,6 +99,64 @@ namespace System.Web.Services.Protocols {
                        this.detail = detail;\r
                }\r
 \r
+#if NET_2_0\r
+               public SoapException (string message, XmlQualifiedName code, SoapFaultSubcode subcode)\r
+                       : base (message)\r
+               {\r
+                       this.code = code;\r
+                       this.subcode = subcode;\r
+               }\r
+               \r
+               public SoapException (string message, XmlQualifiedName code, string actor, string role, XmlNode detail, SoapFaultSubcode subcode, Exception innerException)\r
+                       : base (message, innerException)\r
+               {\r
+                       this.code = code;\r
+                       this.subcode = subcode;\r
+                       this.detail = detail;\r
+                       this.actor = actor;\r
+                       this.role = role;\r
+               }\r
+               \r
+               public SoapException (string message, XmlQualifiedName code, string actor, string role, string lang, XmlNode detail, SoapFaultSubcode subcode, Exception innerException)\r
+               {\r
+                       this.code = code;\r
+                       this.subcode = subcode;\r
+                       this.detail = detail;\r
+                       this.actor = actor;\r
+                       this.role = role;\r
+                       this.lang = lang;\r
+               }\r
+\r
+               public static bool IsClientFaultCode (XmlQualifiedName code)\r
+               {\r
+                       if (code == ClientFaultCode) return true;\r
+                       if (code == Soap12FaultCodes.SenderFaultCode) return true;\r
+                       return false;\r
+               }\r
+\r
+               public static bool IsMustUnderstandFaultCode (XmlQualifiedName code)\r
+               {\r
+                       if (code == MustUnderstandFaultCode) return true;\r
+                       if (code == Soap12FaultCodes.MustUnderstandFaultCode) return true;\r
+                       return false;\r
+               }\r
+                               \r
+               public static bool IsServerFaultCode (XmlQualifiedName code)\r
+               {\r
+                       if (code == ServerFaultCode) return true;\r
+                       if (code == Soap12FaultCodes.ReceiverFaultCode) return true;\r
+                       return false;\r
+               }\r
+                               \r
+               public static bool IsVersionMismatchFaultCode (XmlQualifiedName code)\r
+               {\r
+                       if (code == VersionMismatchFaultCode) return true;\r
+                       if (code == Soap12FaultCodes.VersionMismatchFaultCode) return true;\r
+                       return false;\r
+               }\r
+\r
+#endif\r
+\r
                #endregion // Constructors\r
 \r
                #region Properties\r
@@ -107,6 +173,24 @@ namespace System.Web.Services.Protocols {
                        get { return detail; }\r
                }\r
 \r
+#if NET_2_0\r
+               public string Lang {\r
+                       get { return lang; }\r
+               }\r
+               \r
+               public string Role {\r
+                       get { return role; }\r
+               }\r
+               \r
+               public SoapFaultSubcode Subcode {\r
+                       get { return subcode; }\r
+               }\r
+               \r
+               // Same value as actor\r
+               public string Node {\r
+                       get { return actor; }\r
+               }\r
+#endif\r
                #endregion // Properties\r
        }\r
 }\r
diff --git a/mcs/class/System.Web.Services/System.Web.Services.Protocols/SoapFaultSubcode.cs b/mcs/class/System.Web.Services/System.Web.Services.Protocols/SoapFaultSubcode.cs
new file mode 100644 (file)
index 0000000..f6371ba
--- /dev/null
@@ -0,0 +1,64 @@
+// 
+// System.Web.Services.Protocols.SoapFaultSubcode.cs
+//
+// Author:
+//   Lluis Sanchez (lluis@novell.com)
+//
+// Copyright (C) Novell, Inc., 2004
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+// 
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+// 
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+#if NET_2_0
+
+using System.Xml;
+
+namespace System.Web.Services.Protocols 
+{
+       public class SoapFaultSubcode
+       {
+               XmlQualifiedName _code;
+               SoapFaultSubcode _subcode;
+               
+               public SoapFaultSubcode (XmlQualifiedName code)
+               {
+                       _code = code;
+               }
+               
+               public SoapFaultSubcode (XmlQualifiedName code, SoapFaultSubcode subcode)
+               {
+                       _code = code;
+                       _subcode = subcode;
+               }
+               
+               public XmlQualifiedName Code {
+                       get { return _code; }
+               }
+
+               public SoapFaultSubcode Subcode {
+                       get { return _subcode; }
+               }
+
+       }
+}
+
+#endif
index 2abe8ed612e0f8b318cc89c3f57585b41a341583..20c26b32adefdfda746bc8cbf7da69f829a3e8e8 100644 (file)
@@ -42,6 +42,11 @@ namespace System.Web.Services.Protocols {
                string actor;\r
                bool didUnderstand;\r
                bool mustUnderstand;\r
+               \r
+#if NET_2_0\r
+               string role;\r
+               bool relay;\r
+#endif\r
 \r
                #endregion // Fields\r
 \r
@@ -101,6 +106,56 @@ namespace System.Web.Services.Protocols {
                        get { return mustUnderstand; }\r
                        set { mustUnderstand = value; }\r
                }\r
+               \r
+#if NET_2_0\r
+\r
+               [DefaultValue ("0")]\r
+               [SoapAttribute ("mustUnderstand", Namespace = "http://www.w3.org/2003/05/soap-envelope")]\r
+               [XmlAttribute ("mustUnderstand", Namespace = "http://www.w3.org/2003/05/soap-envelope")]\r
+               public string EncodedMustUnderstand12 {\r
+                       get { return (MustUnderstand ? "1" : "0"); }\r
+                       set {   \r
+                               if (value == "true" || value == "1") \r
+                                       MustUnderstand = true;\r
+                               else if (value == "false" || value == "0")\r
+                                       MustUnderstand = false;\r
+                               else\r
+                                       throw new ArgumentException ();\r
+                       }\r
+               }\r
+\r
+               [DefaultValue ("0")]\r
+               [SoapAttribute ("relay", Namespace = "http://www.w3.org/2003/05/soap-envelope")]\r
+               [XmlAttribute ("relay", Namespace = "http://www.w3.org/2003/05/soap-envelope")]\r
+               public string EncodedRelay\r
+               {\r
+                       get { return (Relay ? "1" : "0"); }\r
+                       set {   \r
+                               if (value == "true" || value == "1") \r
+                                       Relay = true;\r
+                               else if (value == "false" || value == "0")\r
+                                       Relay = false;\r
+                               else\r
+                                       throw new ArgumentException ();\r
+                       }\r
+               }\r
+               \r
+               [SoapIgnore]\r
+               [XmlIgnore]\r
+               public bool Relay {\r
+                       get { return relay; }\r
+                       set { relay = value; }\r
+               }\r
+               \r
+               [DefaultValue ("")]\r
+               [SoapAttribute ("role", Namespace = "http://www.w3.org/2003/05/soap-envelope")]\r
+               [XmlAttribute ("role", Namespace = "http://www.w3.org/2003/05/soap-envelope")]\r
+               public string Role {\r
+                       get { return role; }\r
+                       set { role = value; }\r
+               }\r
+               \r
+#endif\r
 \r
                #endregion // Properties\r
        }\r
index 708cfccb38c67ef6034e41289015ef195c05abdd..6a1ec3d22e06fb9561a07debb10201a2e3e84c2a 100644 (file)
@@ -54,6 +54,37 @@ namespace System.Web.Services.Protocols {
                        : base (message, code, actor, innerException)\r
                {\r
                }\r
+               \r
+#if NET_2_0\r
+\r
+               public SoapHeaderException (\r
+                       string message, \r
+                       XmlQualifiedName code, \r
+                       string actor, \r
+                       string role, \r
+                       string lang, \r
+                       SoapFaultSubcode subcode, \r
+                       Exception innerException)\r
+                       \r
+               : base (message, code, actor, role, lang, null, subcode, innerException)\r
+               {\r
+                       \r
+               }\r
+\r
+               public SoapHeaderException (\r
+                       string message, \r
+                       XmlQualifiedName code, \r
+                       string actor, \r
+                       string role, \r
+                       SoapFaultSubcode subcode, \r
+                       Exception innerException)\r
+                       \r
+               : base (message, code, actor, role, null, subcode, innerException)\r
+               {\r
+                       \r
+               }\r
+\r
+#endif\r
 \r
                #endregion // Constructors\r
        }\r
index 377fb0efdc68ff38444d5ad7b6af163a17f6fd5f..899fd343be9d2a9b3f6588009243d5a523dcec75 100644 (file)
@@ -47,9 +47,15 @@ using System.Xml.Schema;
 using System.Collections;\r
 using System.Threading;\r
 \r
-namespace System.Web.Services.Protocols {\r
-       public class SoapHttpClientProtocol : HttpWebClientProtocol {\r
+namespace System.Web.Services.Protocols \r
+{\r
+       public class SoapHttpClientProtocol : HttpWebClientProtocol \r
+       {\r
                SoapTypeStubInfo type_info;\r
+#if NET_2_0\r
+               WsiClaims conformanceClaims;\r
+               SoapProtocolVersion soapVersion;\r
+#endif\r
 \r
                #region SoapWebClientAsyncResult class\r
 \r
@@ -320,6 +326,34 @@ namespace System.Web.Services.Protocols {
 \r
                        return ReceiveResponse (response, message, extensions);\r
                }\r
+               \r
+#if NET_2_0\r
+\r
+               [MonoTODO ("Do something with this")]\r
+               public WsiClaims ConformanceClaims {\r
+                       get { return conformanceClaims; }\r
+                       set { conformanceClaims = value; }\r
+               }\r
+               \r
+               [MonoTODO ("Do something with this")]\r
+               public SoapProtocolVersion SoapVersion {\r
+                       get { return soapVersion; }\r
+                       set { soapVersion = value; }\r
+               }\r
+               \r
+               [MonoTODO]\r
+               protected void InvokeAsync (string methodName, object[] parameters, SendOrPostCallback callback)\r
+               {\r
+                       throw new NotImplementedException ();\r
+               }\r
+\r
+               [MonoTODO]\r
+               protected void InvokeAsync (string methodName, object[] parameters, SendOrPostCallback callback, object userState)\r
+               {\r
+                       throw new NotImplementedException ();\r
+               }\r
+\r
+#endif\r
 \r
                #endregion // Methods\r
        }\r
index 48eaec87bedf246d952572446d63db9887eb0031..5a0536efca129040d6ee9a6e93078b181a90a6a2 100644 (file)
@@ -46,6 +46,10 @@ namespace System.Web.Services.Protocols {
                object[] inParameters;\r
                object[] outParameters;\r
                \r
+#if NET_2_0\r
+               SoapProtocolVersion soapVersion;\r
+#endif\r
+\r
                #endregion // Fields\r
 \r
                #region Constructors\r
@@ -95,6 +99,9 @@ namespace System.Web.Services.Protocols {
 \r
                public SoapException Exception {\r
                        get { return exception; }\r
+#if NET_2_0\r
+                       set { exception = value; }\r
+#endif\r
                }\r
 \r
                public SoapHeaderCollection Headers {\r
@@ -141,6 +148,13 @@ namespace System.Web.Services.Protocols {
                        set { content_encoding = value; }\r
                }\r
 #endif\r
+\r
+#if NET_2_0\r
+               public virtual SoapProtocolVersion SoapVersion {\r
+                       get { return soapVersion; }\r
+                       set { soapVersion = value; }\r
+               }\r
+#endif\r
  \r
                #endregion Properties\r
 \r
diff --git a/mcs/class/System.Web.Services/System.Web.Services.Protocols/SoapProtocolVersion.cs b/mcs/class/System.Web.Services/System.Web.Services.Protocols/SoapProtocolVersion.cs
new file mode 100644 (file)
index 0000000..29d40a7
--- /dev/null
@@ -0,0 +1,44 @@
+// 
+// System.Web.Services.Protocols.SoapProtocolVersion.cs
+//
+// Author:
+//   Lluis Sanchez (lluis@novell.com)
+//
+// Copyright (C) Novell, Inc., 2004
+//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+// 
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+// 
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+#if NET_2_0
+
+namespace System.Web.Services.Protocols 
+{
+       [Serializable]
+       public enum SoapProtocolVersion
+       {
+               Default,
+               Soap11,
+               Soap12
+       }
+}
+
+#endif
index 648057ef9578b3a94d4ee072112587ec99bc5e2a..af9146ab2db5d0ab56810918b8bf0a041c0bcd91 100644 (file)
@@ -28,6 +28,8 @@
 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 //
 \r
+using System.Web.Services.Description;\r
+\r
 namespace System.Web.Services.Protocols {\r
        [AttributeUsage (AttributeTargets.Method, Inherited = true)]\r
        public sealed class SoapRpcMethodAttribute : Attribute {\r
@@ -41,7 +43,10 @@ namespace System.Web.Services.Protocols {
                string requestNamespace;\r
                string responseElementName;\r
                string responseNamespace;\r
-\r
+               \r
+#if NET_2_0\r
+               SoapBindingUse use;\r
+#endif\r
                #endregion // Fields\r
 \r
                #region Constructors\r
@@ -94,6 +99,13 @@ namespace System.Web.Services.Protocols {
                        get { return responseNamespace != null ? responseNamespace : ""; }\r
                        set { responseNamespace = value; }\r
                }\r
+               \r
+#if NET_2_0\r
+               public SoapBindingUse Use {\r
+                       get { return use; }\r
+                       set { use = value; }\r
+               }\r
+#endif\r
 \r
                #endregion // Properties\r
        }\r
index cbad522e835d4c2644e844fa60b22e37cbf30f84..38da899f5dc23a16437bf9c50584b96d858a85e1 100644 (file)
@@ -28,6 +28,8 @@
 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 //
 \r
+using System.Web.Services.Description;\r
+\r
 namespace System.Web.Services.Protocols {\r
        [AttributeUsage (AttributeTargets.Class, Inherited = true)]\r
        public sealed class SoapRpcServiceAttribute : Attribute {\r
@@ -35,6 +37,9 @@ namespace System.Web.Services.Protocols {
                #region Fields\r
 \r
                SoapServiceRoutingStyle routingStyle;\r
+#if NET_2_0\r
+               SoapBindingUse use;\r
+#endif\r
 \r
                #endregion // Fields\r
 \r
@@ -54,6 +59,13 @@ namespace System.Web.Services.Protocols {
                        set { routingStyle = value; }\r
                }\r
 \r
+#if NET_2_0\r
+               public SoapBindingUse Use {\r
+                       get { return use; }\r
+                       set { use = value; }\r
+               }\r
+#endif\r
+\r
                #endregion // Properties\r
        }\r
 }\r
index e573b5b639fea2812988d5b566a491d9cd0d80cb..5c5c3a74063e9ba200e72270ab988c84bc4bdb0f 100644 (file)
@@ -93,6 +93,13 @@ namespace System.Web.Services.Protocols {
                        get { return url; }\r
                }\r
 \r
+#if NET_2_0\r
+               [MonoTODO]\r
+               public override SoapProtocolVersion SoapVersion {\r
+                       get { throw new NotImplementedException (); }\r
+               }\r
+#endif\r
+\r
                #endregion // Properties\r
 \r
                #region Methods\r
index a7e5744020eb03475972cb193b74409cec74e753..65f0f0852597b8e4e67d6541a1121529caa2a9e0 100644 (file)
@@ -51,7 +51,7 @@ namespace System.Web.Services.Protocols {
                //\r
                // Used by SoapHttpClientProtocol, use this to avoid creating a new Uri on each invocation.\r
                //\r
-               protected internal Uri uri;\r
+               internal Uri uri;\r
                        \r
                //\r
                // Points to the current request, so we can call Abort() on it\r