2002-07-20 Tim Coleman <tim@timcoleman.com>
[mono.git] / mcs / class / System.Web.Services / System.Web.Services.Protocols / SoapMessage.cs
1 // \r
2 // System.Web.Services.Protocols.SoapMessage.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.Web.Services;\r
12 \r
13 namespace System.Web.Services.Protocols {\r
14         public abstract class SoapMessage {\r
15 \r
16                 #region Fields\r
17 \r
18                 string contentType;\r
19                 SoapException exception;\r
20                 SoapHeaderCollection headers;\r
21                 SoapMessageStage stage;\r
22 \r
23                 #endregion // Fields\r
24 \r
25                 #region Constructors\r
26 \r
27                 internal SoapMessage ()\r
28                 {\r
29                         contentType = "text/xml";\r
30                         exception = null;\r
31                         headers = null;\r
32                 }\r
33 \r
34                 #endregion // Fields\r
35 \r
36                 #region Properties\r
37 \r
38                 public abstract string Action {\r
39                         get;\r
40                 }\r
41 \r
42                 public string ContentType {\r
43                         get { return contentType; }\r
44                         set { contentType = value; }\r
45                 }\r
46 \r
47                 public SoapException Exception {\r
48                         get { return exception; }\r
49                 }\r
50 \r
51                 public SoapHeaderCollection Headers {\r
52                         get { return headers; }\r
53                 }\r
54 \r
55                 public abstract LogicalMethodInfo MethodInfo {\r
56                         get;\r
57                 }\r
58 \r
59                 public abstract bool OneWay {\r
60                         get;\r
61                 }\r
62 \r
63                 public SoapMessageStage Stage {\r
64                         get { return stage; }\r
65                 }\r
66 \r
67                 public Stream Stream {\r
68                         [MonoTODO]\r
69                         get { throw new NotImplementedException (); }\r
70                 }\r
71 \r
72                 public abstract string Url {\r
73                         get;\r
74                 }\r
75 \r
76                 #endregion Properties\r
77 \r
78                 #region Methods\r
79 \r
80                 protected abstract void EnsureInStage ();\r
81                 protected abstract void EnsureOutStage ();\r
82 \r
83                 [MonoTODO]\r
84                 protected void EnsureStage (SoapMessageStage stage) \r
85                 {\r
86                         throw new NotImplementedException ();\r
87                 }\r
88 \r
89                 [MonoTODO]\r
90                 public object GetInParameterValue (int index) \r
91                 {\r
92                         throw new NotImplementedException ();\r
93                 }\r
94 \r
95                 [MonoTODO]\r
96                 public object GetOutParameterValue (int index) \r
97                 {\r
98                         throw new NotImplementedException ();\r
99                 }\r
100 \r
101                 [MonoTODO]\r
102                 public object GetReturnValue ()\r
103                 {\r
104                         throw new NotImplementedException ();\r
105                 }\r
106 \r
107                 #endregion // Methods\r
108         }\r
109 }\r