1 2006-09-06 Lluis Sanchez Gual <lluis@novell.com>
3 * ValueCollectionParameterReader.cs, MimeFormatter.cs: Support enums in
4 the http get and post protocols. Fixes bug #78461.
6 2006-09-06 Lluis Sanchez Gual <lluis@novell.com>
8 * SoapException.cs: Fix property name.
10 2006-09-05 Ankit Jain <jankit@novell.com>
12 * LogicalMethodTypes.cs:
13 * SoapMessageStage.cs:
14 * SoapServiceRoutingStyle.cs:
15 * SoapHeaderDirection.cs:
16 * SoapParameterStyle.cs:
17 * SoapProtocolVersion.cs: Remove [Serializable].
19 2006-08-30 Konstantin Triger <kostat@mainsoft.com>
21 * WebClientProtocol.cs: implemented WebClientProtocol.UseDefaultCredentials().
23 2006-06-08 Chris Toshok <toshok@ximian.com>
25 * WebServiceHandlerFactory.cs: remove the CONFIGURATION_2_0 from
26 ifdefs. NET_2_0 implies this now.
28 * SoapExtension.cs: same.
30 * SoapDocumentationHandler.cs: same.
32 2006-03-15 Vladimir Krasnov <vladimirk@mainsoft.com>
34 * SoapExtension.cs: fixed ExecuteProcessMessage signature, added
35 stream parameter in order to update SoapMessage stream
36 * SoapMessage.cs: removed unused ctor, added internal property to
37 set SoapMessage's stream member
38 * HttpSoapWebServiceHandler.cs, SoapHttpClientProtocol.cs: updated
39 usage of ExecuteProcessMessage
41 2006-03-15 Vladimir Krasnov <vladimirk@mainsoft.com>
43 * SoapServerMessage.cs: fixed SoapServerMessage constructors to
44 remove quotes from SoapAction http header when initializing local
47 2006-03-15 Vladimir Krasnov <vladimirk@mainsoft.com>
49 * HttpSoapWebServiceHandler.cs, SoapServerMessage.cs: fixed
50 SoapMessage.ContentEncoding that used in ProcessMessage method
53 2006-03-12 Vladimir Krasnov <vladimirk@mainsoft.com>
55 * TypeStubManager.cs: fixed type_to_manager member to be initialized
56 per appdoamin (within TARGET_JVM block)
58 2006-03-12 Vladimir Krasnov <vladimirk@mainsoft.com>
60 * SoapDocumentationHandler.cs: TARGET_JVM blocks added to exclude
63 2006-01-12 Ben Maurer <bmaurer@andrew.cmu.edu>
65 * WebClientProtocol.cs: Add a 2.0 stub
67 2006-01-04 Chris Toshok <toshok@ximian.com>
69 * SoapDocumentationHandler.cs: add CONFIGURATION_2_0 stuff.
71 2006-01-04 Chris Toshok <toshok@ximian.com>
73 * WebServiceHandlerFactory.cs: add CONFIGURATION_2_0 stuff.
75 * SoapExtension.cs: add CONFIGURATION_2_0 stuff.
77 2005-09-26 Lluis Sanchez Gual <lluis@novell.com>
79 * LogicalMethodInfo.cs: GetCustomAttribute* does not return
80 inherited attributes in MS.NET.
82 2005-08-15 Gert Driesen <drieseng@users.sourceforge.net>
84 * SoapException.cs: Only mark serializable on 2.0 profile.
85 * SoapHeaderException.cs: Only mark serializable on 2.0 profile.
86 * WebClientProtocol.cs: DefaultValue of RequestEncoding must be null
87 to match MS.NET. Fixed line endings.
89 2005-08-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
91 * SoapDocumentationHandler.cs: workaround for a bug in the HttpRequest
92 QueryString property. Under MS, GetKey (0) yields null.
94 2005-06-30 Konstantin Triger <kostat@mainsoft.com>
96 * HttpSoapWebServiceHandler.cs:
97 * HttpSimpleWebServiceHandler.cs: Disposing the WebService instance
98 after a WebMethod invocation.
100 2005-06-14 Lluis Sanchez Gual <lluis@novell.com>
102 * SoapHttpClientProtocol.cs:
103 * WebServiceHelper.cs:
104 * Methods.cs: Changed the way headers are serialized. Instead of having
105 a serializer per header type, we now have a serializer per method, and
106 headers are serialized using a member mapping.
108 * HttpSoapWebServiceHandler.cs: Handle one way methods properly.
111 2005-06-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
113 * HttpSoapWebServiceHandler.cs: use the HttpResponse.BufferOutput
114 instead of our own MemoryStream when buffering is enabled. Flush the
115 response instead of closing it, as that allows for Content-Length to
116 be sent from HttpResponse and helps reusing connections.
118 2005-06-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
120 * WebServiceHelper.cs: don't even try to read the response if its length
123 * SoapHttpClientProtocol.cs: for successful responses on methods that
124 are not one-way, don't return immediately if the content length is 0 so
125 that the check for Content-Type takes place.
127 2005-06-07 Kornél Pál <kornelpal@hotmail.com>
129 * WebServiceHandlerFactory.cs: Throw InvalidOperationException instead of
130 returning DummyHttpHandler when the request format is not supported.
132 2005-06-06 Kornél Pál <kornelpal@hotmail.com>
134 * WebServiceHandlerFactory.cs: Added support for HttpPostLocalhost and HttpSoap12
136 2005-06-05 Konstantin Triger <kostat@mainsoft.com>
138 * SoapHttpClientProtocol.cs: Close WebResponse to free resources
139 * WebClientProtocol.cs, TypeStubManager.cs, SoapExtension.cs: moving static fields to AppDomain in Java builds
141 2005-02-07 Lluis Sanchez Gual <lluis@novell.com>
143 * XmlReturnWriter.cs, SoapDocumentationHandler.cs: Use utf-8 encoding
144 when generating xml responses, wsdl documents and schemas. This fixes
147 2004-12-09 Lluis Sanchez Gual <lluis@novell.com>
149 * ValueCollectionParameterReader.cs: Parse parameters in the correct
150 way, Convert.ChangeType is not enough. This fixes bug #70266.
151 Removed some types that are not supported as parameters.
152 * MimeFormatter.cs: Added methods for xml <-> object conversion.
153 * UrlEncodedParameterWriter.cs: Use a more elaborate method for converting
154 from object to string, ToString() is not enough.
156 2004-12-09 Lluis Sanchez Gual <lluis@novell.com>
158 * TypeStubManager.cs: Removed redundat hastable access.
159 * SoapHttpClientProtocol.cs: Accept responses with ContentLength==0.
160 This fixes bug #70310.
162 2004-12-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
164 * SoapHttpClientProtocol.cs: dispose the StreamReader that wraps the
167 2004-09-15 Lluis Sanchez Gual <lluis@novell.com>
169 * Methods.cs: Use the service namespace as the base for the soap action.
170 This fixes bug #60379.
172 2004-08-25 Lluis Sanchez Gual <lluis@novell.com>
174 * HttpSoapWebServiceHandler.cs, WebServiceHandler.cs: Do not assign the
175 context to the service. It already gets it from HttpContext.Current.
177 2004-07-27 Lluis Sanchez Gual <lluis@ximian.com>
179 * HttpSimpleClientProtocol.cs, HttpWebClientProtocol.cs,
180 SoapHttpClientProtocol.cs: Implemented support for the new async model.
181 * InvokeCompletedEventArgs.cs: Implemented.
183 2004-07-20 Lluis Sanchez Gual <lluis@ximian.com>
185 * HttpWebClientProtocol.cs: Add received cookies to cookieContainer when
186 getting the response, do not wait for the next request to do it.
188 2004-07-13 Lluis Sanchez Gual <lluis@ximian.com>
190 * HttpWebClientProtocol.cs, Soap12FaultCodes.cs, SoapClientMessage.cs,
191 SoapException.cs, SoapHeader.cs, SoapHeaderException.cs,
192 SoapHttpClientProtocol.cs, SoapMessage.cs, SoapRpcMethodAttribute.cs,
193 SoapRpcServiceAttribute.cs, SoapServerMessage.cs: Api fixage (mainly
196 2004-07-10 Lluis Sanchez Gual <lluis@ximian.com>
198 * HttpSimpleClientProtocol.cs, HttpWebClientProtocol.cs,
199 SoapClientMessage.cs, SoapHttpClientProtocol.cs, SoapServerMessage.cs:
201 * SoapException.cs, SoapHeader.cs, SoapHeaderException.cs, SoapMessage.cs,
202 SoapRpcMethodAttribute.cs, SoapRpcServiceAttribute.cs: Implemented some
203 new methods and properties.
204 * WebClientProtocol.cs: uri field must be internal.
206 2004-07-05 Lluis Sanchez Gual <lluis@ximian.com>
208 * Methods.cs: When using RPC, ignore RequestElementName and MessageName,
209 and always uses the method name (MS.NET seems to do this).
211 2004-07-02 Lluis Sanchez Gual <lluis@ximian.com>
213 * XmlReturnWriter.cs: Add XmlIncludes to the reflection importer when
214 reflecting the return type.
216 2004-07-01 Lluis Sanchez Gual <lluis@ximian.com>
218 * Methods.cs: Check for null when looking for a header serializer, since
219 unknown headers don't have a serializer.
220 * SoapHeader.cs: Check for empty string before setting
221 EncodedMustUnderstand.
223 2004-07-01 Lluis Sanchez Gual <lluis@ximian.com>
225 * Methods.cs, SoapMessage.cs: Added support for unknown headers.
226 * SoapHeader.cs, SoapUnknownHeader.cs: Added new constructor that takes an
227 XmlElement with header info.
228 * WebServiceHelper.cs: Write the encodingStyle attribute when using the
229 encoded format. Added support for unknown headers.
231 2004-06-22 Lluis Sanchez Gual <lluis@ximian.com>
233 * XmlReturnReader.cs, XmlReturnWriter.cs: Generate the serializer with
234 the root attribute taken from the method attributes.
236 2004-06-10 Lluis Sanchez Gual <lluis@ximian.com>
238 * TypeStubManager.cs: Improved locking in GetLogicalTypeInfo().
239 * WebServiceHandler.cs: Removed unneded methods.
241 2004-06-02 Lluis Sanchez Gual <lluis@ximian.com>
243 * LogicalMethodInfo.cs: Don't crash in GetCustomAttribute if the requested
244 attribute is not found.
246 2004-06-01 Gert Driesen <drieseng@users.sourceforge.net>
248 * HttpSoapWebServiceHandler.cs: Removed unused variables.
249 * SoapHeaderAttribute.cs: Added Obsolete attribute.
251 2004-05-24 Lluis Sanchez Gual <lluis@ximian.com>
253 * SoapClientMessage.cs: Get the MethodInfo from the corresponding
256 2004-05-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
258 * SoapHttpClientProtocol.cs: when the response has a not acceptable
259 status code, the WebException we throw has a status of ProtocolError.
262 2004-05-12 Lluis Sanchez Gual <lluis@ximian.com>
264 * LogicalMethodInfo.cs: Made EnableSession property internal.
266 2004-05-12 Lluis Sanchez Gual <lluis@ximian.com>
268 * HttpSimpleWebServiceHandler.cs: Added GetRequestMethod(), which is used
269 by the handler factory to check if the target method needs session or not.
270 Also factorized error handling in WriteError().
271 * HttpSoapWebServiceHandler.cs: Added GetRequestMethod(), for the same
272 reason. Assign the context to the WebService just before invoking the
274 * SoapHttpClientProtocol.cs: Use helper method to create the xml writer.
275 * WebServiceHandler.cs: Added virtual GetRequestMethod().
276 * WebServiceHandlerFactory.cs: Use an http handler wrapper when the target
277 method requires session support.
278 * WebServiceHelper.cs: Added some helper methods.
280 2004-05-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
282 * SoapDocumentationHandler.cs: added internal property to get the page
283 handler when available.
285 * WebServiceHandlerFactory.cs: wrap the documentation handler in a class
286 that implements IRequiresSessionState and, if requested,
287 IReadOnlySessionState, so that we can use Sesion object in the default
290 2004-05-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
292 * HttpSoapWebServiceHandler.cs: finish the request after serializing
295 2004-05-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
297 * HttpGetWebServiceHandler.cs:
298 * HttpPostWebServiceHandler.cs: removed.
300 * HttpSimpleWebServiceHandler.cs: changed ctor parameters and added
301 EnableSession property.
303 * WebServiceHandler.cs: added EnableSession virtual property.
305 * WebServiceHandlerFactory.cs: added a new handler that implements
306 IRequiresSessionState used for HttpGet and HttpPost.
307 (GetHandler): for HttpGet and HttpPost check if the method requires to
308 have a Session object and use the new SimpleSyncSessionHandler in that
311 Still missing proper session handler for SOAP requests.
313 2004-05-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
315 * HttpSimpleWebServiceHandler.cs:
316 * HttpSoapWebServiceHandler.cs: use the session if the method has
319 * LogicalMethodInfo.cs: added EnableSession property.
321 * WebServiceHandler.cs: set the Session object of the WebService.
323 2004-03-25 Lluis Sanchez Gual <lluis@ximian.com>
325 * WebServiceHelper.cs: In GetContentEncoding, chop off the single & double
326 quotes around the encoding name. Patch by George Kodinov. This fixes
329 2004-03-10 Lluis Sanchez Gual <lluis@ximian.com>
331 * HttpSoapWebServiceHandler.cs: Set the properties ContentType and
332 ContentEncoding in SoapServerMessage.
333 * LogicalMethodInfo.cs: Implemented AsyncResultParameter, BeginInvoke and
334 EndInvoke. Fixed ComputeParameters, so it computes the correct parameters
335 for async logical methods.
336 * Methods.cs: Check that client proxies have one and only one
337 WebServiceBindingAttribute.
338 * PatternMatcher.cs: Implemented (in fact, just moved code from
340 * SoapDocumentationHandler.cs: Add soap bindings in the generated
342 * SoapHttpClientProtocol.cs: Implemented method Discover().
343 * SoapMessage.cs: Implemented property ContentEncoding.
344 * TextReturnReader.cs: Moved code to PatternMatcher.cs.
346 2004-02-27 Lluis Sanchez Gual <lluis@ximian.com>
348 * Fault.cs: Moved Fault class from Methods.cd to this file. It also includes
349 a generated serializer.
350 * HttpSoapWebServiceHandler.cs, WebServiceHelper.cs: Use the new static Fault serializer.
351 * Methods.cs: Include types declared with XmlInclude and SoapInclude to the
352 reflection importer. Moved Fault and its serializer to Fault.cs
353 * SoapHttpClientProtocol.cs: Removed unused method.
355 2004-02-12 Lluis Sanchez Gual <lluis@ximian.com>
357 * WebServiceHelper.cs: When reading a soap request, skip empty headers.
358 This fixes bug #51846.
360 2004-01-27 Lluis Sanchez Gual <lluis@ximian.com>
362 * WebServiceHandler.cs: inheritance from WebService is not mandatory.
364 2004-02-05 Alon Gazit <along@mainsoft.com>
366 * HttpMethodAttribute.cs:
368 * SoapDocumentMethodAttribute.cs:
369 * SoapDocumentServiceAttribute.cs:
370 * SoapHeaderAttribute.cs:
371 * SoapRpcMethodAttribute.cs:
372 * SoapRpcServiceAttribute.cs: This attribute is inherited by
373 derived classes.changed the AttributeUsage attribute.
375 2004-02-05 Alon Gazit <along@mainsoft.com>
377 * SoapHeaderAttribute.cs: This attribute is multiuse.
378 Changed the AttributeUsage attribute.
380 2004-01-27 Lluis Sanchez Gual <lluis@ximian.com>
382 * SoapDocumentMethodAttribute.cs: Fixed bug in ResponseNamespace.
384 2004-01-24 Lluis Sanchez Gual <lluis@ximian.com>
386 * HttpWebClientProtocol.cs: Added missing property.
387 * Methods.cs: Default binding for a method must be null.
388 * SoapHeaderDirection.cs: Added missing enum value.
389 * SoapMessage.cs: Added missing property.
390 * TypeStubManager.cs: Removed unneded check from AddBinding.
391 In GetBinding(), return default binding if name is null.
392 * ValueCollectionParameterReader.cs: IsPrimitive must be internal.
394 2004-01-21 Lluis Sanchez Gual <lluis@ximian.com>
396 * HttpSoapWebServiceHandler.cs, SoapHttpClientProtocol.cs: Do not use
397 indented format for requests and responses. SOAPAction header value
398 must be quoted (fix by Yaacov Akiba Slama).
400 2004-01-21 Lluis Sanchez Gual <lluis@ximian.com>
402 * Methods.cs: Set the correct namespaces for Fault. This fixes bug #53117.
403 Based on the fix by Eran Domb.
405 2004-01-19 Lluis Sanchez Gual <lluis@ximian.com>
407 * Methods.cs: Get the method namespace from the binding, not from the web
409 * TypeStubManager.cs: When adding a binding, ignore it if it has already
410 been added. Changed WebServiceLiteralNamespace by the method
411 GetWebServiceLiteralNamespace. The literal namespace depends on the binding
412 namespace, so it has to be provided as parameter.
413 * XmlReturnReader.cs, XmlReturnWriter.cs: Use GetWebServiceLiteralNamespace
414 instead of WebServiceLiteralNamespace.
416 2004-01-14 Lluis Sanchez Gual <lluis@ximian.com>
418 * Methods.cs: Set the correct element name and namespace for headers (those
419 are not managed like other data classes).
421 2004-01-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
423 * HttpSoapWebServiceHandler.cs:
424 * HttpSimpleWebServiceHandler.cs: set
425 base.Context property.
427 * WebServiceHandler.cs: added set_Context and set the context for the
428 WebService when creating the instance.
430 2003-12-23 Lluis Sanchez Gual <lluis@ximian.com>
432 * SoapDocumentationHandler.cs: Added support for DISCO file generation.
434 2003-12-16 Lluis Sanchez Gual <lluis@ximian.com>
436 * HttpSimpleClientProtocol.cs: Do not encode the request url, since it is
437 already encoded by the MimeParameterWriter.
438 * MatchAttribute.cs: Set default value for Group to 1.
439 * TextReturnReader.cs: Implemented. With this it is possible to create an
440 XML web service that parse the contents of a web page.
442 2003-12-15 Lluis Sanchez Gual <lluis@ximian.com>
444 * HttpSoapWebServiceHandler.cs: Added check for valid SOAPAction header.
445 Fixed bug when routing style is RequestElement.
446 Removed GetMethodFromAction. This is done now in the type stub.
448 * Methods.cs, WebServiceHelper.cs: Faults are always serialized using
449 literal format. Removed unneded code.
451 2003-12-12 Lluis Sanchez Gual <lluis@ximian.com>
453 * Methods.cs: Added special handling for RPC format.
455 2003-11-27 Lluis Sanchez Gual <lluis@ximian.com>
457 * Methods.cs: Added correct namespace for serialization in Fault class.
458 * SoapHttpClientProtocol.cs: Changed the method used to check if the
459 result is a fault. Now the check is done inside
460 WebServiceHelper.ReadSoapMessage. Removed some debug writelines.
461 * WebServiceHelper.cs: If the message body is a fault, use the fault
464 2003-11-24 Lluis Sanchez Gual <lluis@ximian.com>
466 * Methods.cs, TypeStubManager.cs, SoapMessage.cs: Removed TODO comment.
467 * SoapDocumentationHandler.cs: Check that the documentation page exist.
468 * SoapHttpClientProtocol.cs: Removed cast from WebResponse to
469 HttpWebResponse. This fixes bug #51281.
471 2003-11-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
473 * HttpSoapWebServiceHandler.cs: WebException is ok here for wrong
475 * SoapHttpClientProtocol.cs: ... but here, we should throw an
476 InvalidOperationException including the full response.
478 * WebServiceHelper.cs:
479 (GetContentEncoding): now fills an output variable with the name of the
480 content encoding used.
481 (InvalidOperation): new method to build the message for
482 InvalidOperationException.
484 2003-11-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
486 * SoapHttpClientProtocol.cs:
487 * WebServiceHelper.cs: throw a WebException instead of an Exception.
490 2003-10-26 Miguel de Icaza <miguel@ximian.com>
492 * WebServiceHelper.cs: Compute content type and encoding
493 correctly in the absence of extra options.
495 2003-10-22 Lluis Sanchez Gual <lluis@ximian.com>
497 * Methods.cs: Class Fault is now public, so it can be serialized.
499 2003-10-15 Lluis Sanchez Gual <lluis@ximian.com>
501 * TypeStubManager.cs: Added OperationName property.
503 2003-10-13 Lluis Sanchez Gual <lluis@ximian.com>
505 * HttpGetTypeStubInfo.cs, HttpPostTypeStubInfo.cs, HttpSimpleTypeStubInfo.cs,
506 HttpSoapWebServiceHandler.cs, Methods.cs, SoapHttpClientProtocol.cs,
508 Added class LogicalTypeInfo, which contains info common to all protocols
509 through which a web service can be accessed. Also, modified the way
510 Serializers are created. Instead of creating one by one, they are now
511 created all at once. This will make serialization creation more efficient
512 when the serializer code generator is in place.
513 * SoapRpcMethodAttribute.cs: Set the correct default values for the
515 * WebServiceHelper.cs: Removed unused method GetServiceNamespace().
516 * XmlReturnReader.cs, XmlReturnWriter.cs: Get the namespace for the return
517 type from LogicalTypeInfo.
519 2003-10-12 Lluis Sanchez Gual <lluis@ximian.com>
521 * SoapHttpClientProtocol.cs: Replaced AsyncInfo by a new
522 SoapWebClientAsyncResult class derived from WebClientAsyncResult.
523 * WebClientAsyncResult.cs: Removed unneeded members.
525 2003-10-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
527 * SoapDocumentationHandler.cs: don't close the response stream here
530 2003-10-06 Lluis Sanchez Gual <lluis@ximian.com>
532 * HtmlFormParameterWriter.cs: Fixed WriteRequest().
533 * HttpGetTypeStubInfo.cs, HttpPostTypeStubInfo.cs: Check that
534 HttpMethodAttribute is present in proxy's method.
535 * HttpSimpleClientProtocol.cs: Forgot to call InitializeRequest before
536 getting the request stream.
537 * UrlEncodedParameterWriter.cs: in Encode(), take into account that
538 requestEncoding can be null.
540 2003-10-04 Lluis Sanchez Gual <lluis@ximian.com>
542 * SoapDocumentationHandler.cs: Moved here the code from
543 WebServiceHandlerFactory that generates the documentation page.
544 * WebServiceHandlerFactory.cs: Moved the code that generates the doc page
545 to SoapDocumentationHandler.cs.
546 * HttpGetClientProtocol.cs, HttpGetWebServiceHandler.cs,
547 HttpPostClientProtocol.cs, HttpPostWebServiceHandler.cs,
548 HttpSimpleWebServiceHandler.cs, HttpSoapWebServiceHandler.cs,
549 SoapHttpClientProtocol.cs: Changed parameters of GetTypeStub call.
550 * HttpGetTypeStubInfo.cs, HttpPostTypeStubInfo.cs: Added ProtocolName
551 property. Added check for valid parameters.
552 * HttpSimpleTypeStubInfo.cs: Define return MimeFormatter in constructor.
553 * Methods.cs: BindingInfo and related properties moved to base TypeStubInfo.
554 Added properties for XmlImporter and SoapImporter.
555 * TypeStubManager.cs: Added BindingInfo and related properties.
556 Changed GetTypeStub method. Now it takes the name of the protocol for
557 which to get the type stub info.
558 * ValueCollectionParameterReader.cs: IsSupported should only return true
559 for input primitive parameters or array of primitives.
561 2003-10-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
563 * SoapDocumentationHandler.cs: it does not generate the documentation
564 page any more. GetDescription and GetSchemas are now internal.
566 * WebServiceHandlerFactory.cs: generate the documentation page without
567 doing a Transfer () but instead creating a Page instance from the wsdl
568 help file. This file is located from the configuration file that
569 contains the <wsdlHelpGenerator> tag.
571 2003-10-01 Lluis Sanchez Gual <lluis@ximian.com>
573 * HtmlFormParameterReader.cs, HtmlFormParameterWriter.cs,
574 HttpGetClientProtocol.cs, HttpPostClientProtocol.cs,
575 HttpSimpleClientProtocol.cs, MimeFormatter.cs, MimeParameterWriter.cs,
576 NopReturnReader.cs, UrlEncodedParameterWriter.cs, UrlParameterReader.cs,
577 UrlParameterWriter.cs, ValueCollectionParameterReader.cs,
578 WebClientAsyncResult.cs, XmlReturnReader.cs, XmlReturnWriter.cs
581 * HttpSoapWebServiceHandler.cs, SoapClientMessage.cs, SoapServerMessage.cs,
582 SoapDocumentationHandler.cs, SoapHttpClientProtocol.cs,
583 WebServiceHelper.cs: Changed due to modifications in TypeStubInfo.
585 * Methods.cs: Moved common code to TypeStubInfo.cs.
586 * WebServiceHandler.cs: Moved invoke code to HttpSoapWebServiceHandler.cs
587 * ServerProtocol.cs, SoapServerProtocol.cs: Fixed formatting.
588 * WebServiceHandlerFactory.cs: Added support for HttpGet and HttpPost.
590 2003-09-29 Lluis Sanchez Gual <lluis@ximian.com>
592 * Methods.cs: Little fix in binding check.
593 * SoapExtension.cs: Implemented ChainStream. Changed some methods from
595 * SoapClientMessage: Implemented EnsureInStage.
596 * SoapServerMessage: Implemented EnsureInStage, EnsureOutStage.
598 2003-09-28 Lluis Sanchez Gual <lluis@ximian.com>
600 * HttpSoapWebServiceHandler.cs: In SerializeResponse method, improved
601 management of exceptions. Also added support for BufferResponse flag.
602 * Methods.cs: Added MethodAttribute property in MethodStubInfo. Added
603 XmlImporter, SoapImporter and Type properties in TypeStubInfo.
604 * SoapMessage.cs: little fix.
606 2003-09-14 Lluis Sanchez Gual <lluis@ximian.com>
608 * SoapDocumentationHandler.cs: Added support for on-the-fly proxy
609 code generation in documentation pages.
611 2003-09-04 Lluis Sanchez Gual <lluis@ximian.com>
613 * Methods.cs: Added support for bare parameter style. Fixed some defaults.
615 2003-09-01 Lluis Sanchez Gual <lluis@ximian.com>
617 * Methods.cs: In TypeStubInfo, added Documentation field.
619 2003-07-28 Lluis Sanchez Gual <lluis@ximian.com>
621 * HttpSoapWebServiceHandler.cs:
622 * Methods.cs: Added SoapBindingStyle, SoapBindingUse, InputMembersMapping
623 and OutputMembersMapping properties in MethodStubInfo.
624 Use default value defined in TypeStubInfo for RequestNamespace,
625 ResponseNamespace and other properties.
626 Added class BindingInfo to store information about class bindings.
627 In TypeStubInfo added SoapBindingStyle, DefaultBinding, Methods and
629 * SoapRpcMethodAttribute.cs: Use WebServiceAttribute.DefaultNamespace constant
630 instead of hardcoded namespace name.
631 * WebServiceHandlerFactory.cs: Create new SoapDocumentationHandler for
632 documentation requests.
633 * SoapDocumentationHandler.cs: new handler that generates WS documentation.
635 2003-07-22 Lluis Sanchez Gual <lluis@ximian.com>
637 * WebServiceHandler.cs: Fixed Invoke(). ParameterInfo.Position is now
638 zero-based, like in MS.NET.
640 2003-07-16 Lluis Sanchez Gual <lluis@ximian.com>
642 * SoapHttpClientProtocol.cs: Removed debug WriteLine.
644 2003-07-10 Lluis Sanchez Gual <lluis@ximian.com>
646 * HttpSoapWebServiceHandler.cs: MS puts the soap action in quotation marks??
648 * SoapHttpClientProtocol.cs: Implemented support for asynchronous calls
649 (BeginInvoke and EndInvoke).
651 2003-07-09 Lluis Sanchez Gual <lluis@ximian.com>
653 * SoapHttpClientProtocol.cs, HttpSoapWebServiceHandler.cs, Methods.cs:
654 Added support for soap extensions. Moved some code to
655 WebServiceHelper. Implemented support for the two types of RoutingStyle. Added support
656 for In and Out headers. Improved management of exceptions.
657 * SoapClientMessage.cs: code to retrieve soap headers moved to SoapMessage.
658 * SoapExtension.cs: Added methods for getting and creating soap extensions.
659 * SoapMessage.cs: Added methods for getting and assigning headers to an object.
660 * SoapServerMessage.cs: Added setter for MethodStubInfo. Other minor fixes.
661 * WebServiceHandler.cs: Added support for In and Out headers. Fixed management of exceptions.
662 * WebServiceHandlerFactory.cs: Check if the request protocol is supported.
663 * WebServiceHelper.cs: Added method for reading a soap request.
665 2003-07-04 Lluis Sanchez Gual <lluis@ximian.com>
667 * LogicalMethodInfo.cs: Fixed Invoke method. If return type is void,
668 then the result object array only contain output parameters.
670 * Methods.cs: In class MethodStubInfo, added support from some server properties
671 taken from WebMethodAttribute. Now MethodStubInfo can be created without SoapDocument*
672 or SoapRpc* attributes, in which case takes default values from TypeStubInfo.
673 Added method for getting header info.
674 In class Fault: added constructor for creating a fault from a SoapException.
675 In class TypeStubInfo: new way to manage serializers for headers. Now it is possible to
676 get a header using a name and namespace (used when deserializing).
678 * SoapHttpClientProtocol.cs: moved WriteSoapEnvelope method to WebServiceHelper (so it can be shared).
679 Also moved other serialization stuff to WebServiceHelper.
681 * SoapMessage.cs: Added some convenient constructors and internal properties.
682 Implemented GetOutParameterValue and GetReturnValue.
684 * SoapServerMessage.cs: Implemented.
686 * WebServiceHandler.cs: Implemented method Invoke.
688 * WebServiceHandlerFactory.cs: Basic implementation.
690 * WebServiceHelper.cs: Added. Has some methods shared between client and server classes.
692 * HttpSoapWebServiceHandler.cs: Added. IHttpHandler implementation for HttpSoap requests.
694 2003-06-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
696 * HttpWebClientProtocol.cs: handle cookies if the request is a
697 HttpWebRequest. It gets the cookies set in the response and sends them
698 on subsequent requests.
700 * SoapHttpClientProtocol.cs:
701 (GetWebRequest): just calls the base method.
702 (SendRequest): set the method here.
703 (Invoke): call GetWebResponse instead of request.GetResponse.
705 * WebClientProtocol.cs:
706 (GetWebRequest): set some properties of the request.
707 (GetWebResponse): if we get a WebException containing a response, return
708 that as the response and ignore the exception.
709 (GetWebResponse (req, async)): only call EndGetResponse.
711 2003-06-14 Lluis Sanchez Gual <lluis@ximian.com>
713 * Methods.cs: Added information about headers in MethodStubInfo. Added cache of serializers
714 in TypeStubInfo so serializers for headers they can be shared by several methods.
715 * SoapClientMessage.cs: Headers added in the constructor.
716 * SoapMessage.cs: Added header list initialization.
717 * SoapHttpClientProtocol.cs: Added support soap headers.
719 2003-06-13 Lluis Sanchez Gual <lluis@ximian.com>
721 * Methods.cs: Added serializer to MethodStubInfo for deserializing faults.
722 * SoapHttpClientProtocol.cs: Added support for faults.
724 2003-06-10 Lluis Sanchez Gual <lluis@ximian.com>
726 * Methods.cs: removed handler for UnknownNode event
728 2003-06-05 Lluis Sanchez Gual <lluis@ximian.com>
730 * Methods.cs: added support for encoded format
732 2003-06-01 Miguel de Icaza <miguel@ximian.com>
734 * Methods.cs (MethodStubInfo): If creating an RPC call, pass an
735 optional XmlElementAttribute with the namespace set to null; Use
736 this on each element of the request and response serializers.
738 (MakeRequestSerializer, MakeResponseSerializer): Use the empty
739 element for the return values.
741 * SoapRpcMethodAttribute.cs: Drop the default name on the
742 SoapRpcMethodAttribute, it was incorrectly given a default name.
744 2003-05-30 Miguel de Icaza <miguel@ximian.com>
746 * Methods.cs (MethodStubInfo): Start support for RPC style as well
747 as Literal style. Take an object instead of a
748 SoapDocumentMethodAttribute, and allow the value to be also a
749 SoapRpcMethodAttribute. Pull data from both.
751 Kill SoapBindingUse, we only use this during validation.
753 Turn out Google uses RPC/Literal, and its a good demo.
755 (MakeResponseSerializer): OneWay is not the only
756 condition to catch; Also void return types are not required to
759 (MakeRequestSerializer): InParameters *might* be ref parameters,
760 deal with that here too.
762 Add some debugging code for tracking down missing implementation
763 details in serialization creation.
765 (MakeResponseSerializer): DUH. Use the
766 ResponseName/ResponseNamespace for the member import, not the
767 RequestName and RequestNamespace. The bugs of cut-and-paste.
769 2003-05-29 Miguel de Icaza <miguel@ximian.com>
771 * SoapHttpClientProtocol.cs (CreateMessage): Kill. Move
772 functionality to Invoke.
774 (Invoke): Use new TypeStubInfo/MethodStubInfo instead.
776 * SoapClientMessage.cs: Drop old mechanism, use MethodStubInfo instead.
778 * Methods.cs: New file. Contains the managed for TypeStubs and
781 A MethodInfoStub contains the serializers we use for the SOAP
784 * SoapClientMessage.cs: Drop parameters from the clientmessage, it
785 does not belong here. Drop oneway, we canextract that from the
786 SoapDocumentMethodAttribute class that we pass.
788 2003-05-28 Miguel de Icaza <miguel@ximian.com>
790 * LogicalMethodInfo.cs (Create): Implement begin/end method
793 (EndMethodInfo): Always return end_method_info.
795 2003-04-30 Miguel de Icaza <miguel@ximian.com>
797 * SoapHttpClientProtocol.cs: Flag the methods in the chain that
798 gets the caller method as non-inlineable.
800 2003-04-29 Miguel de Icaza <miguel@ximian.com>
802 * SoapHttpClientProtocol.cs (CreateMessage): Extract information
803 from the method to be called.
805 * SoapDocumentMethodAttribute.cs: Do not initialize all the fields
806 on the attribute at bootstrap, for default values, just compute
809 * SoapMessage.cs (SetStage): New internal method, used to register
810 the stage as we move along the soap pipeline.
812 * LogicalMethodInfo.cs: Most of this is implemented. Its only
813 missing a few bits in the Create() method.
815 * SoapHttpClientProtocol.cs: Begin implementation of Invoke, which
816 lead to other dependencies to be implemented.
818 * LogicalMethodInfo.cs: Mostly complete. It is only missing the
819 async features (BeginInvoke/EndInvoke) on a LogicalMethodInfo.
821 * WebClientProtocol.cs (GetWebRequest): Track the web request, so
822 we can abort it later.
823 (Abort): Call abort on the underlying transport.
825 2002-08-24 Tim Coleman <tim@timcoleman.com>
826 * HttpServerProtocol.cs:
827 * WebServiceHandler.cs:
828 Some commented code added, from analysing
830 * MimeReturnWriter.cs:
831 * XmlReturnWriter.cs:
834 2002-08-23 Tim Coleman <tim@timcoleman.com>
836 * SoapServerProtocol.cs:
837 More cleanup, comparison with class status.
838 * WebServiceHandler.cs:
839 * HttpServerProtocol.cs:
842 2002-08-15 Tim Coleman <tim@timcoleman.com>
844 * SoapServerProtocol.cs:
845 Some more implementation.
847 2002-08-06 Tim Coleman <tim@timcoleman.com>
849 Add new class as implied by class statuc page.
850 SoapServerProtocol is derived from this.
851 * SoapServerProtocol.cs:
852 Change base class to ServerProtocol. Add some
853 properties shown by class status page.
854 * SoapClientMethod.cs:
855 This class should not be sealed. Add some
856 fields shown by the class status page.
858 2002-07-25 Tim Coleman <tim@timcoleman.com>
859 * SoapClientMethod.cs:
860 * SoapServerProtocol.cs:
861 Add new internal classes as discovered.
862 * SoapClientMessage.cs:
864 * SoapServerMessage.cs:
865 * WebClientAsyncResult.cs:
866 Add internal constructor, as found on class
867 status page; modify some properties.
869 2002-07-23 Tim Coleman <tim@timcoleman.com>
870 * SoapException.cs: modified constructors to
871 call base class correctly.
872 * WebClientAsyncResult: some implementation
874 2002-07-23 Tim Coleman <tim@timcoleman.com>
875 * HttpGetClientProtocol.cs:
876 * HttpPostClientProtocol.cs
877 Implemented the GetWebRequest method
878 * HttpSimpleClientProtocol:
879 Some implementation of the EndInvoke method
880 * HttpWebClientProtocol.cs:
881 Set the UserAgent string appropriately
882 Implemented the GetWebRequest method
883 Implemented the GetWebResponse methods
884 * SoapHttpClientProtocol.cs:
885 Removed unused fields
886 Implemented the GetWebRequest method
888 Implemented the EnsureStage method
889 * WebClientProtocol.cs:
890 Added a static constructor to construct the cache
891 Implemented the Abort method
892 Implemented the AddToCache, GetFromCache methods
893 Implemented the GetWebRequest method
894 Implemented the GetWebResponse methods
896 2002-07-23 Tim Coleman <tim@timcoleman.com>
897 * LogicalMethodTypes.cs:
898 * SoapHeaderDirection.cs:
899 * SoapMessageStage.cs:
900 * SoapParameterStyle.cs:
901 * SoapServiceRoutingStyle.cs:
902 Explicitly define values in enum to match
905 Removed constructor which should not be present.
907 Made protected fields private as they should
909 * SoapHeaderException.cs:
910 Modifications to constructors to propertly
911 call base class constructor
913 2002-07-22 Tim Coleman <tim@timcoleman.com>
914 * SoapHeaderException.cs:
915 Fixed name error in constructor
916 * SoapUnknownHeader.cs:
917 Added reference to System.Xml.Serialization
919 2002-07-22 Tim Coleman <tim@timcoleman.com>
920 * SoapHeaderException.cs:
923 2002-07-22 Tim Coleman <tim@timcoleman.com>
924 * AnyReturnReader.cs:
925 * HtmlFormParameterReader.cs :
926 * HtmlFormParameterWriter.cs :
927 * HttpGetClientProtocol.cs :
928 * HttpMethodAttribute.cs :
929 * HttpPostClientProtocol.cs :
930 * HttpSimpleClientProtocol.cs :
931 * HttpWebClientProtocol.cs :
932 * LogicalMethodInfo.cs :
933 * LogicalMethodTypes.cs :
934 * MatchAttribute.cs :
936 * MimeParameterReader.cs :
937 * MimeParameterWriter.cs :
938 * MimeReturnReader.cs :
939 * NopReturnReader.cs :
940 * PatternMatcher.cs :
941 * SoapClientMessage.cs :
942 * SoapDocumentMethodAttribute.cs :
943 * SoapDocumentServiceAttribute.cs :
946 * SoapExtensionAttribute.cs :
948 * SoapHeaderAttribute.cs :
949 * SoapHeaderCollection.cs :
950 * SoapHeaderDirection.cs :
951 * SoapHttpClientProtocol.cs :
953 * SoapMessageStage.cs :
954 * SoapParameterStyle.cs :
955 * SoapRpcMethodAttribute.cs :
956 * SoapRpcServiceAttribute.cs :
957 * SoapServerMessage.cs :
958 * SoapServiceRoutingStyle.cs :
959 * SoapUnknownHeader.cs :
960 * TextReturnReader.cs :
961 * UrlEncodedParameterWriter.cs :
962 * UrlParameterReader.cs :
963 * UrlParameterWriter.cs :
964 * ValueCollectionParameterReader.cs :
965 * WebClientAsyncResult.cs :
966 * WebClientProtocol.cs :
967 * WebServiceHandlerFactory.cs :
968 * XmlReturnReader.cs :
969 Add missing methods and attributes to make as few missing
970 things as possible in this namespace. This is from the
973 2002-07-20 Tim Coleman <tim@timcoleman.com>
974 * AnyReturnReader.cs:
975 * HtmlFormParameterReader.cs:
976 * HtmlFormParameterWriter.cs:
977 * HttpGetClientProtocol.cs:
978 * HttpMethodAttribute.cs:
979 * HttpPostClientProtocol.cs:
980 * HttpSimpleClientProtocol.cs:
981 * HttpWebClientProtocol.cs:
984 * MimeParameterReader.cs:
985 * MimeParameterWriter.cs:
986 * MimeReturnReader.cs:
987 * NopReturnReader.cs:
989 * SoapClientMessage.cs:
990 * SoapDocumentMethodAttribute.cs:
991 * SoapDocumentServiceAttribute.cs:
993 * SoapExtensionAttribute.cs:
995 * SoapHeaderAttribute.cs:
996 * SoapHeaderCollection.cs:
998 * SoapHeaderDirection.cs:
999 * SoapHttpClientProtocol.cs:
1001 * SoapMessageStage.cs:
1002 * SoapParameterStyle.cs:
1003 * SoapRpcMethodAttribute.cs:
1004 * SoapRpcServiceAttribute.cs:
1005 * SoapServerMessage.cs:
1006 * SoapServiceRoutingStyle.cs:
1007 * SoapUnknownHeader.cs:
1008 * TextReturnReader.cs:
1009 * UrlEncodedParameterWriter.cs:
1010 * UrlParameterReader.cs:
1011 * UrlParameterWriter.cs:
1012 * ValueCollectionParameterReader.cs:
1013 * WebClientAsyncResult.cs:
1014 * WebClientProtocol.cs:
1015 * WebServiceHandlerFactory.cs:
1016 * XmlReturnReader.cs:
1017 Added new stubbs and some implementation
1018 * LogicalMethodTypes.cs:
1019 Added [Serializable] attribute which was missing.
1021 2002-07-19 Tim Coleman <tim@timcoleman.com>
1023 * LogicalMethodInfo.cs:
1024 * LogicalMethodTypes.cs:
1025 Add required classes to maek System.Web.Services.Description