2002-08-03 Tim Coleman <tim@timcoleman.com>
[mono.git] / mcs / class / System.Web.Services / System.Web.Services.Description / ProtocolImporter.cs
1 // \r
2 // System.Web.Services.Description.ProtocolImporter.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.CodeDom;\r
11 using System.Web.Services;\r
12 using System.Xml.Serialization;\r
13 \r
14 namespace System.Web.Services.Description {\r
15         public abstract class ProtocolImporter {\r
16 \r
17                 #region Fields\r
18 \r
19                 XmlSchemas abstractSchemas;\r
20                 Binding binding;\r
21                 string className;\r
22                 CodeIdentifiers classNames;\r
23                 CodeNamespace codeNamespace;\r
24                 CodeTypeDeclaration codeTypeDeclaration;\r
25                 XmlSchemas concreteSchemas;\r
26                 Message inputMessage;\r
27                 string methodName;\r
28                 Operation operation;\r
29                 OperationBinding operationBinding;\r
30                 Message outputMessage;          \r
31                 Port port;\r
32                 PortType portType;\r
33                 string protocolName;\r
34                 XmlSchemas schemas;\r
35                 Service service;\r
36                 ServiceDescriptionCollection serviceDescriptions;\r
37                 ServiceDescriptionImportStyle style;\r
38                 ServiceDescriptionImportWarnings warnings;      \r
39 \r
40                 #endregion // Fields\r
41 \r
42                 #region Constructors\r
43         \r
44                 [MonoTODO]      \r
45                 protected ProtocolImporter ()\r
46                 {\r
47                         throw new NotImplementedException ();\r
48                 }\r
49                 \r
50                 #endregion // Constructors\r
51 \r
52                 #region Properties\r
53 \r
54                 public XmlSchemas AbstractSchemas {\r
55                         get { return abstractSchemas; }\r
56                 }\r
57 \r
58                 public Binding Binding {\r
59                         get { return binding; }\r
60                 }\r
61 \r
62                 public string ClassName {\r
63                         get { return className; }\r
64                 }\r
65 \r
66                 public CodeIdentifiers ClassNames {\r
67                         get { return classNames; }\r
68                 }\r
69 \r
70                 public CodeNamespace CodeNamespace {\r
71                         get { return codeNamespace; }\r
72                 }\r
73 \r
74                 public CodeTypeDeclaration CodeTypeDeclaration {\r
75                         get { return codeTypeDeclaration; }\r
76                 }\r
77 \r
78                 public XmlSchemas ConcreteSchemas {\r
79                         get { return concreteSchemas; }\r
80                 }\r
81 \r
82                 public Message InputMessage {\r
83                         get { return inputMessage; }\r
84                 }\r
85 \r
86                 public string MethodName {\r
87                         get { return methodName; }\r
88                 }\r
89 \r
90                 public Operation Operation {\r
91                         get { return operation; }\r
92                 }\r
93 \r
94                 public OperationBinding OperationBinding {\r
95                         get { return operationBinding; }\r
96                 }\r
97 \r
98                 public Message OutputMessage {\r
99                         get { return outputMessage; }\r
100                 }\r
101 \r
102                 public Port Port {\r
103                         get { return port; }\r
104                 }\r
105 \r
106                 public PortType PortType {\r
107                         get { return portType; }\r
108                 }\r
109 \r
110                 public abstract string ProtocolName {\r
111                         get; \r
112                 }\r
113 \r
114                 public XmlSchemas Schemas {\r
115                         get { return schemas; }\r
116                 }\r
117 \r
118                 public Service Service {\r
119                         get { return service; } \r
120                 }\r
121 \r
122                 public ServiceDescriptionCollection ServiceDescriptions {\r
123                         get { return serviceDescriptions; }\r
124                 }\r
125 \r
126                 public ServiceDescriptionImportStyle Style {\r
127                         get { return style; }\r
128                 }\r
129 \r
130                 public ServiceDescriptionImportWarnings Warnings {\r
131                         get { return warnings; }\r
132                         set { warnings = value; }\r
133                 }\r
134 \r
135                 #endregion // Properties\r
136 \r
137                 #region Methods\r
138 \r
139                 [MonoTODO]\r
140                 public void AddExtensionWarningComments (CodeCommentStatementCollection comments, ServiceDescriptionFormatExtensionCollection extensions) \r
141                 {\r
142                         throw new NotImplementedException ();\r
143                 }\r
144 \r
145                 protected abstract CodeTypeDeclaration BeginClass ();\r
146 \r
147                 [MonoTODO]\r
148                 protected virtual void BeginNamespace ()\r
149                 {\r
150                         throw new NotImplementedException ();\r
151                 }\r
152 \r
153                 [MonoTODO]\r
154                 protected virtual void EndClass ()\r
155                 {\r
156                         throw new NotImplementedException ();\r
157                 }\r
158 \r
159                 [MonoTODO]\r
160                 protected virtual void EndNamespace ()\r
161                 {\r
162                         throw new NotImplementedException ();\r
163                 }\r
164 \r
165                 protected abstract CodeMemberMethod GenerateMethod ();\r
166                 protected abstract bool IsBindingSupported ();\r
167                 protected abstract bool IsOperationFlowSupported (OperationFlow flow);\r
168                 \r
169                 [MonoTODO]\r
170                 public Exception OperationBindingSyntaxException (string text)\r
171                 {\r
172                         throw new NotImplementedException ();\r
173                 }\r
174 \r
175                 [MonoTODO]\r
176                 public Exception OperationSyntaxException (string text)\r
177                 {\r
178                         throw new NotImplementedException ();\r
179                 }\r
180 \r
181                 [MonoTODO]\r
182                 public void UnsupportedBindingWarning (string text)\r
183                 {\r
184                         throw new NotImplementedException ();\r
185                 }\r
186 \r
187                 [MonoTODO]\r
188                 public void UnsupportedOperationBindingWarning (string text)\r
189                 {\r
190                         throw new NotImplementedException ();\r
191                 }\r
192 \r
193                 [MonoTODO]\r
194                 public void UnsupportedOperationWarning (string text)\r
195                 {\r
196                         throw new NotImplementedException ();\r
197                 }\r
198 \r
199                 #endregion\r
200         }\r
201 }\r