ChangeLog 49 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363
  1. 2007-12-11 Vladimir Krasnov <[email protected]>
  2. * TypeStubManager.cs: fixed TypeStubInfo ctor, default binding name is
  3. wrong, when declared in WebServiceBindingAttribute, but not used.
  4. fixes #345448
  5. 2007-11-12 Atsushi Enomoto <[email protected]>
  6. * SoapHttpClientProtocol.cs : compare content-type in case-
  7. insensitive manner. Fixed bug #325277.
  8. 2007-11-09 Atsushi Enomoto <[email protected]>
  9. * SoapDocumentationHandler.cs : handle 'schema' HTTP parameter like
  10. "...blah.asmx?schema=MySchemaID". (Such URL does not work yet.)
  11. 2007-10-29 Atsushi Enomoto <[email protected]>
  12. * SoapException.cs : serialization constructor didn't call base.
  13. Fixed bug #337421.
  14. 2007-10-10 Atsushi Enomoto <[email protected]>
  15. * Methods.cs : (SoapMethodStubInfo) reverted r74747 which caused
  16. bug #332150.
  17. 2007-10-05 Atsushi Enomoto <[email protected]>
  18. * HttpWebClientProtocol.cs : implemented EnableDecompression.
  19. 2007-10-04 Atsushi Enomoto <[email protected]>
  20. * TypeStubManager.cs: reverted r82932 again. This #if ONLY_1_1 causes
  21. NUnit test regressions. It should not be reverted again until
  22. appropriate NUnit test case is provided and proper fix is provided
  23. that does not cause regressions.
  24. 2007-09-25 Marek Habersack <[email protected]>
  25. * WebServiceHandlerFactory.cs: WebServiceParser.GetCompiledType
  26. must be passed a virtual path, not physical one. Fixes bug
  27. #327809.
  28. 2007-08-21 Robert Jordan <[email protected]>
  29. * ValueCollectionParameterReader.cs (Read):
  30. Add support for array parameters. Fixes #82519.
  31. 2007-07-29 Vladimir Krasnov <[email protected]>
  32. * TypeStubManager.cs: fixed BindingInfo.ctor, reverted to ONLY_1_1
  33. 2007-06-16 Gert Driesen <[email protected]>
  34. * Fault.cs: In SOAP 1.1, the child elements of Fault may be unqualified.
  35. Fixed FaultReader's ReadObject_Fault to only process either unqualified
  36. elements or elements in the SOAP 1.1 namespace, hereby fixing part of
  37. bug #81886 where an unqualified detail element was not processed. In
  38. FaultWriter, write unqualified detail element. Fixes second part of
  39. bug #81886.
  40. 2007-05-11 Atsushi Enomoto <[email protected]>
  41. * SoapServerType.cs : avoid IndexOutOfRange on reflecting
  42. SoapRpcAttribute.
  43. 2007-05-08 Atsushi Enomoto <[email protected]>
  44. * SoapServerMethod.cs : Some refactoring. simply use GetMethod() in
  45. type stub. WsiClaims could be retrieved from type stub.
  46. * SoapServerType.cs : store server methods and implement GetMethod().
  47. 2007-05-08 Atsushi Enomoto <[email protected]>
  48. * SoapServerType.cs
  49. ServerType.cs
  50. Methods.cs : SoapBindingUse and SoapServiceRoutingStyle could just
  51. be stored in LogicalTypeInfo (as they are attributed in a web
  52. service class), and removed duplicates of them in SoapTypeStubInfo.
  53. Invalid attributes on a service class are checked in SoapServerType
  54. .ctor().
  55. 2007-05-08 Atsushi Enomoto <[email protected]>
  56. * XmlReturnReader.cs
  57. XmlReturnWriter.cs
  58. TypeStubManager.cs
  59. ServerType.cs
  60. SoapServerType.cs
  61. Methods.cs
  62. HttpSimpleTypeStubInfo.cs
  63. HttpGetTypeStubInfo.cs
  64. HttpPostTypeStubInfo.cs :
  65. I once replaced LogicalTypeInfo with ServerType. It was kind of
  66. wrong, since ServerType could be instantiated at any time, while
  67. LogicalTypeInfo used to be a singleton per static context.
  68. Here I re-introduced LogicalTypeInfo and replaced most of
  69. ServerType use with this.
  70. 2007-05-08 Atsushi Enomoto <[email protected]>
  71. * LogicalMethodInfo.cs : MethodInfo is null when it is async.
  72. Added internal ActualMethodInfo to represent "sync or begin" method
  73. (i.e. former MethodInfo).
  74. * HttpGetTypeStubInfo.cs, HttpPostTypeStubInfo.cs :
  75. MethodInfo -> ActualMethodInfo.
  76. 2007-04-29 Konstantin Triger <[email protected]>
  77. * WebServiceHelper.cs, HttpSoapWebServiceHandler.cs: add support for SOAP1.2
  78. to pass action in ContentType HTTP header.
  79. See http://www.w3.org/TR/soap12-part0/#L4697.
  80. 2007-04-23 Atsushi Enomoto <[email protected]>
  81. * TypeStubManager.cs : fix binding enumeration on finding by name.
  82. fix wrong ONLY_1_1.
  83. * ServerType.cs : ONLY_1_1 is evil enough to make sources confusing.
  84. Use it only when it is really needed.
  85. 2007-04-11 Konstantin Triger <[email protected]>
  86. * WebServiceHandlerFactory.cs: Use HttpRequest.IsLocal to determine
  87. local request in 2.0 profile.
  88. 2007-03-21 Konstantin Triger <[email protected]>
  89. * TypeStubManager.cs, Methods.cs, ServerType.cs: add support for the 2.0
  90. feature, which enables declaring WebService/WebMethods attributes
  91. in interface.
  92. 2007-03-11 Konstantin Triger <[email protected]>
  93. * WebServiceHandlerFactory.cs: throw on protocol version mismatch
  94. for 2.0 profile only.
  95. 2007-03-11 Vladimir Krasnov <[email protected]>
  96. * TypeStubManager.cs: fixed BindingInfo.ctor, it does not takes Name
  97. property from WebServiceBindingAttribute in .net 2.0
  98. 2007-03-04 Konstantin Triger <[email protected]>
  99. * WebServiceHandlerFactory.cs: throw on protocol version mismatch.
  100. 2007-02-01 Konstantin Triger <[email protected]>
  101. * TypeStubManager.cs, Methods.cs: refactor BindingInfo contruction to contain
  102. either declared Bindings or a default one.
  103. 2007-02-01 Konstantin Triger <[email protected]>
  104. * HttpSimpleWebServiceHandler.cs: Provide better error info.
  105. 2007-01-22 Miguel de Icaza <[email protected]>
  106. * HttpSimpleClientProtocol.cs, SoapHttpClientProtocol.cs: Hook up
  107. RegisterMapping and UnregisterMapping.
  108. * HttpWebClientProtocol.cs (RegisterMapping, UnregisterMapping):
  109. Keep track of all the async invocations that are created, based on
  110. the "userState" key.
  111. (CancelAsync): Implement.
  112. 2006-12-22 Atsushi Enomoto <[email protected]>
  113. * HttpSoapWebServiceHandler.cs : (SerializeFault) requestMessage
  114. could be null.
  115. 2006-12-21 Atsushi Enomoto <[email protected]>
  116. * WebServiceHelper.cs :
  117. added Soap12FaultToSoapException conversion method (copied from
  118. SoapHttpClientProtocol.cs).
  119. Added couple of switching fault code getter (by soap12 flag).
  120. * SoapMessage.cs: added IsSoap12 property to simplify SOAP 1.2
  121. conditional code.
  122. * HttpSimpleServerProtocolFactory.cs, WebServiceHelper.cs,
  123. HttpSoapWebServiceHandler.cs, SoapHttpClientProtocol.cs :
  124. reflected all changes above. Switch 1.2 fault and 1.1 fault, and
  125. simplify 1.2 switch.
  126. 2006-12-21 Atsushi Enomoto <[email protected]>
  127. * SoapHttpClientProtocol.cs : SOAP 1.2 client should allow text/xml
  128. content type. Now bug #79985 is fixed here.
  129. 2006-12-21 Atsushi Enomoto <[email protected]>
  130. * HttpSoapWebServiceHandler.cs : read xml with correct
  131. SOAP 1.2 Envelope namespace. To determine the message
  132. version, it must check SOAP version in
  133. DeserializeRequest().
  134. 2006-12-19 Atsushi Enomoto <[email protected]>
  135. * SoapClientMessage.cs : oops, SoapVersion is only 2.0.
  136. 2006-12-19 Atsushi Enomoto <[email protected]>
  137. * SoapHttpClientProtocol.cs :
  138. Don't use HTTP header when SoapVersion is Soap12.
  139. * HttpSoapWebServiceHandler.cs :
  140. With SOAP 1.2 message we can only use Body content.
  141. Set correct Content-Type for SOAP 1.2 message.
  142. * Fault12.cs : added null check.
  143. * SoapClientMessage.cs :
  144. Set correct Content-Type for SOAP 1.2 message.
  145. * WebServiceHandlerFactory.cs :
  146. don't reject SOAP 1.2 protocol here.
  147. 2006-12-18 Atsushi Enomoto <[email protected]>
  148. * WebServiceHandlerFactory.cs,
  149. SoapServerMessage.cs,
  150. HttpSoapWebServiceHandler.cs :
  151. set guessed protocol to SoapServerMessage.
  152. 2006-12-18 Atsushi Enomoto <[email protected]>
  153. * TypeStubManager.cs, Methods.cs, SoapServerMethod.cs :
  154. added WsiClaims property to TypeStubInfo, to implement
  155. SoapServerMethod.WsiClaims.
  156. 2006-12-15 Atsushi Enomoto <[email protected]>
  157. * ServerType.cs : added SOAP 1.2 protocol as a different one from
  158. SOAP 1.1.
  159. * Methods.cs : added Soap12TypeStubInfo.
  160. 2006-12-15 Atsushi Enomoto <[email protected]>
  161. * HttpSoapWebServiceHandler.cs,
  162. SoapHttpClientProtocol.cs : support application/soap+xml.
  163. 2006-12-04 Atsushi Enomoto <[email protected]>
  164. * AnyReturnReader.cs : not sure why, but the build must have been
  165. broken, and now it is exposed.
  166. * SoapHttpClientProtocol.cs : added missing members, left as MonoTODO.
  167. 2006-12-01 Atsushi Enomoto <[email protected]>
  168. * AnyReturnReader.cs : implemented, it does almost nothing.
  169. 2006-12-01 Atsushi Enomoto <[email protected]>
  170. * SoapServerMethod.cs : implemented based on SoapMethodStubInfo.
  171. * ServerType.cs : added UseEncoded, used in SoapServerType.
  172. * SoapServerType.cs : ServiceDefaultIsEncoded is base.UseEncoded,
  173. and ServiceNamespace is base.WebServiceNamespace.
  174. * SoapHeaderMapping.cs : origin info.
  175. 2006-12-01 Atsushi Enomoto <[email protected]>
  176. * SoapDocumentationHandler.cs, SoapExtension.cs :
  177. WebServicesSection.Instance -> .Current.
  178. 2006-11-30 Atsushi Enomoto <[email protected]>
  179. * SoapHeaderMapping.cs : Now HeaderInfo became this type to implement
  180. this class. Remapped some members (e.g. IsUnknownHeader -> Custom).
  181. * Methods.cs : so, split HeaderInfo from here.
  182. * SoapMessage.cs : Added alias HeaderInfo to SoapHeaderMapping.
  183. Renamed some properties.
  184. 2006-11-30 Atsushi Enomoto <[email protected]>
  185. * ServerType.cs : Now LogicalTypeInfo became this type to implement
  186. this class (and SoapTypeStubInfo to SoapServerType later).
  187. * TypeStubManager.cs : so, split LogicalTypeInfo from here.
  188. * XmlReturnReader.cs, XmlReturnWriter.cs, Methods.cs,
  189. HttpSimpleTypeStubInfo.cs, HttpGetTypeStubInfo.cs,
  190. HttpPostTypeStubInfo.cs : LogicalTypeInfo -> ServerType.
  191. 2006-11-30 Atsushi Enomoto <[email protected]>
  192. * SoapHttpClientProtocol.cs : looks like (only) the last Text is used
  193. instead of the first one in .net.
  194. 2006-11-28 Atsushi Enomoto <[email protected]>
  195. * Fault12.cs : they should be all internal.
  196. 2006-11-28 Atsushi Enomoto <[email protected]>
  197. * Fault12.cs, fault-12.genxs, Fault12Serializer.cs :
  198. SOAP 1.2 Fault serializer and its generation sources.
  199. * SoapException.cs :
  200. Fixed .ctor() whose initialization was incorrect.
  201. * WebServiceHelper.cs, Methods.cs, HttpSoapWebServiceHandler.cs,
  202. SoapHttpClientProtocol.cs :
  203. handle SOAP 1.2 Fault.
  204. 2006-11-22 Atsushi Enomoto <[email protected]>
  205. * SoapHeader.cs WebServiceHelper.cs SoapClientMessage.cs
  206. HttpSoapWebServiceHandler.cs SoapHttpClientProtocol.cs:
  207. SOAP 1.2 Envelope support has started. Though I will have to
  208. change its internals significantly, so it is in my branch.
  209. 2006-11-21 Atsushi Enomoto <[email protected]>
  210. * WebClientProtocol.cs HttpWebClientProtocol.cs SoapException.cs
  211. SoapHeaderException.cs HttpSimpleClientProtocol.cs
  212. SoapHttpClientProtocol.cs SoapMessage.cs:
  213. assorted cosmetic API fixes.
  214. 2006-11-19 Atsushi Enomoto <[email protected]>
  215. * HttpSoapWebServiceHandler.cs: on deserializing the request, do not
  216. close the input stream. Fixed bug #79954. Fix by Juan C. Olivares.
  217. 2006-11-16 Atsushi Enomoto <[email protected]>
  218. * HttpServerProtocol.cs : removed old code.
  219. * SoapServerProtocol.cs, ServerProtocol.cs : removed as well, and
  220. added up-to-date ones.
  221. * SoapHeaderHandling.cs, SoapHeaderMapping.cs,
  222. ServerProtocolFactory.cs, SoapServerType.cs,
  223. SoapServerProtocolFactory.cs, ServerType.cs,
  224. SoapServerProtocol.cs, ServerProtocol.cs,
  225. SoapServerMethod.cs :
  226. Added stubs for 2.0 server protocol model. For now I don't spend
  227. time on these ones but rather fill more important bits like
  228. SOAP 1.2 support.
  229. 2006-11-15 Atsushi Enomoto <[email protected]>
  230. * SoapHeaderException.cs, SoapException.cs, SoapFaultSubcode.cs,
  231. Soap12FaultCodes.cs : API fixes, mostly for SoapFaultSubCode.
  232. 2006-11-14 Atsushi Enomoto <[email protected]>
  233. * SoapHttpClientProtocol.cs : 2.0 API fix (WsiClaims -> WsiProfiles).
  234. 2006-09-06 Lluis Sanchez Gual <[email protected]>
  235. * ValueCollectionParameterReader.cs, MimeFormatter.cs: Support enums in
  236. the http get and post protocols. Fixes bug #78461.
  237. 2006-09-06 Lluis Sanchez Gual <[email protected]>
  238. * SoapException.cs: Fix property name.
  239. 2006-09-05 Ankit Jain <[email protected]>
  240. * LogicalMethodTypes.cs:
  241. * SoapMessageStage.cs:
  242. * SoapServiceRoutingStyle.cs:
  243. * SoapHeaderDirection.cs:
  244. * SoapParameterStyle.cs:
  245. * SoapProtocolVersion.cs: Remove [Serializable].
  246. 2006-08-30 Konstantin Triger <[email protected]>
  247. * WebClientProtocol.cs: implemented WebClientProtocol.UseDefaultCredentials().
  248. 2006-06-08 Chris Toshok <[email protected]>
  249. * WebServiceHandlerFactory.cs: remove the CONFIGURATION_2_0 from
  250. ifdefs. NET_2_0 implies this now.
  251. * SoapExtension.cs: same.
  252. * SoapDocumentationHandler.cs: same.
  253. 2006-03-15 Vladimir Krasnov <[email protected]>
  254. * SoapExtension.cs: fixed ExecuteProcessMessage signature, added
  255. stream parameter in order to update SoapMessage stream
  256. * SoapMessage.cs: removed unused ctor, added internal property to
  257. set SoapMessage's stream member
  258. * HttpSoapWebServiceHandler.cs, SoapHttpClientProtocol.cs: updated
  259. usage of ExecuteProcessMessage
  260. 2006-03-15 Vladimir Krasnov <[email protected]>
  261. * SoapServerMessage.cs: fixed SoapServerMessage constructors to
  262. remove quotes from SoapAction http header when initializing local
  263. action member
  264. 2006-03-15 Vladimir Krasnov <[email protected]>
  265. * HttpSoapWebServiceHandler.cs, SoapServerMessage.cs: fixed
  266. SoapMessage.ContentEncoding that used in ProcessMessage method
  267. in SoapExtension
  268. 2006-03-12 Vladimir Krasnov <[email protected]>
  269. * TypeStubManager.cs: fixed type_to_manager member to be initialized
  270. per appdoamin (within TARGET_JVM block)
  271. 2006-03-12 Vladimir Krasnov <[email protected]>
  272. * SoapDocumentationHandler.cs: TARGET_JVM blocks added to exclude
  273. not supported methods
  274. 2006-01-12 Ben Maurer <[email protected]>
  275. * WebClientProtocol.cs: Add a 2.0 stub
  276. 2006-01-04 Chris Toshok <[email protected]>
  277. * SoapDocumentationHandler.cs: add CONFIGURATION_2_0 stuff.
  278. 2006-01-04 Chris Toshok <[email protected]>
  279. * WebServiceHandlerFactory.cs: add CONFIGURATION_2_0 stuff.
  280. * SoapExtension.cs: add CONFIGURATION_2_0 stuff.
  281. 2005-09-26 Lluis Sanchez Gual <[email protected]>
  282. * LogicalMethodInfo.cs: GetCustomAttribute* does not return
  283. inherited attributes in MS.NET.
  284. 2005-08-15 Gert Driesen <[email protected]>
  285. * SoapException.cs: Only mark serializable on 2.0 profile.
  286. * SoapHeaderException.cs: Only mark serializable on 2.0 profile.
  287. * WebClientProtocol.cs: DefaultValue of RequestEncoding must be null
  288. to match MS.NET. Fixed line endings.
  289. 2005-08-03 Gonzalo Paniagua Javier <[email protected]>
  290. * SoapDocumentationHandler.cs: workaround for a bug in the HttpRequest
  291. QueryString property. Under MS, GetKey (0) yields null.
  292. 2005-06-30 Konstantin Triger <[email protected]>
  293. * HttpSoapWebServiceHandler.cs:
  294. * HttpSimpleWebServiceHandler.cs: Disposing the WebService instance
  295. after a WebMethod invocation.
  296. 2005-06-14 Lluis Sanchez Gual <[email protected]>
  297. * SoapHttpClientProtocol.cs:
  298. * WebServiceHelper.cs:
  299. * Methods.cs: Changed the way headers are serialized. Instead of having
  300. a serializer per header type, we now have a serializer per method, and
  301. headers are serialized using a member mapping.
  302. * HttpSoapWebServiceHandler.cs: Handle one way methods properly.
  303. Fixes bug #70699.
  304. 2005-06-10 Gonzalo Paniagua Javier <[email protected]>
  305. * HttpSoapWebServiceHandler.cs: use the HttpResponse.BufferOutput
  306. instead of our own MemoryStream when buffering is enabled. Flush the
  307. response instead of closing it, as that allows for Content-Length to
  308. be sent from HttpResponse and helps reusing connections.
  309. 2005-06-09 Gonzalo Paniagua Javier <[email protected]>
  310. * WebServiceHelper.cs: don't even try to read the response if its length
  311. is known to be 0.
  312. * SoapHttpClientProtocol.cs: for successful responses on methods that
  313. are not one-way, don't return immediately if the content length is 0 so
  314. that the check for Content-Type takes place.
  315. 2005-06-07 Kornél Pál <[email protected]>
  316. * WebServiceHandlerFactory.cs: Throw InvalidOperationException instead of
  317. returning DummyHttpHandler when the request format is not supported.
  318. 2005-06-06 Kornél Pál <[email protected]>
  319. * WebServiceHandlerFactory.cs: Added support for HttpPostLocalhost and HttpSoap12
  320. 2005-06-05 Konstantin Triger <[email protected]>
  321. * SoapHttpClientProtocol.cs: Close WebResponse to free resources
  322. * WebClientProtocol.cs, TypeStubManager.cs, SoapExtension.cs: moving static fields to AppDomain in Java builds
  323. 2005-02-07 Lluis Sanchez Gual <[email protected]>
  324. * XmlReturnWriter.cs, SoapDocumentationHandler.cs: Use utf-8 encoding
  325. when generating xml responses, wsdl documents and schemas. This fixes
  326. bug #72202.
  327. 2004-12-09 Lluis Sanchez Gual <[email protected]>
  328. * ValueCollectionParameterReader.cs: Parse parameters in the correct
  329. way, Convert.ChangeType is not enough. This fixes bug #70266.
  330. Removed some types that are not supported as parameters.
  331. * MimeFormatter.cs: Added methods for xml <-> object conversion.
  332. * UrlEncodedParameterWriter.cs: Use a more elaborate method for converting
  333. from object to string, ToString() is not enough.
  334. 2004-12-09 Lluis Sanchez Gual <[email protected]>
  335. * TypeStubManager.cs: Removed redundat hastable access.
  336. * SoapHttpClientProtocol.cs: Accept responses with ContentLength==0.
  337. This fixes bug #70310.
  338. 2004-12-03 Gonzalo Paniagua Javier <[email protected]>
  339. * SoapHttpClientProtocol.cs: dispose the StreamReader that wraps the
  340. response stream.
  341. 2004-09-15 Lluis Sanchez Gual <[email protected]>
  342. * Methods.cs: Use the service namespace as the base for the soap action.
  343. This fixes bug #60379.
  344. 2004-08-25 Lluis Sanchez Gual <[email protected]>
  345. * HttpSoapWebServiceHandler.cs, WebServiceHandler.cs: Do not assign the
  346. context to the service. It already gets it from HttpContext.Current.
  347. 2004-07-27 Lluis Sanchez Gual <[email protected]>
  348. * HttpSimpleClientProtocol.cs, HttpWebClientProtocol.cs,
  349. SoapHttpClientProtocol.cs: Implemented support for the new async model.
  350. * InvokeCompletedEventArgs.cs: Implemented.
  351. 2004-07-20 Lluis Sanchez Gual <[email protected]>
  352. * HttpWebClientProtocol.cs: Add received cookies to cookieContainer when
  353. getting the response, do not wait for the next request to do it.
  354. 2004-07-13 Lluis Sanchez Gual <[email protected]>
  355. * HttpWebClientProtocol.cs, Soap12FaultCodes.cs, SoapClientMessage.cs,
  356. SoapException.cs, SoapHeader.cs, SoapHeaderException.cs,
  357. SoapHttpClientProtocol.cs, SoapMessage.cs, SoapRpcMethodAttribute.cs,
  358. SoapRpcServiceAttribute.cs, SoapServerMessage.cs: Api fixage (mainly
  359. missing attributes).
  360. 2004-07-10 Lluis Sanchez Gual <[email protected]>
  361. * HttpSimpleClientProtocol.cs, HttpWebClientProtocol.cs,
  362. SoapClientMessage.cs, SoapHttpClientProtocol.cs, SoapServerMessage.cs:
  363. Added 2.0 stubs.
  364. * SoapException.cs, SoapHeader.cs, SoapHeaderException.cs, SoapMessage.cs,
  365. SoapRpcMethodAttribute.cs, SoapRpcServiceAttribute.cs: Implemented some
  366. new methods and properties.
  367. * WebClientProtocol.cs: uri field must be internal.
  368. 2004-07-05 Lluis Sanchez Gual <[email protected]>
  369. * Methods.cs: When using RPC, ignore RequestElementName and MessageName,
  370. and always uses the method name (MS.NET seems to do this).
  371. 2004-07-02 Lluis Sanchez Gual <[email protected]>
  372. * XmlReturnWriter.cs: Add XmlIncludes to the reflection importer when
  373. reflecting the return type.
  374. 2004-07-01 Lluis Sanchez Gual <[email protected]>
  375. * Methods.cs: Check for null when looking for a header serializer, since
  376. unknown headers don't have a serializer.
  377. * SoapHeader.cs: Check for empty string before setting
  378. EncodedMustUnderstand.
  379. 2004-07-01 Lluis Sanchez Gual <[email protected]>
  380. * Methods.cs, SoapMessage.cs: Added support for unknown headers.
  381. * SoapHeader.cs, SoapUnknownHeader.cs: Added new constructor that takes an
  382. XmlElement with header info.
  383. * WebServiceHelper.cs: Write the encodingStyle attribute when using the
  384. encoded format. Added support for unknown headers.
  385. 2004-06-22 Lluis Sanchez Gual <[email protected]>
  386. * XmlReturnReader.cs, XmlReturnWriter.cs: Generate the serializer with
  387. the root attribute taken from the method attributes.
  388. 2004-06-10 Lluis Sanchez Gual <[email protected]>
  389. * TypeStubManager.cs: Improved locking in GetLogicalTypeInfo().
  390. * WebServiceHandler.cs: Removed unneded methods.
  391. 2004-06-02 Lluis Sanchez Gual <[email protected]>
  392. * LogicalMethodInfo.cs: Don't crash in GetCustomAttribute if the requested
  393. attribute is not found.
  394. 2004-06-01 Gert Driesen <[email protected]>
  395. * HttpSoapWebServiceHandler.cs: Removed unused variables.
  396. * SoapHeaderAttribute.cs: Added Obsolete attribute.
  397. 2004-05-24 Lluis Sanchez Gual <[email protected]>
  398. * SoapClientMessage.cs: Get the MethodInfo from the corresponding
  399. SoapMethodStubInfo.
  400. 2004-05-18 Gonzalo Paniagua Javier <[email protected]>
  401. * SoapHttpClientProtocol.cs: when the response has a not acceptable
  402. status code, the WebException we throw has a status of ProtocolError.
  403. Fixes bug #58564.
  404. 2004-05-12 Lluis Sanchez Gual <[email protected]>
  405. * LogicalMethodInfo.cs: Made EnableSession property internal.
  406. 2004-05-12 Lluis Sanchez Gual <[email protected]>
  407. * HttpSimpleWebServiceHandler.cs: Added GetRequestMethod(), which is used
  408. by the handler factory to check if the target method needs session or not.
  409. Also factorized error handling in WriteError().
  410. * HttpSoapWebServiceHandler.cs: Added GetRequestMethod(), for the same
  411. reason. Assign the context to the WebService just before invoking the
  412. method.
  413. * SoapHttpClientProtocol.cs: Use helper method to create the xml writer.
  414. * WebServiceHandler.cs: Added virtual GetRequestMethod().
  415. * WebServiceHandlerFactory.cs: Use an http handler wrapper when the target
  416. method requires session support.
  417. * WebServiceHelper.cs: Added some helper methods.
  418. 2004-05-11 Gonzalo Paniagua Javier <[email protected]>
  419. * SoapDocumentationHandler.cs: added internal property to get the page
  420. handler when available.
  421. * WebServiceHandlerFactory.cs: wrap the documentation handler in a class
  422. that implements IRequiresSessionState and, if requested,
  423. IReadOnlySessionState, so that we can use Sesion object in the default
  424. WSDL help generator.
  425. 2004-05-10 Gonzalo Paniagua Javier <[email protected]>
  426. * HttpSoapWebServiceHandler.cs: finish the request after serializing
  427. the fault message.
  428. 2004-05-05 Gonzalo Paniagua Javier <[email protected]>
  429. * HttpGetWebServiceHandler.cs:
  430. * HttpPostWebServiceHandler.cs: removed.
  431. * HttpSimpleWebServiceHandler.cs: changed ctor parameters and added
  432. EnableSession property.
  433. * WebServiceHandler.cs: added EnableSession virtual property.
  434. * WebServiceHandlerFactory.cs: added a new handler that implements
  435. IRequiresSessionState used for HttpGet and HttpPost.
  436. (GetHandler): for HttpGet and HttpPost check if the method requires to
  437. have a Session object and use the new SimpleSyncSessionHandler in that
  438. case.
  439. Still missing proper session handler for SOAP requests.
  440. 2004-05-05 Gonzalo Paniagua Javier <[email protected]>
  441. * HttpSimpleWebServiceHandler.cs:
  442. * HttpSoapWebServiceHandler.cs: use the session if the method has
  443. EnableSession set.
  444. * LogicalMethodInfo.cs: added EnableSession property.
  445. * WebServiceHandler.cs: set the Session object of the WebService.
  446. 2004-03-25 Lluis Sanchez Gual <[email protected]>
  447. * WebServiceHelper.cs: In GetContentEncoding, chop off the single & double
  448. quotes around the encoding name. Patch by George Kodinov. This fixes
  449. bug #55806.
  450. 2004-03-10 Lluis Sanchez Gual <[email protected]>
  451. * HttpSoapWebServiceHandler.cs: Set the properties ContentType and
  452. ContentEncoding in SoapServerMessage.
  453. * LogicalMethodInfo.cs: Implemented AsyncResultParameter, BeginInvoke and
  454. EndInvoke. Fixed ComputeParameters, so it computes the correct parameters
  455. for async logical methods.
  456. * Methods.cs: Check that client proxies have one and only one
  457. WebServiceBindingAttribute.
  458. * PatternMatcher.cs: Implemented (in fact, just moved code from
  459. TextReturnReader.cs)
  460. * SoapDocumentationHandler.cs: Add soap bindings in the generated
  461. discovery document.
  462. * SoapHttpClientProtocol.cs: Implemented method Discover().
  463. * SoapMessage.cs: Implemented property ContentEncoding.
  464. * TextReturnReader.cs: Moved code to PatternMatcher.cs.
  465. 2004-02-27 Lluis Sanchez Gual <[email protected]>
  466. * Fault.cs: Moved Fault class from Methods.cd to this file. It also includes
  467. a generated serializer.
  468. * HttpSoapWebServiceHandler.cs, WebServiceHelper.cs: Use the new static Fault serializer.
  469. * Methods.cs: Include types declared with XmlInclude and SoapInclude to the
  470. reflection importer. Moved Fault and its serializer to Fault.cs
  471. * SoapHttpClientProtocol.cs: Removed unused method.
  472. 2004-02-12 Lluis Sanchez Gual <[email protected]>
  473. * WebServiceHelper.cs: When reading a soap request, skip empty headers.
  474. This fixes bug #51846.
  475. 2004-01-27 Lluis Sanchez Gual <[email protected]>
  476. * WebServiceHandler.cs: inheritance from WebService is not mandatory.
  477. 2004-02-05 Alon Gazit <[email protected]>
  478. * HttpMethodAttribute.cs:
  479. * MatchAttribute.cs:
  480. * SoapDocumentMethodAttribute.cs:
  481. * SoapDocumentServiceAttribute.cs:
  482. * SoapHeaderAttribute.cs:
  483. * SoapRpcMethodAttribute.cs:
  484. * SoapRpcServiceAttribute.cs: This attribute is inherited by
  485. derived classes.changed the AttributeUsage attribute.
  486. 2004-02-05 Alon Gazit <[email protected]>
  487. * SoapHeaderAttribute.cs: This attribute is multiuse.
  488. Changed the AttributeUsage attribute.
  489. 2004-01-27 Lluis Sanchez Gual <[email protected]>
  490. * SoapDocumentMethodAttribute.cs: Fixed bug in ResponseNamespace.
  491. 2004-01-24 Lluis Sanchez Gual <[email protected]>
  492. * HttpWebClientProtocol.cs: Added missing property.
  493. * Methods.cs: Default binding for a method must be null.
  494. * SoapHeaderDirection.cs: Added missing enum value.
  495. * SoapMessage.cs: Added missing property.
  496. * TypeStubManager.cs: Removed unneded check from AddBinding.
  497. In GetBinding(), return default binding if name is null.
  498. * ValueCollectionParameterReader.cs: IsPrimitive must be internal.
  499. 2004-01-21 Lluis Sanchez Gual <[email protected]>
  500. * HttpSoapWebServiceHandler.cs, SoapHttpClientProtocol.cs: Do not use
  501. indented format for requests and responses. SOAPAction header value
  502. must be quoted (fix by Yaacov Akiba Slama).
  503. 2004-01-21 Lluis Sanchez Gual <[email protected]>
  504. * Methods.cs: Set the correct namespaces for Fault. This fixes bug #53117.
  505. Based on the fix by Eran Domb.
  506. 2004-01-19 Lluis Sanchez Gual <[email protected]>
  507. * Methods.cs: Get the method namespace from the binding, not from the web
  508. service.
  509. * TypeStubManager.cs: When adding a binding, ignore it if it has already
  510. been added. Changed WebServiceLiteralNamespace by the method
  511. GetWebServiceLiteralNamespace. The literal namespace depends on the binding
  512. namespace, so it has to be provided as parameter.
  513. * XmlReturnReader.cs, XmlReturnWriter.cs: Use GetWebServiceLiteralNamespace
  514. instead of WebServiceLiteralNamespace.
  515. 2004-01-14 Lluis Sanchez Gual <[email protected]>
  516. * Methods.cs: Set the correct element name and namespace for headers (those
  517. are not managed like other data classes).
  518. 2004-01-10 Gonzalo Paniagua Javier <[email protected]>
  519. * HttpSoapWebServiceHandler.cs:
  520. * HttpSimpleWebServiceHandler.cs: set
  521. base.Context property.
  522. * WebServiceHandler.cs: added set_Context and set the context for the
  523. WebService when creating the instance.
  524. 2003-12-23 Lluis Sanchez Gual <[email protected]>
  525. * SoapDocumentationHandler.cs: Added support for DISCO file generation.
  526. 2003-12-16 Lluis Sanchez Gual <[email protected]>
  527. * HttpSimpleClientProtocol.cs: Do not encode the request url, since it is
  528. already encoded by the MimeParameterWriter.
  529. * MatchAttribute.cs: Set default value for Group to 1.
  530. * TextReturnReader.cs: Implemented. With this it is possible to create an
  531. XML web service that parse the contents of a web page.
  532. 2003-12-15 Lluis Sanchez Gual <[email protected]>
  533. * HttpSoapWebServiceHandler.cs: Added check for valid SOAPAction header.
  534. Fixed bug when routing style is RequestElement.
  535. Removed GetMethodFromAction. This is done now in the type stub.
  536. Other minor fixes.
  537. * Methods.cs, WebServiceHelper.cs: Faults are always serialized using
  538. literal format. Removed unneded code.
  539. 2003-12-12 Lluis Sanchez Gual <[email protected]>
  540. * Methods.cs: Added special handling for RPC format.
  541. 2003-11-27 Lluis Sanchez Gual <[email protected]>
  542. * Methods.cs: Added correct namespace for serialization in Fault class.
  543. * SoapHttpClientProtocol.cs: Changed the method used to check if the
  544. result is a fault. Now the check is done inside
  545. WebServiceHelper.ReadSoapMessage. Removed some debug writelines.
  546. * WebServiceHelper.cs: If the message body is a fault, use the fault
  547. serializer.
  548. 2003-11-24 Lluis Sanchez Gual <[email protected]>
  549. * Methods.cs, TypeStubManager.cs, SoapMessage.cs: Removed TODO comment.
  550. * SoapDocumentationHandler.cs: Check that the documentation page exist.
  551. * SoapHttpClientProtocol.cs: Removed cast from WebResponse to
  552. HttpWebResponse. This fixes bug #51281.
  553. 2003-11-20 Gonzalo Paniagua Javier <[email protected]>
  554. * HttpSoapWebServiceHandler.cs: WebException is ok here for wrong
  555. content encoding...
  556. * SoapHttpClientProtocol.cs: ... but here, we should throw an
  557. InvalidOperationException including the full response.
  558. * WebServiceHelper.cs:
  559. (GetContentEncoding): now fills an output variable with the name of the
  560. content encoding used.
  561. (InvalidOperation): new method to build the message for
  562. InvalidOperationException.
  563. 2003-11-20 Gonzalo Paniagua Javier <[email protected]>
  564. * SoapHttpClientProtocol.cs:
  565. * WebServiceHelper.cs: throw a WebException instead of an Exception.
  566. Fixes bug #51193.
  567. 2003-10-26 Miguel de Icaza <[email protected]>
  568. * WebServiceHelper.cs: Compute content type and encoding
  569. correctly in the absence of extra options.
  570. 2003-10-22 Lluis Sanchez Gual <[email protected]>
  571. * Methods.cs: Class Fault is now public, so it can be serialized.
  572. 2003-10-15 Lluis Sanchez Gual <[email protected]>
  573. * TypeStubManager.cs: Added OperationName property.
  574. 2003-10-13 Lluis Sanchez Gual <[email protected]>
  575. * HttpGetTypeStubInfo.cs, HttpPostTypeStubInfo.cs, HttpSimpleTypeStubInfo.cs,
  576. HttpSoapWebServiceHandler.cs, Methods.cs, SoapHttpClientProtocol.cs,
  577. TypeStubManager.cs
  578. Added class LogicalTypeInfo, which contains info common to all protocols
  579. through which a web service can be accessed. Also, modified the way
  580. Serializers are created. Instead of creating one by one, they are now
  581. created all at once. This will make serialization creation more efficient
  582. when the serializer code generator is in place.
  583. * SoapRpcMethodAttribute.cs: Set the correct default values for the
  584. properties.
  585. * WebServiceHelper.cs: Removed unused method GetServiceNamespace().
  586. * XmlReturnReader.cs, XmlReturnWriter.cs: Get the namespace for the return
  587. type from LogicalTypeInfo.
  588. 2003-10-12 Lluis Sanchez Gual <[email protected]>
  589. * SoapHttpClientProtocol.cs: Replaced AsyncInfo by a new
  590. SoapWebClientAsyncResult class derived from WebClientAsyncResult.
  591. * WebClientAsyncResult.cs: Removed unneeded members.
  592. 2003-10-10 Gonzalo Paniagua Javier <[email protected]>
  593. * SoapDocumentationHandler.cs: don't close the response stream here
  594. to allow filtering.
  595. 2003-10-06 Lluis Sanchez Gual <[email protected]>
  596. * HtmlFormParameterWriter.cs: Fixed WriteRequest().
  597. * HttpGetTypeStubInfo.cs, HttpPostTypeStubInfo.cs: Check that
  598. HttpMethodAttribute is present in proxy's method.
  599. * HttpSimpleClientProtocol.cs: Forgot to call InitializeRequest before
  600. getting the request stream.
  601. * UrlEncodedParameterWriter.cs: in Encode(), take into account that
  602. requestEncoding can be null.
  603. 2003-10-04 Lluis Sanchez Gual <[email protected]>
  604. * SoapDocumentationHandler.cs: Moved here the code from
  605. WebServiceHandlerFactory that generates the documentation page.
  606. * WebServiceHandlerFactory.cs: Moved the code that generates the doc page
  607. to SoapDocumentationHandler.cs.
  608. * HttpGetClientProtocol.cs, HttpGetWebServiceHandler.cs,
  609. HttpPostClientProtocol.cs, HttpPostWebServiceHandler.cs,
  610. HttpSimpleWebServiceHandler.cs, HttpSoapWebServiceHandler.cs,
  611. SoapHttpClientProtocol.cs: Changed parameters of GetTypeStub call.
  612. * HttpGetTypeStubInfo.cs, HttpPostTypeStubInfo.cs: Added ProtocolName
  613. property. Added check for valid parameters.
  614. * HttpSimpleTypeStubInfo.cs: Define return MimeFormatter in constructor.
  615. * Methods.cs: BindingInfo and related properties moved to base TypeStubInfo.
  616. Added properties for XmlImporter and SoapImporter.
  617. * TypeStubManager.cs: Added BindingInfo and related properties.
  618. Changed GetTypeStub method. Now it takes the name of the protocol for
  619. which to get the type stub info.
  620. * ValueCollectionParameterReader.cs: IsSupported should only return true
  621. for input primitive parameters or array of primitives.
  622. 2003-10-03 Gonzalo Paniagua Javier <[email protected]>
  623. * SoapDocumentationHandler.cs: it does not generate the documentation
  624. page any more. GetDescription and GetSchemas are now internal.
  625. * WebServiceHandlerFactory.cs: generate the documentation page without
  626. doing a Transfer () but instead creating a Page instance from the wsdl
  627. help file. This file is located from the configuration file that
  628. contains the <wsdlHelpGenerator> tag.
  629. 2003-10-01 Lluis Sanchez Gual <[email protected]>
  630. * HtmlFormParameterReader.cs, HtmlFormParameterWriter.cs,
  631. HttpGetClientProtocol.cs, HttpPostClientProtocol.cs,
  632. HttpSimpleClientProtocol.cs, MimeFormatter.cs, MimeParameterWriter.cs,
  633. NopReturnReader.cs, UrlEncodedParameterWriter.cs, UrlParameterReader.cs,
  634. UrlParameterWriter.cs, ValueCollectionParameterReader.cs,
  635. WebClientAsyncResult.cs, XmlReturnReader.cs, XmlReturnWriter.cs
  636. : Implemented.
  637. * HttpSoapWebServiceHandler.cs, SoapClientMessage.cs, SoapServerMessage.cs,
  638. SoapDocumentationHandler.cs, SoapHttpClientProtocol.cs,
  639. WebServiceHelper.cs: Changed due to modifications in TypeStubInfo.
  640. * Methods.cs: Moved common code to TypeStubInfo.cs.
  641. * WebServiceHandler.cs: Moved invoke code to HttpSoapWebServiceHandler.cs
  642. * ServerProtocol.cs, SoapServerProtocol.cs: Fixed formatting.
  643. * WebServiceHandlerFactory.cs: Added support for HttpGet and HttpPost.
  644. 2003-09-29 Lluis Sanchez Gual <[email protected]>
  645. * Methods.cs: Little fix in binding check.
  646. * SoapExtension.cs: Implemented ChainStream. Changed some methods from
  647. public to internal.
  648. * SoapClientMessage: Implemented EnsureInStage.
  649. * SoapServerMessage: Implemented EnsureInStage, EnsureOutStage.
  650. 2003-09-28 Lluis Sanchez Gual <[email protected]>
  651. * HttpSoapWebServiceHandler.cs: In SerializeResponse method, improved
  652. management of exceptions. Also added support for BufferResponse flag.
  653. * Methods.cs: Added MethodAttribute property in MethodStubInfo. Added
  654. XmlImporter, SoapImporter and Type properties in TypeStubInfo.
  655. * SoapMessage.cs: little fix.
  656. 2003-09-14 Lluis Sanchez Gual <[email protected]>
  657. * SoapDocumentationHandler.cs: Added support for on-the-fly proxy
  658. code generation in documentation pages.
  659. 2003-09-04 Lluis Sanchez Gual <[email protected]>
  660. * Methods.cs: Added support for bare parameter style. Fixed some defaults.
  661. 2003-09-01 Lluis Sanchez Gual <[email protected]>
  662. * Methods.cs: In TypeStubInfo, added Documentation field.
  663. 2003-07-28 Lluis Sanchez Gual <[email protected]>
  664. * HttpSoapWebServiceHandler.cs:
  665. * Methods.cs: Added SoapBindingStyle, SoapBindingUse, InputMembersMapping
  666. and OutputMembersMapping properties in MethodStubInfo.
  667. Use default value defined in TypeStubInfo for RequestNamespace,
  668. ResponseNamespace and other properties.
  669. Added class BindingInfo to store information about class bindings.
  670. In TypeStubInfo added SoapBindingStyle, DefaultBinding, Methods and
  671. Bindings properties.
  672. * SoapRpcMethodAttribute.cs: Use WebServiceAttribute.DefaultNamespace constant
  673. instead of hardcoded namespace name.
  674. * WebServiceHandlerFactory.cs: Create new SoapDocumentationHandler for
  675. documentation requests.
  676. * SoapDocumentationHandler.cs: new handler that generates WS documentation.
  677. 2003-07-22 Lluis Sanchez Gual <[email protected]>
  678. * WebServiceHandler.cs: Fixed Invoke(). ParameterInfo.Position is now
  679. zero-based, like in MS.NET.
  680. 2003-07-16 Lluis Sanchez Gual <[email protected]>
  681. * SoapHttpClientProtocol.cs: Removed debug WriteLine.
  682. 2003-07-10 Lluis Sanchez Gual <[email protected]>
  683. * HttpSoapWebServiceHandler.cs: MS puts the soap action in quotation marks??
  684. Fix for this case.
  685. * SoapHttpClientProtocol.cs: Implemented support for asynchronous calls
  686. (BeginInvoke and EndInvoke).
  687. 2003-07-09 Lluis Sanchez Gual <[email protected]>
  688. * SoapHttpClientProtocol.cs, HttpSoapWebServiceHandler.cs, Methods.cs:
  689. Added support for soap extensions. Moved some code to
  690. WebServiceHelper. Implemented support for the two types of RoutingStyle. Added support
  691. for In and Out headers. Improved management of exceptions.
  692. * SoapClientMessage.cs: code to retrieve soap headers moved to SoapMessage.
  693. * SoapExtension.cs: Added methods for getting and creating soap extensions.
  694. * SoapMessage.cs: Added methods for getting and assigning headers to an object.
  695. * SoapServerMessage.cs: Added setter for MethodStubInfo. Other minor fixes.
  696. * WebServiceHandler.cs: Added support for In and Out headers. Fixed management of exceptions.
  697. * WebServiceHandlerFactory.cs: Check if the request protocol is supported.
  698. * WebServiceHelper.cs: Added method for reading a soap request.
  699. 2003-07-04 Lluis Sanchez Gual <[email protected]>
  700. * LogicalMethodInfo.cs: Fixed Invoke method. If return type is void,
  701. then the result object array only contain output parameters.
  702. * Methods.cs: In class MethodStubInfo, added support from some server properties
  703. taken from WebMethodAttribute. Now MethodStubInfo can be created without SoapDocument*
  704. or SoapRpc* attributes, in which case takes default values from TypeStubInfo.
  705. Added method for getting header info.
  706. In class Fault: added constructor for creating a fault from a SoapException.
  707. In class TypeStubInfo: new way to manage serializers for headers. Now it is possible to
  708. get a header using a name and namespace (used when deserializing).
  709. * SoapHttpClientProtocol.cs: moved WriteSoapEnvelope method to WebServiceHelper (so it can be shared).
  710. Also moved other serialization stuff to WebServiceHelper.
  711. * SoapMessage.cs: Added some convenient constructors and internal properties.
  712. Implemented GetOutParameterValue and GetReturnValue.
  713. * SoapServerMessage.cs: Implemented.
  714. * WebServiceHandler.cs: Implemented method Invoke.
  715. * WebServiceHandlerFactory.cs: Basic implementation.
  716. * WebServiceHelper.cs: Added. Has some methods shared between client and server classes.
  717. * HttpSoapWebServiceHandler.cs: Added. IHttpHandler implementation for HttpSoap requests.
  718. 2003-06-21 Gonzalo Paniagua Javier <[email protected]>
  719. * HttpWebClientProtocol.cs: handle cookies if the request is a
  720. HttpWebRequest. It gets the cookies set in the response and sends them
  721. on subsequent requests.
  722. * SoapHttpClientProtocol.cs:
  723. (GetWebRequest): just calls the base method.
  724. (SendRequest): set the method here.
  725. (Invoke): call GetWebResponse instead of request.GetResponse.
  726. * WebClientProtocol.cs:
  727. (GetWebRequest): set some properties of the request.
  728. (GetWebResponse): if we get a WebException containing a response, return
  729. that as the response and ignore the exception.
  730. (GetWebResponse (req, async)): only call EndGetResponse.
  731. 2003-06-14 Lluis Sanchez Gual <[email protected]>
  732. * Methods.cs: Added information about headers in MethodStubInfo. Added cache of serializers
  733. in TypeStubInfo so serializers for headers they can be shared by several methods.
  734. * SoapClientMessage.cs: Headers added in the constructor.
  735. * SoapMessage.cs: Added header list initialization.
  736. * SoapHttpClientProtocol.cs: Added support soap headers.
  737. 2003-06-13 Lluis Sanchez Gual <[email protected]>
  738. * Methods.cs: Added serializer to MethodStubInfo for deserializing faults.
  739. * SoapHttpClientProtocol.cs: Added support for faults.
  740. 2003-06-10 Lluis Sanchez Gual <[email protected]>
  741. * Methods.cs: removed handler for UnknownNode event
  742. 2003-06-05 Lluis Sanchez Gual <[email protected]>
  743. * Methods.cs: added support for encoded format
  744. 2003-06-01 Miguel de Icaza <[email protected]>
  745. * Methods.cs (MethodStubInfo): If creating an RPC call, pass an
  746. optional XmlElementAttribute with the namespace set to null; Use
  747. this on each element of the request and response serializers.
  748. (MakeRequestSerializer, MakeResponseSerializer): Use the empty
  749. element for the return values.
  750. * SoapRpcMethodAttribute.cs: Drop the default name on the
  751. SoapRpcMethodAttribute, it was incorrectly given a default name.
  752. 2003-05-30 Miguel de Icaza <[email protected]>
  753. * Methods.cs (MethodStubInfo): Start support for RPC style as well
  754. as Literal style. Take an object instead of a
  755. SoapDocumentMethodAttribute, and allow the value to be also a
  756. SoapRpcMethodAttribute. Pull data from both.
  757. Kill SoapBindingUse, we only use this during validation.
  758. Turn out Google uses RPC/Literal, and its a good demo.
  759. (MakeResponseSerializer): OneWay is not the only
  760. condition to catch; Also void return types are not required to
  761. have a response.
  762. (MakeRequestSerializer): InParameters *might* be ref parameters,
  763. deal with that here too.
  764. Add some debugging code for tracking down missing implementation
  765. details in serialization creation.
  766. (MakeResponseSerializer): DUH. Use the
  767. ResponseName/ResponseNamespace for the member import, not the
  768. RequestName and RequestNamespace. The bugs of cut-and-paste.
  769. 2003-05-29 Miguel de Icaza <[email protected]>
  770. * SoapHttpClientProtocol.cs (CreateMessage): Kill. Move
  771. functionality to Invoke.
  772. (Invoke): Use new TypeStubInfo/MethodStubInfo instead.
  773. * SoapClientMessage.cs: Drop old mechanism, use MethodStubInfo instead.
  774. * Methods.cs: New file. Contains the managed for TypeStubs and
  775. MethodInfoStubs.
  776. A MethodInfoStub contains the serializers we use for the SOAP
  777. request.
  778. * SoapClientMessage.cs: Drop parameters from the clientmessage, it
  779. does not belong here. Drop oneway, we canextract that from the
  780. SoapDocumentMethodAttribute class that we pass.
  781. 2003-05-28 Miguel de Icaza <[email protected]>
  782. * LogicalMethodInfo.cs (Create): Implement begin/end method
  783. pairing.
  784. (Name): Implement.
  785. (EndMethodInfo): Always return end_method_info.
  786. 2003-04-30 Miguel de Icaza <[email protected]>
  787. * SoapHttpClientProtocol.cs: Flag the methods in the chain that
  788. gets the caller method as non-inlineable.
  789. 2003-04-29 Miguel de Icaza <[email protected]>
  790. * SoapHttpClientProtocol.cs (CreateMessage): Extract information
  791. from the method to be called.
  792. * SoapDocumentMethodAttribute.cs: Do not initialize all the fields
  793. on the attribute at bootstrap, for default values, just compute
  794. them when queried.
  795. * SoapMessage.cs (SetStage): New internal method, used to register
  796. the stage as we move along the soap pipeline.
  797. * LogicalMethodInfo.cs: Most of this is implemented. Its only
  798. missing a few bits in the Create() method.
  799. * SoapHttpClientProtocol.cs: Begin implementation of Invoke, which
  800. lead to other dependencies to be implemented.
  801. * LogicalMethodInfo.cs: Mostly complete. It is only missing the
  802. async features (BeginInvoke/EndInvoke) on a LogicalMethodInfo.
  803. * WebClientProtocol.cs (GetWebRequest): Track the web request, so
  804. we can abort it later.
  805. (Abort): Call abort on the underlying transport.
  806. 2002-08-24 Tim Coleman <[email protected]>
  807. * HttpServerProtocol.cs:
  808. * WebServiceHandler.cs:
  809. Some commented code added, from analysing
  810. an exception trace.
  811. * MimeReturnWriter.cs:
  812. * XmlReturnWriter.cs:
  813. New stubs added.
  814. 2002-08-23 Tim Coleman <[email protected]>
  815. * ServerProtocol.cs:
  816. * SoapServerProtocol.cs:
  817. More cleanup, comparison with class status.
  818. * WebServiceHandler.cs:
  819. * HttpServerProtocol.cs:
  820. New stubs added.
  821. 2002-08-15 Tim Coleman <[email protected]>
  822. * ServerProtocol.cs:
  823. * SoapServerProtocol.cs:
  824. Some more implementation.
  825. 2002-08-06 Tim Coleman <[email protected]>
  826. * ServerProtocol.cs:
  827. Add new class as implied by class statuc page.
  828. SoapServerProtocol is derived from this.
  829. * SoapServerProtocol.cs:
  830. Change base class to ServerProtocol. Add some
  831. properties shown by class status page.
  832. * SoapClientMethod.cs:
  833. This class should not be sealed. Add some
  834. fields shown by the class status page.
  835. 2002-07-25 Tim Coleman <[email protected]>
  836. * SoapClientMethod.cs:
  837. * SoapServerProtocol.cs:
  838. Add new internal classes as discovered.
  839. * SoapClientMessage.cs:
  840. * SoapMessage.cs:
  841. * SoapServerMessage.cs:
  842. * WebClientAsyncResult.cs:
  843. Add internal constructor, as found on class
  844. status page; modify some properties.
  845. 2002-07-23 Tim Coleman <[email protected]>
  846. * SoapException.cs: modified constructors to
  847. call base class correctly.
  848. * WebClientAsyncResult: some implementation
  849. 2002-07-23 Tim Coleman <[email protected]>
  850. * HttpGetClientProtocol.cs:
  851. * HttpPostClientProtocol.cs
  852. Implemented the GetWebRequest method
  853. * HttpSimpleClientProtocol:
  854. Some implementation of the EndInvoke method
  855. * HttpWebClientProtocol.cs:
  856. Set the UserAgent string appropriately
  857. Implemented the GetWebRequest method
  858. Implemented the GetWebResponse methods
  859. * SoapHttpClientProtocol.cs:
  860. Removed unused fields
  861. Implemented the GetWebRequest method
  862. * SoapMessage.cs:
  863. Implemented the EnsureStage method
  864. * WebClientProtocol.cs:
  865. Added a static constructor to construct the cache
  866. Implemented the Abort method
  867. Implemented the AddToCache, GetFromCache methods
  868. Implemented the GetWebRequest method
  869. Implemented the GetWebResponse methods
  870. 2002-07-23 Tim Coleman <[email protected]>
  871. * LogicalMethodTypes.cs:
  872. * SoapHeaderDirection.cs:
  873. * SoapMessageStage.cs:
  874. * SoapParameterStyle.cs:
  875. * SoapServiceRoutingStyle.cs:
  876. Explicitly define values in enum to match
  877. .NET.
  878. * SoapMessage.cs:
  879. Removed constructor which should not be present.
  880. * SoapException.cs:
  881. Made protected fields private as they should
  882. be.
  883. * SoapHeaderException.cs:
  884. Modifications to constructors to propertly
  885. call base class constructor
  886. 2002-07-22 Tim Coleman <[email protected]>
  887. * SoapHeaderException.cs:
  888. Fixed name error in constructor
  889. * SoapUnknownHeader.cs:
  890. Added reference to System.Xml.Serialization
  891. 2002-07-22 Tim Coleman <[email protected]>
  892. * SoapHeaderException.cs:
  893. New file added
  894. 2002-07-22 Tim Coleman <[email protected]>
  895. * AnyReturnReader.cs:
  896. * HtmlFormParameterReader.cs :
  897. * HtmlFormParameterWriter.cs :
  898. * HttpGetClientProtocol.cs :
  899. * HttpMethodAttribute.cs :
  900. * HttpPostClientProtocol.cs :
  901. * HttpSimpleClientProtocol.cs :
  902. * HttpWebClientProtocol.cs :
  903. * LogicalMethodInfo.cs :
  904. * LogicalMethodTypes.cs :
  905. * MatchAttribute.cs :
  906. * MimeFormatter.cs :
  907. * MimeParameterReader.cs :
  908. * MimeParameterWriter.cs :
  909. * MimeReturnReader.cs :
  910. * NopReturnReader.cs :
  911. * PatternMatcher.cs :
  912. * SoapClientMessage.cs :
  913. * SoapDocumentMethodAttribute.cs :
  914. * SoapDocumentServiceAttribute.cs :
  915. * SoapException.cs :
  916. * SoapExtension.cs :
  917. * SoapExtensionAttribute.cs :
  918. * SoapHeader.cs :
  919. * SoapHeaderAttribute.cs :
  920. * SoapHeaderCollection.cs :
  921. * SoapHeaderDirection.cs :
  922. * SoapHttpClientProtocol.cs :
  923. * SoapMessage.cs :
  924. * SoapMessageStage.cs :
  925. * SoapParameterStyle.cs :
  926. * SoapRpcMethodAttribute.cs :
  927. * SoapRpcServiceAttribute.cs :
  928. * SoapServerMessage.cs :
  929. * SoapServiceRoutingStyle.cs :
  930. * SoapUnknownHeader.cs :
  931. * TextReturnReader.cs :
  932. * UrlEncodedParameterWriter.cs :
  933. * UrlParameterReader.cs :
  934. * UrlParameterWriter.cs :
  935. * ValueCollectionParameterReader.cs :
  936. * WebClientAsyncResult.cs :
  937. * WebClientProtocol.cs :
  938. * WebServiceHandlerFactory.cs :
  939. * XmlReturnReader.cs :
  940. Add missing methods and attributes to make as few missing
  941. things as possible in this namespace. This is from the
  942. project status page.
  943. 2002-07-20 Tim Coleman <[email protected]>
  944. * AnyReturnReader.cs:
  945. * HtmlFormParameterReader.cs:
  946. * HtmlFormParameterWriter.cs:
  947. * HttpGetClientProtocol.cs:
  948. * HttpMethodAttribute.cs:
  949. * HttpPostClientProtocol.cs:
  950. * HttpSimpleClientProtocol.cs:
  951. * HttpWebClientProtocol.cs:
  952. * MatchAttribute.cs:
  953. * MimeFormatter.cs:
  954. * MimeParameterReader.cs:
  955. * MimeParameterWriter.cs:
  956. * MimeReturnReader.cs:
  957. * NopReturnReader.cs:
  958. * PatternMatcher.cs:
  959. * SoapClientMessage.cs:
  960. * SoapDocumentMethodAttribute.cs:
  961. * SoapDocumentServiceAttribute.cs:
  962. * SoapException.cs:
  963. * SoapExtensionAttribute.cs:
  964. * SoapExtension.cs:
  965. * SoapHeaderAttribute.cs:
  966. * SoapHeaderCollection.cs:
  967. * SoapHeader.cs:
  968. * SoapHeaderDirection.cs:
  969. * SoapHttpClientProtocol.cs:
  970. * SoapMessage.cs:
  971. * SoapMessageStage.cs:
  972. * SoapParameterStyle.cs:
  973. * SoapRpcMethodAttribute.cs:
  974. * SoapRpcServiceAttribute.cs:
  975. * SoapServerMessage.cs:
  976. * SoapServiceRoutingStyle.cs:
  977. * SoapUnknownHeader.cs:
  978. * TextReturnReader.cs:
  979. * UrlEncodedParameterWriter.cs:
  980. * UrlParameterReader.cs:
  981. * UrlParameterWriter.cs:
  982. * ValueCollectionParameterReader.cs:
  983. * WebClientAsyncResult.cs:
  984. * WebClientProtocol.cs:
  985. * WebServiceHandlerFactory.cs:
  986. * XmlReturnReader.cs:
  987. Added new stubbs and some implementation
  988. * LogicalMethodTypes.cs:
  989. Added [Serializable] attribute which was missing.
  990. 2002-07-19 Tim Coleman <[email protected]>
  991. * ChangeLog:
  992. * LogicalMethodInfo.cs:
  993. * LogicalMethodTypes.cs:
  994. Add required classes to maek System.Web.Services.Description
  995. buildable.