2003-04-29 Miguel de Icaza <miguel@ximian.com>
[mono.git] / mcs / class / System.Web.Services / System.Web.Services.Protocols / SoapHttpClientProtocol.cs
1 // \r
2 // System.Web.Services.Protocols.SoapHttpClientProtocol.cs\r
3 //\r
4 // Author:\r
5 //   Tim Coleman (tim@timcoleman.com)\r
6 //\r
7 // Copyright (C) Tim Coleman, 2002\r
8 //\r
9 \r
10 using System.IO;\r
11 using System.Net;\r
12 using System.Web;\r
13 using System.Web.Services;\r
14 \r
15 namespace System.Web.Services.Protocols {\r
16         public class SoapHttpClientProtocol : HttpWebClientProtocol {\r
17 \r
18                 #region Constructors\r
19 \r
20                 public SoapHttpClientProtocol () \r
21                 {\r
22                 }\r
23                 \r
24                 #endregion // Constructors\r
25 \r
26                 #region Methods\r
27 \r
28                 [MonoTODO]\r
29                 protected IAsyncResult BeginInvoke (string methodName, object[] parameters, AsyncCallback callback, object asyncState)\r
30                 {\r
31                         throw new NotImplementedException ();\r
32                 }\r
33 \r
34                 [MonoTODO]\r
35                 public void Discover ()\r
36                 {\r
37                         throw new NotImplementedException ();\r
38                 }\r
39 \r
40                 [MonoTODO]\r
41                 protected object[] EndInvoke (IAsyncResult asyncResult)\r
42                 {\r
43                         throw new NotImplementedException ();\r
44                 }\r
45 \r
46                 protected override WebRequest GetWebRequest (Uri uri)\r
47                 {\r
48                         return WebRequest.Create (uri);\r
49                 }\r
50 \r
51                 SoapClientMessage CreateMessage (string method_name, object [] parameters)\r
52                 {\r
53                         //SoapClientMessage message = new SoapClientMessage (this);\r
54 \r
55                         return null;\r
56                 }\r
57                 \r
58                 void SendMessage (WebRequest request, SoapClientMessage message)\r
59                 {\r
60                         \r
61                 }\r
62                 \r
63                 protected object[] Invoke (string method_name, object[] parameters)\r
64                 {\r
65                         SoapClientMessage message = CreateMessage (method_name, parameters);\r
66                         WebRequest request = GetWebRequest (uri);\r
67                         Stream s = request.GetRequestStream ();\r
68                         \r
69                         try {\r
70                                 SendMessage (request, message);\r
71                         } finally {\r
72                                 s.Close ();\r
73                         }\r
74 \r
75                         return null;\r
76                 }\r
77 \r
78                 #endregion // Methods\r
79         }\r
80 }\r