2009-08-10 Atsushi Enomoto <atsushi@ximian.com>
[mono.git] / mcs / class / System.ServiceModel / System.ServiceModel.Description / ChangeLog
1 2009-08-10  Atsushi Enomoto  <atsushi@ximian.com>
2
3         * ServiceContractGenerator.cs : first step to add moonlight-based
4           client proxy generator (it is not supported in 3.5. needs to be
5           enabled by some hook, such as reflection-based hack).
6
7 2009-08-07  Atsushi Enomoto  <atsushi@ximian.com>
8
9         * ContractDescription.cs : wcf & 2.1 is specially annoying land :(
10
11 2009-08-07  Atsushi Enomoto  <atsushi@ximian.com>
12
13         * ContractDescriptionGenerator.cs : add new contract getter to
14           create callback contract type (which does not demand
15           ServiceContractAttribute).
16
17 2009-08-07  Atsushi Enomoto  <atsushi@ximian.com>
18
19         * ServiceEndpoint.cs, ContractDescription.cs : moved client runtime
20           creator from former to latter.
21
22 2009-08-06  Atsushi Enomoto  <atsushi@ximian.com>
23
24         * ServiceEndpoint.cs : follow ClientRuntime change.
25
26 2009-07-31  Atsushi Enomoto  <atsushi@ximian.com>
27
28         * ServiceEndpoint.cs : ListenUri defaults to Address.Uri.
29
30 2009-07-02  Atsushi Enomoto  <atsushi@ximian.com>
31
32         * ContractDescriptionGenerator.cs : actually it had to fill all of
33           the interface methods (and implementation methods).
34
35 2009-07-02  Atsushi Enomoto  <atsushi@ximian.com>
36
37         * ContractDescriptionGenerator.cs : do not reject derived service
38           contract from another service contract type.
39
40 2009-06-10  Atsushi Enomoto  <atsushi@ximian.com>
41
42         * ServiceThrottlingBehavior.cs : implement Validate() (nothing to do
43           here).
44
45 2009-06-09  Atsushi Enomoto  <atsushi@ximian.com>
46
47         * ServiceThrottlingBehavior.cs : implement.
48
49 2009-05-28  Atsushi Enomoto  <atsushi@ximian.com>
50
51         * ContractDescriptionGenerator.cs : fill ProtectionLevel by
52           OperationContractAttribute.
53
54 2009-05-13  Atsushi Enomoto  <atsushi@ximian.com>
55
56         * ServiceCredentials.cs : IServiceBehavior.Validate() should not
57           throw NIE. No check so far.
58
59 2009-03-06  Atsushi Enomoto  <atsushi@ximian.com>
60
61         * MessageBodyDescription.cs, MessagePartDescription.cs,
62           OperationDescription.cs, MessageDescriptionCollection.cs:
63           clean up extra todos.
64
65 2009-03-05  Atsushi Enomoto  <atsushi@ximian.com>
66
67         * ContractDescriptionGenerator.cs : fill service known types.
68
69 2009-02-26  Atsushi Enomoto  <atsushi@ximian.com>
70
71         * ServiceContractGenerator.cs : ClientBase<> argument type must be
72           class (the class itself is to be fixed soon as well).
73
74 2009-02-20  Atsushi Enomoto  <atsushi@ximian.com>
75
76         * ServiceEndpoint.cs : moved CreateRuntime() from ChannelFactory<T>.
77
78 2009-02-12  Atsushi Enomoto  <atsushi@ximian.com>
79
80         * ContractDescriptionGenerator.cs : do not write body wrapper element
81           when IsWrapped = false.
82
83 2009-02-04  Atsushi Enomoto  <atsushi@ximian.com>
84
85         * ServiceContractGenerator.cs : add async operation support (might
86           be hacky under some condition).
87
88 2009-01-23  Atsushi Enomoto  <atsushi@ximian.com>
89
90         * ContractDescriptionGenerator.cs : async begin method with
91           [MessageContract] has 3 parameters, not 1.
92
93 2009-01-22  Atsushi Enomoto  <atsushi@ximian.com>
94
95         * DataContractSerializerMessageContractImporter.cs :
96           for such an element that does not contain schema type but has a
97           type reference, use ImportSchemaType().
98
99 2009-01-21  Atsushi Enomoto  <atsushi@ximian.com>
100
101         * DataContractSerializerMessageContractImporter.cs :
102           some refactoring. Process all schemas, including those in WSDLs.
103
104 2009-01-07  Atsushi Enomoto  <atsushi@ximian.com>
105
106         * ContractDescription.cs : fix by corcompare.
107
108 2008-05-28  Noam Lampert <noaml@mainsoft.com>
109         * ContractDescriptionGenerator.cs: Allow services to implement more than one contract.
110           
111 2008-05-22  Noam Lampert <noaml@mainsoft.com>
112         * ServiceDebugBehavior.cs: Correctly propagate IncludeExceptionDetailsInFaults. Previous code
113           overwrote values set in ServiceBehaviorAttribute.
114           
115 2008-05-22  Roei Erez  <roeie@mainsoft.com>
116         * fix ContractDescription.GetContract implementation
117         * Refactor Request processing
118         * Add support for message inspectors
119         * Add support for InstanceContextProvider & InstanceProvider, including lifecycles events
120         like: ReleaseServiceInstance, Open, Close...
121         * Add relevant test cases.
122
123 2008-05-01  Eyal Alaluf <eyala@mainsoft.com>
124
125         * ContractDescriptionGenerator.cs: Support specifying custom names of
126           operations, actions, parameters and return value via attributes.
127
128 2008-04-21  Igor Zelmanovich <igorz@mainsoft.com>
129
130         * ServiceDebugBehavior.cs: implement ApplyDispatchBehavior.
131         * ServiceMetadataBehavior.cs: fix ApplyDispatchBehavior.
132         * ServiceMetadataExtension.cs: refactoring, serves both 
133         ServiceDebugBehavior and ServiceMetadataBehavior by providing suitable 
134         functionality.          
135
136 2008-04-21  Igor Zelmanovich <igorz@mainsoft.com>
137
138         * WsdlExporter.cs: fix ExportEndpoint: SoapBinding.Style is initialized 
139         with SoapBindingStyle.Document value. 
140
141 2008-04-17  Vladimir Krasnov  <vladimirk@mainsoft.com>
142
143         * ServiceEndpoint.cs: fixed Name property
144
145 2008-04-10  Eyal Alaluf <eyala@mainsoft.com>
146
147         * TypedMessageConverter.cs: Simplified to use XmlMessagesFormatter and
148           DataContractMessagesFormatter that handle the actual message
149           serialization/deserialization.
150           Added support for XmlSerializaerFormat serialization.
151         * ContractDescriptionGenerator.cs: Refactored to expose utilities for
152           creating MessageDescription from types for TypedMessageConverter use.
153         * ServiceModelInternalConverter.cs: Removed.
154
155 2008-04-08  Roei Erez <roeie@mainsoft.com>
156
157         * ServiceAuthorizationBehavior.cs:
158           -- remove throwing NotImplementedException and add MonoTODO
159         * ServiceDebugBehavior.cs
160           -- remove throwing NotImplementedException and add MonoTODO
161         * ServiceEndpoint.cs
162           -- Add validate method.
163         * ServiceMetadataBehavior.cs
164           -- remove throwing NotImplementedException and add MonoTODO
165         
166 2008-03-24  Igor Zelmanovich <igorz@mainsoft.com>
167
168         * PolicyVersion.cs: imפlement ToString method, fix Namespace property.
169         * ServiceTimeoutsBehavior.cs: add internal class behavior corresponds
170         ServiceTimeoutsElement.
171
172 2008-03-23  Vladimir Krasnov  <vladimirk@mainsoft.com>
173
174         * ContractDescriptionGenerator.cs: fixed GetMessage, fixed namespace
175         while creating message part
176
177 2008-03-04  Eyal Alaluf <eyala@mainsoft.com>
178
179         * ContractDescriptionGenerator.cs: Init ConfigurationName from attribute.
180
181 2008-02-27  Eyal Alaluf <eyala@mainsoft.com>
182
183         * MetadataSectionSerializerBase.cs WSTrustMessageConverters.cs:
184           Fix compilation warnings.
185
186 2008-02-16  Atsushi Enomoto  <atsushi@ximian.com>
187
188         * CallbackDebugBehavior.cs : new class.
189
190 2008-02-15  Atsushi Enomoto  <atsushi@ximian.com>
191
192         * ContractDescriptionGenerator.cs : When reflecting a method,
193           iterate attributes and added such attribute that implements
194           IOperationBehavior to operation's Behaviors.
195
196 2007-08-17  Atsushi Enomoto  <atsushi@ximian.com>
197
198         * TypedMessageConverter.cs, ServiceModelInternalConverter.cs,
199           ContractDescriptionGenerator.cs : significant rewrite for
200           message serialization and deserialization. Proxy types are not
201           created anymore. Instead, serializers are created for every
202           message member. (Deserialization had been broken due to missing
203           default constructor of the proxy type.)
204
205 2007-08-16  Atsushi Enomoto  <atsushi@ximian.com>
206
207         * ServiceModelInternalConverter.cs : use MessagePartDescription.Name
208           instead of MemberInfo.Name.
209
210 2007-08-16  Atsushi Enomoto  <atsushi@ximian.com>
211
212         * TypedMessageConverter.cs ServiceModelInternalConverter.cs
213           ContractDescriptionGenerator.cs :
214           support MessageContractAttribute wrapper name specification and
215           non-wrapping outputs.
216
217 2007-07-26  Atsushi Enomoto  <atsushi@ximian.com>
218
219         * ContractDescriptionGenerator.cs : reverted previous change. It is
220           conceptually wrong. RegisterInfo serialization is still possible
221           because it could contain private DataContract member which works
222           as a proxy to get or set properties on the RegisterInfo itself.
223
224 2007-07-26  Atsushi Enomoto  <atsushi@ximian.com>
225
226         * ContractDescriptionGenerator.cs : added hack to support
227           [MessageContract] type which has no [MessageBody] member.
228
229 2007-03-30  Atsushi Enomoto  <atsushi@ximian.com>
230
231         * WSTrustSTSContract.cs : write prefixes.
232
233 2007-03-27  Atsushi Enomoto  <atsushi@ximian.com>
234
235         * WSTrustMessageConverters.cs, WSTrustSTSContract.cs:
236           now they could be used for both TLS and SPNego.
237
238 2007-03-20  Atsushi Enomoto  <atsushi@ximian.com>
239
240         * WSTrustMessageConverters.cs : fixed incorrect empty element check.
241         * WSTrustSTSContract.cs :
242           Fixed Lifetime content namespace. Write KeySize.
243
244 2007-03-20  Atsushi Enomoto  <atsushi@ximian.com>
245
246         * WSTrustSTSContract.cs, WSTrustMessageConverters.cs :
247           process RequestedProofToken as raw TLS 1.0 application data, which
248           is likely a shared key.
249
250 2007-03-19  Atsushi Enomoto  <atsushi@ximian.com>
251
252         * WSTrustSTSContract.cs : support t:Authenticator output in RSTR.
253
254 2007-03-13  Atsushi Enomoto  <atsushi@ximian.com>
255
256         * WSTrustSTSContract.cs, WSTrustMessageConverters.cs :
257           (This inidividual commit breaks the build.)
258           Support all xml contents required for Sslnego RSTR collection.
259
260 2007-03-08  Atsushi Enomoto  <atsushi@ximian.com>
261
262         * WSTrustSTSContract.cs, WSTrustMessageConverters.cs :
263           Added IssueReply() operation to support RSTR from client.
264           Several fixes to read and write RSTR correctly.
265
266 2007-03-07  Atsushi Enomoto  <atsushi@ximian.com>
267
268         * ServiceMetadataExtension.cs :
269           DispatchRuntime.InternalEndpointDispatcher was eliminated.
270
271 2007-03-05  Atsushi Enomoto  <atsushi@ximian.com>
272
273         * WSTrustSTSContract.cs, WSTrustMessageConverters.cs :
274           added missing support for token negotiation (WS-Trust section 10.3).
275
276 2007-01-11  Atsushi Enomoto  <atsushi@ximian.com>
277
278         * ServiceCredentials.cs : oops.
279
280 2007-01-11  Atsushi Enomoto  <atsushi@ximian.com>
281
282         * ClientCredentials.cs, ServiceCredentials.cs : Clone() throws
283           NotImplementedException when it returns an instance of different
284           type.
285
286 2006-12-14  Atsushi Enomoto  <atsushi@ximian.com>
287
288         * ServiceMetadataExtension.cs : raising an NIE than returning null
289           is better (at least it avoids extra debugging).
290
291 2006-12-04  Atsushi Emomoto  <atsushi@ximian.com>
292
293         * WsdlExporter.cs : Binding.MessageVersion could be null.
294
295 2006-12-04  Atsushi Emomoto  <atsushi@ximian.com>
296
297         * DataContractSerializerMessageContractImporter.cs :
298           The latest XmlSchemaImporter.ImportTypeMapping() correctly reports
299           an error for xs:* primitive type argument. So it should not do
300           that as well.
301
302 2006-12-04  Atsushi Emomoto  <atsushi@ximian.com>
303
304         * MetadataSectionSerializerBase.cs : Build fix.
305           It was based on old 2.0 beta API
306
307 2006-10-18  Ankit Jain  <jankit@novell.com>
308
309         * ServiceMetadataBehavior.cs (AddBindingParameters): Add endpoint for
310         HTTP GET requests.
311         (ApplyDispatchBehavior): Move code to add *InstanceContextProviders to ..
312         * ServiceMetadataExtension.cs (ServiceMetadataExtension.Attach): .. here.
313         (HttpGetWsdl): Service HTTP GET requests like ?wsdl.
314
315 2006-10-17  Ankit Jain  <jankit@novell.com>
316
317         * WsdlExporter.cs (ExportEndpoint): Don't emit Soap* if
318         MessageVersion.None
319         (ExportService): Likewise.
320
321 2006-10-13  Ankit Jain  <jankit@novell.com>
322
323         * WsdlExporter.cs (ExportContract): Move code to .. 
324         (ExportContractInternal): .. this. Add support for IWsdlExportExtension.
325         (ExportEndpoint): Add support for IWsdlExportExtension.
326         (ExportService): Return Port.
327         * DataContractSerializerOperationBehavior.cs : Add IWsdlExportExtension
328         interface.
329
330 2006-10-12  Atsushi Emomoto  <atsushi@ximian.com>
331
332         * ServiceDebugBehavior.cs : added Http[s]Help properties.
333
334 2006-10-04  Atsushi Emomoto  <atsushi@ximian.com>
335
336         * ServiceCredentials.cs : do nothing in ApplyDispatchBehavior().
337
338 2006-10-04  Atsushi Emomoto  <atsushi@ximian.com>
339
340         * ContractDescriptionGenerator.cs : reject async begin method whose
341           name does not begin with "Begin". (It even applies to operations
342           which has OperationContractAttribute with an explicit name(!).)
343
344 2006-10-04  Ankit Jain  <jankit@novell.com>
345
346         * ServiceAuthorizationBehavior.cs (ApplyDispatchBehavior): Remove NYI
347         exception.
348         * ServiceMetadataBehavior.cs (ApplyDispatchBehavior): Instantiate and add a
349         ServiceMetadataExtension to service host's extensions. Also, set the
350         InstanceContextProvider for endpoints with IMetadataExchange contract
351         to MexInstanceContextProvider.
352         * ServiceMetadataExtension.cs (Metadata): Add internal 'set'.
353
354 2006-10-04  Atsushi Emomoto  <atsushi@ximian.com>
355
356         * OperationDescriptionCollection.cs,
357           ContractDescriptionGenerator.cs : operation names must not conflict
358           each other.
359
360 2006-10-04  Ankit Jain  <jankit@novell.com>
361
362         * ServiceContractGenerator.cs (GenerateProxyClass): Make .ctors public.
363
364 2006-10-03  Atsushi Emomoto  <atsushi@ximian.com>
365
366         * ContractDescriptionGenerator.cs : EndBlah() must not be assigned an
367           OperationContractAttribute.
368
369 2006-09-22  Atsushi Emomoto  <atsushi@ximian.com>
370
371         * LocalServiceSecuritySettings.cs : fix Clone().
372
373 2006-09-22  Atsushi Emomoto  <atsushi@ximian.com>
374
375         * ContractDescriptionGenerator.cs : copy ProtectionLevel from attributes
376           to descriptions if required.
377
378 2006-09-22  Atsushi Emomoto  <atsushi@ximian.com>
379
380         * FaultDescription.cs, MessageDescription.cs, ContractDescription.cs,
381           MessagePartDescription.cs, OperationDescription.cs :
382           Fixed HasProtectionLevel. It is always true when ProtectionLevel is set.
383
384 2006-09-18  Ankit Jain  <jankit@novell.com>
385
386         * WsdlExporter.cs (ExportEndpoint): Throw if endpoint.Binding is null.
387         (ExportParameters):
388         (ExportTypeMessage): Reprocess the schema.      
389
390 2006-09-08  Ankit Jain  <jankit@novell.com>
391
392         * WsdlExporter.cs (ExportParameters): Split into this and ..
393         (ExportMessageBodyDescription): .. this.
394         Check for duplicate message elements.
395         (IsTypeMessage): Checks is a MessageBodyDescription has a single part of
396         type System.ServiceModel.Channels.Message
397         (ExportTypeMessage): Exports a complex type for type 
398         System.ServiceModel.Channels.Message
399
400 2006-09-07  Ankit Jain  <jankit@novell.com>
401
402         * WsdlExporter.cs (ExportedContracts): New hashtable to keep track of
403         the exported contracts.
404         (ExportContract): Throw exception if contract has already been exported.
405
406 2006-09-07  Ankit Jain  <jankit@novell.com>
407
408         * MetadataBundle.cs (MetadataSet.WriteTo): Remove WriteStartDocument
409         as suggested by Atsushi.
410
411 2006-09-07  Ankit Jain  <jankit@novell.com>
412
413         * MetadataBundle.cs (MetadataSet.WriteTo): Add WriteStartDocument.
414
415 2006-09-07  Ankit Jain  <jankit@novell.com>
416
417         * WsdlExporter.cs (ExportService): Export <service> and <port>.
418         (GetService): New.
419         (XsdExporter): New. Update code to use this instead of the 
420         field, xsd_exporter.
421         (schema_set): Remove.
422         (GeneratedXmlSchemas): Use XsdExporter.Schemas directly.
423
424 2006-09-07  Ankit Jain  <jankit@novell.com>
425
426         * WsdlExporter.cs (ExportContract): Add 'imports'.
427
428 2006-09-07  Atsushi Emomoto  <atsushi@ximian.com>
429
430         * ServiceCredentials.cs : added missing members.
431
432 2006-09-06  Ankit Jain  <jankit@novell.com>
433
434         * WsdlExporter.cs (ExportContract): Use String.Concat
435         * ContractDescriptionGenerator.cs
436         (ContractDescriptionGenerator.GetOperation): Set IsOneWay.
437         * OperationDescription.cs (OperationDescription.IsOneWay): Add an
438         internal setter.
439
440 2006-09-06  Ankit Jain  <jankit@novell.com>
441
442         * WsdlExporter.cs (WsdlExporter.ExportEndpoint): Initial implementation.
443
444 2006-09-06  Atsushi Emomoto  <atsushi@ximian.com>
445
446         * ServiceMetadataBehavior.cs : updated API to RC1.
447
448 2006-09-05  Ankit Jain  <jankit@novell.com>
449
450         * WsdlExporter.cs (WsdlExporter.ExportContract): Add Namespaces.
451
452 2006-09-05  Atsushi Emomoto  <atsushi@ximian.com>
453
454         * ServiceModelInternalConverter.cs : when a message part type is null
455           (such as void return value), supply dummy type (object).
456
457 2006-09-05  Ankit Jain  <jankit@novell.com>
458
459         * MetadataBundle.cs (MetadataSet.WriteTo): Implement.
460         * MetadataSectionSerializerBase.cs (WriteObject_ServiceDescription): Use
461         ServiceDescription.Serializer to serialize.
462
463 2006-09-05  Ankit Jain  <jankit@novell.com>
464
465         * WsdlExporter.cs (WsdlExporter.AddImport): New.
466         (WsdlExporter.GetSchemaElementForPart): Add 'schema' param.
467         (WsdlExporter.ExportContract): Update to changes.
468
469 2006-09-05  Ankit Jain  <jankit@novell.com>
470
471         * MetadataSection.cs (MetadataSection.CreateFromSchema): Implement.
472         (MetadataSection.CreateFromServiceDescription): Implement.
473         * WsdlExporter.cs (WsdlExporter.GetGeneratedMetadata): Update to use
474         new methods above.
475
476 2006-09-04  Ankit Jain  <jankit@novell.com>
477
478         * WsdlExporter.cs: Initial implementation for ExportContract.
479         * MetadataExporter.cs (GetGeneratedMetadata): Fix signature.
480         * ContractDescriptionGenerator.cs (GetMessage): Seperate Namespace and
481         Name with "/" if its not there in Namespace.
482
483 2006-08-30  Atsushi Emomoto  <atsushi@ximian.com>
484
485         * ServiceMetadataBehavior.cs : for now avoid NotImplementedException.
486         * ServiceDebugBehavior.cs : implemented AddBindingParameters() and
487           ApplyDispatchBehavior().
488         * ServiceCredentials.cs : implemented AddBindingParameters().
489
490 2006-08-28  Atsushi Emomoto  <atsushi@ximian.com>
491
492         * WSTrustMessageConverters.cs : added response reader class.
493
494 2006-08-23  Atsushi Emomoto  <atsushi@ximian.com>
495
496         * WSTrustSTSContract.cs : rewritten to not use DataContract.
497         * WSTrustMessageConverters.cs : new file.
498
499 2006-08-22  Atsushi Emomoto  <atsushi@ximian.com>
500
501         * ClientCredentials.cs :
502           CloneCore() is virtual. CreateSecurityTokenManager() is public.
503         * ServiceCredentials.cs :
504           Added secure conversation credential.
505           CreateSecurityTokenManager() is public.
506
507 2006-08-16  Atsushi Emomoto  <atsushi@ximian.com>
508
509         * WSTrustSTSContract.cs : added some more members in request type.
510           WST request and response types are renamed.
511
512 2006-08-14  Atsushi Emomoto  <atsushi@ximian.com>
513
514         * WSTrustSTSContract.cs : added internal interface for security token
515           service (STS).
516
517 2006-08-11  Atsushi Emomoto  <atsushi@ximian.com>
518
519         * ClientCredentials.cs : implement CreateSecurityTokenManager() and
520           partly AddBindingParameters().
521         * ServiceCredentials.cs : CreateSecurityTokenManager() as well.
522
523 2006-08-10  Atsushi Emomoto  <atsushi@ximian.com>
524
525         * ClientCredentials.cs : temporarily comment out NIE in 
526           ApplyClientBehavior().
527
528 2006-08-02  Atsushi Emomoto  <atsushi@ximian.com>
529
530         * MetadataSectionSerializerBase.cs : made internal, namespace fix.
531
532 2006-07-31  Ankit Jain  <jankit@novell.com>
533
534         * MetadataExchangeClient.cs (GetMetadataInternal): Use
535         MessageHeaders.MessageId instead of manually adding the header.
536         (SoapEnvelopeNamespace): Remove.
537         (AddressingNamespace): Remove.
538
539 2006-07-28  Atsushi Emomoto  <atsushi@ximian.com>
540
541         * ServiceCredentials.cs :
542           added missing IssuedTokenAuthentication property.
543
544 2006-07-27  Ankit Jain  <jankit@novell.com>
545
546         * DataContractSerializerMessageContractImporter.cs (resolveElement): Use
547         XmlSchemaSet.Compile ()
548
549 2006-07-28  Atsushi Emomoto  <atsushi@ximian.com>
550
551         * ClientCredentials.cs : initialize SupportInteractive as true.
552
553 2006-07-28  Atsushi Emomoto  <atsushi@ximian.com>
554
555         * LocalClientSecuritySettings.cs : moved to S.SM.Channels.
556
557 2006-07-27  Ankit Jain  <jankit@novell.com>
558
559         * MessagePartDescription.cs (TypeName):
560         (XmlTypeMapping): New, internal properties, used by
561         ServiceContractGenerator.
562         * DataContractSerializerMessageContractImporter.cs (ImportContract):
563         Handle a void return type.
564         (resolveElement):
565         (resolveParticle): Use XmlSchemaImporter to fill in
566         MessagePartDescription.XmlTypeMapping .
567         (GetCLRTypeName): New.
568         * ServiceContractGenerator.cs (.ctor): Set default options.
569         (GenerateServiceContractType): Support ChannelInterface.        
570         (GenerateProxyClass): Emit more .ctors
571         (GenerateChannelInterface): New.
572         (ExportInterface): Emit ServiceContractAttribute.Namespace property.
573         (ExportParameters): New. Extract code for emitting methods params from
574         AddOperationMethods & AddImplementationMethods.
575         (ExportMessages): New. Emits method params using MessageDescriptionCollection.
576         (ExportDataContract): New. Emits code for a DataContract from a XmlTypeMapping.
577         (GetXmlNamespace): New. Gets the Namespace param of XmlTypeAttribute or
578         XmlRootAttribute.
579
580 2006-07-27  Ankit Jain  <jankit@novell.com>
581
582         * MetadataResolver.cs (ResolveContracts): Move the exception handling
583         code for MetadataProxy.Get to .. 
584         * MetadataExchangeClient.cs (GetMetadataInternal): .. here.
585
586 2006-07-21  Atsushi Enomoto  <atsushi@ximian.com>
587
588         * ClientCredentials.cs : July CTP API updates.
589
590 2006-07-18  Atsushi Enomoto  <atsushi@ximian.com>
591
592         * PolicyConversionContext.cs : GetFaultBindingAssertions() argument:
593           MessageFault -> FaultDescription.
594
595 2006-07-14  Atsushi Enomoto  <atsushi@ximian.com>
596
597         * TypedMessageConverter.cs : implemented FromMessage() for
598           DataContract converter. Though it won't work right now.
599
600 2006-07-14  Atsushi Enomoto  <atsushi@ximian.com>
601
602         * ServiceModelInternalConverter.cs : It was bug #78855, and is fixed.
603         * TypedMessageConverter.cs :
604           June CTP changed to write wrapper element.
605           Default URI is http://tempuri.org/, trailing '/' was missing.
606
607 2006-07-14  Atsushi Enomoto  <atsushi@ximian.com>
608
609         * ServiceModelInternalConverter.cs :
610           The runtime errors are still there...
611
612 2006-07-14  Atsushi Enomoto  <atsushi@ximian.com>
613
614         * IContractBehavior.cs : The API became sane in June CTP.
615         * MatchAllEndpointBehavior.cs : vanished.
616
617 2006-07-14  Atsushi Enomoto  <atsushi@ximian.com>
618
619         * ServiceModelInternalConverter.cs : assembly.Save() does not seem
620           to be required anymore. Maybe it was a runtime bug.
621
622 2006-07-13  Ankit Jain  <jankit@novell.com>
623
624         * MetadataImporter.cs:
625         * WsdlImporter.cs: 
626         * DataContractSerializerMessageContractImporter.cs:
627         * MetadataResolver.cs: Update to June CTP changes.
628
629 2006-07-13  Atsushi Enomoto  <atsushi@ximian.com>
630
631         * ContractDescriptionGenerator.cs : fix async method handling. Since
632           begin methods return IAsyncResult, not the return value type, it
633           should not be used to generate MessagePartDescription.
634           OperationContractAttribute.ReplyAction should not be ignored.
635
636 2006-07-12  Atsushi Enomoto  <atsushi@ximian.com>
637
638         * WebServiceHelper.cs : comment out the entire source (unused now).
639
640 2006-07-12  Atsushi Enomoto  <atsushi@ximian.com>
641
642         * IMetadataExchange.cs : another unexpected change ;-)
643
644 2006-07-12  Atsushi Enomoto  <atsushi@ximian.com>
645
646         * IMetadataExchange.cs : take back async methods.
647
648 2006-07-12  Ankit Jain  <jankit@novell.com>
649
650         * MetadataTransferClient.cs: Renamed to .. 
651         * MetadataExchangeClient.cs: .. this. Update to June CTP changes.
652         (MetadataExchangeClient.MetadataProxy): Proxy for IMetadataExchange
653         service contract.
654         (MetadataExchangeClient.GetMetadataInternal): Move GetMetadata() code
655         here. Updated to use MetadataProxy instead of doing everything manually.
656         * MetadataSectionSerializerBase.cs: Regenerated for the updated API.
657         * MetadataReference.cs: June CTP updates. Now implements
658         IXmlSerializable.
659         * MetadataResolver.cs: Update for related changes in other classes. June
660         CTP updates pending.
661         * MetadataExchangeBindings.cs
662         (MetadataExchangeBindings.CreateMexHttpBinding): Implement.
663
664 2006-07-11  Atsushi Enomoto  <atsushi@ximian.com>
665
666         * ServiceDebugBehavior.cs : new file.
667
668 2006-07-10  Atsushi Enomoto  <atsushi@ximian.com>
669
670         * ContractDescriptionGenerator.cs : support AsyncPattern methods.
671
672 2006-07-07  Atsushi Enomoto  <atsushi@ximian.com>
673
674         * MessageContractConverter.cs, ServiceModelInternalConverter.cs :
675           renamed file from former to latter.
676
677 2006-07-06  Atsushi Enomoto  <atsushi@ximian.com>
678
679         * ServiceContractGenerator.cs : in ClientBase, InnerProxy -> Channel.
680
681 2006-07-06  Atsushi Enomoto  <atsushi@ximian.com>
682
683         * MessageContractConverter.cs : exception type changed.
684
685 2006-07-05  Atsushi Enomoto  <atsushi@ximian.com>
686
687         * ContractDescriptionGenerator.cs :
688           MessageBodyAttribute -> MessageBodyMemberAttribute.
689
690 2006-07-05  Atsushi Enomoto  <atsushi@ximian.com>
691
692         * ReflectedContractCollection.cs : removed unused file.
693
694 2006-07-05  Atsushi Enomoto  <atsushi@ximian.com>
695
696         * ContractDescription.cs, ContractDescriptionGenerator.cs :
697           some June CTP updates (SessionMode).
698
699 2006-07-04  Atsushi Enomoto  <atsushi@ximian.com>
700
701         * TypedMessageConverter.cs : June CTP update.
702
703 2006-07-04  Atsushi Enomoto  <atsushi@ximian.com>
704
705         * ViaUriBehavior.cs : renamed to ClientViaBehavior.
706           File name is also being changed.
707
708 2006-07-03  Ankit Jain  <jankit@novell.com>
709
710         * WsdlImporter.cs:
711         * MetadataImporter.cs: Update for changes in other files. (June CTP)
712
713 2006-07-03  Ankit Jain  <jankit@novell.com>
714
715         * XmlSerializerMessageContractConverter.cs: Renaming type to ..
716         * XmlSerializerMessageContractImporter.cs: .. this.
717         * DataContractSerializerMessageContractConverter.cs: Renaming type to ..
718         * DataContractSerializerMessageContractImporter.cs: .. this.
719         * IOperationContractGenerator.cs: Renaming to ..
720         * IOperationContractGenerationExtension.cs: .. this.
721         * IServiceContractGenerator.cs: Renaming to ..
722         * IServiceContractGenerationExtension.cs: .. this.
723
724         * DataContractSerializerOperationBehavior.cs:
725         * MetadataResolver.cs:
726         * MetadataSection.cs: Update to June CTP changes.
727
728         * WsdlImporter.cs:
729         * ServiceContractGenerator.cs: Update for changes in other files.
730
731         * IMetadataExchange.cs: New.
732         * MetadataExchangeBindings.cs: New.
733
734 2006-06-22  Atsushi Enomoto  <atsushi@ximian.com>
735
736         * MessageContractConverter.cs : in MessageBodyToDataContractType(),
737           support ReturnValue part as well.
738
739 2006-06-22  Atsushi Enomoto  <atsushi@ximian.com>
740
741         * ContractDescriptionGenerator.cs : extracted public method
742           GetOperationContractAttribute() from existing code.
743
744 2006-06-20  Atsushi Enomoto  <atsushi@ximian.com>
745
746         * MessageContractConverter.cs : renaming type to 
747           ServiceModelInternalConverter as well as methods. Now it holds
748           conversion from MessageBodyDescription to DataContract Type.
749         * TypedMessageConverter.cs : dependent changes from above.
750         * ContractDescriptionGenerator.cs :
751           Temporarily commented out lines that rejects service contract
752           that does not contain any operation contracts.
753           Some refactoring.
754
755 2006-06-16  Ankit Jain  <jankit@novell.com>
756
757         * MetadataSectionSerializerBase.cs: Remove debug Console.WriteLine-s.
758         * WsdlImporter.cs: Streamline .ctors
759         * MetadataImporter.cs: Likewise.
760         * MetadataResolver.cs (MetadataResolver.Resolve): Update to use
761         WSTransferGet instead of WsTransferGet.
762
763 2006-06-12  Atsushi Enomoto  <atsushi@ximian.com>
764
765         * MessageContractConverter.cs, TypedMessageConverter.cs :
766           Now it generates correct code, still emitting extra assemblies...
767
768 2006-06-12  Atsushi Enomoto  <atsushi@ximian.com>
769
770         * MessageContractConverter.cs :
771           Now it generates code (which is incorrect), spitting dummy.dll
772           everywhere you run code that uses TypedMessageConverter...
773
774 2006-06-12 Ankit Jain  <jankit@novell.com>
775
776         * MetadataSectionSerializerBase.cs: New.
777         * MetadataBundle.cs (MetadataSet.ReadFrom): Use XmlSerializer for
778         deserializing.
779         (MetadataSet.ReadXml): Use MetadataSectionSerializer to deserialize
780         MetadataSection-s.
781
782         * MetadataImporter.cs (MetadataImporter..ctor): Use a predefined list of
783         IPolicyImportExtensions if none is specified.
784         * WsdlImporter.cs (WsdlImporter.ImportAllContracts): Cache the imported contracts.
785         (WsdlImporter.ImportAllEndpoints): Implement.
786         (WsdlImporter.ImportEndpoint): Likewise.
787         (WsdlImporter..ctor): Use a predefined list of IWsdlImportExtentions if
788         none is specified.
789         * IWsdlImporter.cs (ImportContract):
790         (ImportEndpoint): Fix param names.
791         * WsdlEndpointConversionContext.cs: Update .ctor, and implement
792         properties.
793
794         * ServiceContractGenerator.cs: Update to not depend on
795         contractDescription.ContractType as it can be null.
796         * DataContractSerializerMessageContractConverter.cs (.resolveParticle):
797         Add 'depth' param.
798
799 2006-06-12  Atsushi Enomoto  <atsushi@ximian.com>
800         * TypedMessageConverter.cs, MessageContractConverter.cs :
801           ongoing implementation using Mono.CodeGeneration.
802
803 2006-05-29  Atsushi Enomoto  <atsushi@ximian.com>
804
805         * ServiceCredentials.cs, ClientCredentials.cs,
806           ServiceMetadataBehavior.cs : moved from Sys.SvcModel.
807
808 2006-05-29  Atsushi Enomoto  <atsushi@ximian.com>
809
810         * TypedMessageConverter.cs : some ToMessage() code.
811         * MessageContractConverter.cs,
812         * ContractDescriptionGenerator.cs : some code to generate contract 
813           type from an arbitrary Type.
814
815 2006-04-27  Ankit Jain  <jankit@novell.com>
816
817         * WsdlImporter.cs:
818         * DataContractSerializerMessageContractConverter.cs:
819         * MetadataImporter.cs:
820         * WsdlContractConversionContext.cs: Change member field names from
821         camelCase to underscore_names.
822
823 2006-04-26  Ankit Jain  <jankit@novell.com>
824
825         * MetadataBundle.cs (MetadataSet.ReadFrom): Initial implementation.
826         (MetadataSet.Attributes): Add missing property.
827         * MetadataReference.cs: Fix to match Feb CTP.
828         * MetadataResolver.cs: Likewise.
829         * MetadataSection.cs: Likewise.
830
831         * MetadataImporter.cs (PolicyExtensions): Implement property.
832         * MetadataTransferClient.cs (GetMetadata): Initial implementation.
833         * WsdlImporter.cs: Initial implementation.
834
835         * OperationDescription.cs (.ctor): Set is_initiating = true.
836         * MessageDescription.cs (.ctor): 'action' parameter can be null or
837         zero-length.
838         * MessageBodyDescription.cs (Parts): Add internal set method.
839
840         * WsdlContractConversionContext.cs (Contract): Implement property.
841         (WsdlPortType): Likewise.
842         * DataContractSerializerMessageContractConverter.cs (ImportContract):
843         Initial implementation.
844
845         * WebServiceHelper.cs: Copied from
846         mcs/class/System.Web.Services/System.Web.Services.Protocols
847         
848 2006-04-14  Atsushi Enomoto  <atsushi@ximian.com>
849
850         * ContractDescriptionGenerator.cs : it is internal.
851         * ServiceContractGenerator.cs : minimum implementation for
852           GenerateServiceContractType() for "client-proxy-gen" tool.
853
854 2006-04-05  Atsushi Enomoto  <atsushi@ximian.com>
855
856         * ContractDescriptionGenerator.cs : reject operation-less contract.
857
858 2006-04-05  Atsushi Enomoto  <atsushi@ximian.com>
859
860         * ContractDescriptionGenerator.cs : The target contract type should be
861           the interface, not the implementation type.
862
863 2006-03-17  Atsushi Enomoto  <atsushi@ximian.com>
864
865         * ContractDescription.cs : extracted GetContract() implementation
866           part into ContractDescriptionGenerator.cs.
867         * ContractDescriptionGenerator.cs : new file.
868
869 2006-03-14  Atsushi Enomoto  <atsushi@ximian.com>
870
871         * ServiceEndpointCollection.cs WsdlImporter.cs
872           PolicyConversionContext.cs OperationDescriptionCollection.cs
873           PolicyAssertionCollection.cs MessageDescriptionCollection.cs :
874           couple of API fixes.
875
876 2006-02-23  Atsushi Enomoto  <atsushi@ximian.com>
877
878         * PeerSecurityBehavior.cs ServiceCredentials.cs
879           ServiceAuthorizationBehavior.cs :
880           Dependent fixes for System.IdentityModel reorgainzation.
881
882 2006-02-23  Atsushi Enomoto  <atsushi@ximian.com>
883
884         * EndpointBehaviorCollection.cs ChannelDescription.cs
885           MessageHeaderDescriptionCollection.cs ServiceCredentials.cs
886           FaultDescription.cs TypedMessageConverter.cs
887           AspNetIntegrationRequirementsAttribute.cs
888           MessageDescription.cs MessagePartDescriptionCollection.cs
889           OperationBehaviorCollection.cs ListenUriBehavior.cs
890           ServiceAuthorizationBehavior.cs ChannelBehaviorCollection.cs
891           MessageBodyDescription.cs IContractBehavior.cs
892           MessagePropertyDescriptionCollection.cs
893           ContractBehaviorCollection.cs BehaviorCollection.cs
894           ServiceEndpointCollection.cs ContractDescription.cs
895           XmlFormatterOperationBehavior.cs FaultDescriptionCollection.cs
896           ServiceSecurityAuditBehavior.cs IChannelBehavior.cs
897           ServiceDescription.cs OperationBehaviorAttribute.cs
898           MatchAllEndpointBehavior.cs IEndpointBehavior.cs
899           ServiceMetadataBehavior.cs XmlSerializerOperationBehavior.cs
900           ServiceBehaviorCollection.cs HostedBindingBehavior.cs
901           MessageHeaderDescription.cs ViaUriBehavior.cs
902           MessagePartDescription.cs OperationDescriptionCollection.cs
903           IServiceBehavior.cs IOperationBehavior.cs
904           MessagePropertyDescription.cs MustUnderstandBehavior.cs
905           ServiceEndpoint.cs PeerSecurityBehavior.cs
906           OperationDescription.cs MessageDescriptionCollection.cs
907           ReflectedContractCollection.cs :
908           moved from System.ServiceModel due to the API changes.
909
910 2006-02-23  Atsushi Enomoto  <atsushi@ximian.com>
911
912         * ChannelBuildContext.cs ContractExportBehavior.cs
913           IMessageEncodingBindingElement.cs IOperationContractGenerator.cs
914           IPolicyImporter.cs IServiceContractGenerator.cs
915           IStreamUpgradeBindingElement.cs ITransportTokenAssertionProvider.cs
916           IWsdlExporter.cs IWsdlImporter.cs InvalidChannelBindingException.cs
917           IpolicyExporter.cs MessageEncodingBindingElementConverter.cs
918           MetadataConversionError.cs MetadataExporter.cs MetadataImporter.cs
919           MetadataResolver.cs OperationContractGenerationContext.cs
920           PolicyConversionContext.cs ReliableSessionBindingElementConverter.cs
921           SecurityBindingElementConverter.cs
922           ServiceContractGenerationContext.cs ServiceContractGenerator.cs
923           ServiceThrottlingBehavior.cs
924           TransactionFlowBindingElementConverter.cs
925           TransportBindingElementConverter.cs WsdlContractConversionContext.cs
926           WsdlEndpointConversionContext.cs WsdlExporter.cs WsdlImporter.cs
927           XmlFormatterMessageContractConverter.cs
928           XmlSerializerMessageContractConverter.cs :
929           Feb. CTP API changes - chapter 1.
930
931 2006-02-14  Atsushi Enomoto  <atsushi@ximian.com>
932
933         * ServiceThrottlingBehavior.cs : ServiceThrottle was moved.
934
935 2006-01-26  Atsushi Enomoto  <atsushi@ximian.com>
936
937         * ChannelBuildContext.cs :
938           All builder methods now "reset" UnhandledBindingElements after
939           the outermost processing.
940
941 2006-01-26  Atsushi Enomoto  <atsushi@ximian.com>
942
943         * ChannelBuildContext.cs :
944           Use BindingElement's BuildBlahFactory directly. Implemented Clone().
945         * ChannelLoader.cs : removed obsolete type.
946
947 2005-11-21  Atsushi Enomoto  <atsushi@ximian.com>
948
949         * XmlSerializerMessageContractConverter.cs,
950           MessageEncodingBindingElementConverter.cs,
951           XmlFormatterMessageContractConverter.cs : new files in Nov. CTP.
952
953 2005-11-21  Atsushi Enomoto  <atsushi@ximian.com>
954
955         * ServiceLoader.cs, TypeLoader.cs : removed.
956
957 2005-11-21  Atsushi Enomoto  <atsushi@ximian.com>
958
959         * ChannelBuildContext.cs : IListener/-Factory vanished in Nov. CTP.
960
961 2005-11-20  Atsushi Enomoto  <atsushi@ximian.com>
962
963         * IWsdlExporter.cs, InvalidChannelBindingException.cs,
964           MetadataImporter.cs, IWsdlImporter.cs, IPolicyImporter.cs,
965           MetadataConversionError.cs, IpolicyExporter.cs,
966           MetadataExporter.cs, PolicyConversionContext.cs :
967           New files in beta2
968         * ITypeResolver.cs, WsdlBindingConversionContext.cs, 
969           IWsdlBindingElementConverter.cs,
970           WsdlOperationBindingCoversionContext.cs, 
971           WsdlMessageBindingConversionContext.cs,
972           WsdlMessageConversionContext.cs, IWsdlBindingConverter.cs,
973           IWsdlContractConverter.cs, IWsdlEndpointConverter.cs,
974           WsdlConversionContext.cs, WsdlConverters.cs,
975           InvalidSettingsException.cs, WsdlBindingConverterBase.cs,
976           WsdlConversionError.cs, CustomBindingConverter.cs, 
977           WsdlOperationConversionContext.cs :
978           Removed in beta2
979         * ReliableSessionBindingElementConverter.cs, ServiceLoader.cs,
980           TransportBindingElementConverter.cs, ContractExportBehavior.cs,
981           ChannelLoader.cs, WsdlExporter.cs, MetadataResolver.cs,
982           SecurityBindingElementConverter.cs,
983           WsdlContractConversionContext.cs,
984           WsdlEndpointConversionContext.cs, WsdlImporter.cs,
985           ServiceThrottlingBehavior.cs, ServiceContractGenerator.cs,
986           TypeLoader.cs, TransactionFlowBindingElementConverter.cs :
987           Updated signatures to beta2.
988
989 2005-11-20  Atsushi Enomoto  <atsushi@ximian.com>
990
991         * ChannelBuildContext.cs : was seeing
992           http://savas.parastatidis.name/2005/04/08/4b0b99b1-92c6-4442-ab2e-4c4951009ef4.aspx
993           and modified channel build logic a bit.
994
995 2005-10-31  Atsushi Enomoto  <atsushi@ximian.com>
996
997         * ServiceThrottlingBehavior.cs : implemented ApplyBehavior().
998
999 2005-10-26  Atsushi Enomoto  <atsushi@ximian.com>
1000
1001         * ChannelBuildContext.cs : added DequeueBindingElement() for
1002           BindingElements' internal use. It becomes UnhandledBindingElements.
1003
1004 2005-10-26  Atsushi Enomoto  <atsushi@ximian.com>
1005
1006         * ChannelBuildContext.cs : implemented BuildListenerFactory().
1007
1008 2005-10-26  Atsushi Enomoto  <atsushi@ximian.com>
1009
1010         * ChannelBuildContext.cs :
1011           several API fixes detected by improved corcompare.
1012
1013 2005-10-25  Atsushi Enomoto  <atsushi@ximian.com>
1014
1015         * ChannelBuildContext.cs : added missing generic class constraint.
1016
1017 2005-10-20  Atsushi Enomoto  <atsushi@ximian.com>
1018
1019         * ReliableSessionBindingElementConverter.cs,
1020           TransportBindingElementConverter.cs, ContractExportBehavior.cs,
1021           SecurityBindingElementConverter.cs,
1022           OperationContractGenerationContext.cs,
1023           ServiceContractGenerationContext.cs, InvalidSettingsException.cs
1024           WsdlBindingConverterBase.cs, WsdlConversionError.cs,
1025           CustomBindingConverter.cs, ServiceContractGenerator.cs,
1026           TransactionFlowBindingElementConverter.cs :
1027           added all missing bits.
1028         * Dummy.cs : finally removed.
1029         * ServiceThrottlingBehavior.cs, WsdlBindingConversionContext.cs :
1030           tiny API fix.
1031
1032 2005-10-13  Atsushi Enomoto  <atsushi@ximian.com>
1033
1034         * ServiceLoader.cs : serviceType is moved to ServiceDescription.
1035
1036 2005-10-12  Atsushi Enomoto  <atsushi@ximian.com>
1037
1038         * ServiceLoader.cs, TypeLoader.cs : implemented some.
1039
1040 2005-10-12  Atsushi Enomoto  <atsushi@ximian.com>
1041
1042         * IWsdlEndpointConverter.cs, IOperationContractGenerator.cs,
1043           IServiceContractGenerator.cs, WsdlBindingConversionContext.cs,
1044           IWsdlBindingElementConverter.cs, IStreamUpgradeBindingElement.cs,
1045           WsdlContractConversionContext.cs,
1046           WsdlOperationBindingCoversionContext.cs,
1047           WsdlMessageBindingConversionContext.cs,
1048           WsdlEndpointConversionContext.cs, WsdlMessageConversionContext.cs,
1049           IWsdlBindingConverter.cs, WsdlOperationConversionContext.cs,
1050           IWsdlContractConverter.cs, ITransportTokenAssertionProvider.cs:
1051           new files for wsdl importer.
1052         * Dummy.cs : removed above.
1053         * WsdlConversionContext.cs, IMessageEncodingBindingElement.cs :
1054           tiny API fixes.
1055
1056 2005-10-11  Atsushi Enomoto  <atsushi@ximian.com>
1057
1058         * IMessageEncodingBindingElement.cs : new file.
1059         * Dummy.cs : removed above.
1060
1061 2005-10-09  Atsushi Enomoto  <atsushi@ximian.com>
1062
1063         * ChannelBuilderContext.cs : new file.
1064         * Dummy.cs : removed above.
1065
1066 2005-09-28  Atsushi Enomoto  <atsushi@ximian.com>
1067
1068         * ServiceThrottlingBehavior.cs : moved from sys.ServiceModel dir.
1069
1070 2005-09-28  Atsushi Enomoto  <atsushi@ximian.com>
1071
1072         * ITypeResolver.cs, ChannelLoader.cs, ServiceLoader.cs,
1073           TypeLoader.cs : new files.
1074         * Dummy.cs : removed those classes added above.