more internal namespace moving.
[mono.git] / mcs / class / System.ServiceModel / System.ServiceModel.Dispatcher / ChangeLog
1 2010-07-12  Atsushi Enomoto  <atsushi@ximian.com>
2
3         * SecurityHandler.cs : add new using. Though this class will vanish.
4
5 2010-07-12  Atsushi Enomoto  <atsushi@ximian.com>
6
7         * ChannelDispatcher.cs : apply ErrorHandlers to IInputChannel too.
8
9 2010-07-09  Atsushi Enomoto  <atsushi@ximian.com>
10
11         * PostReceiveRequestHandler.cs : don't replace correctly passed-by-
12           reference Message with wrong, consumed Message.
13
14 2010-07-09  Atsushi Enomoto  <atsushi@ximian.com>
15
16         * ChannelDispatcher.cs : do not swallow exception during
17           RequestContext.get_RequestMessage() and thus return SOAP Fault for
18           MessageSecurityException to the client.
19
20 2010-07-08  Atsushi Enomoto  <atsushi@ximian.com>
21
22         * ChannelDispatcher.cs : support ErrorHandlers.
23
24 2010-07-05  Atsushi Enomoto  <atsushi@ximian.com>
25
26         * ChannelDispatcher.cs :
27           moved IChannelDispatcherBoundListener from HttpChannelListener.cs.
28
29 2010-07-02  Atsushi Enomoto  <atsushi@ximian.com>
30
31         * MessageProcessingContext.cs : update possibly-updated ReplyMessage
32           to send, by message inspectors. Fix by Clovis Ribeiro, should fix
33           bug #619534.
34
35 2010-06-24  Atsushi Enomoto  <atsushi@ximian.com>
36
37         * ChannelDispatcher.cs : enable service throttling again.
38           This time Http(Listener), ASP.NET and TCP listeners all work.
39
40 2010-06-21  Atsushi Enomoto  <atsushi@ximian.com>
41
42         * ChannelDispatcher.cs : raise an error if IChannelListener is
43           already opened when it's opening.
44
45 2010-06-21  Atsushi Enomoto  <atsushi@ximian.com>
46
47         * ServiceThrottle.cs : take ChannelDispatcher to validate setters.
48
49 2010-06-17  Atsushi Enomoto  <atsushi@ximian.com>
50
51         * ChannelDispatcher.cs : add simple bool field to mark for mex channel.
52
53 2010-06-17  Atsushi Enomoto  <atsushi@ximian.com>
54
55         * ChannelDispatcher.cs : MessageVersion check is moved to
56           ServiceHostBase.
57
58 2010-06-14  Atsushi Enomoto  <atsushi@ximian.com>
59
60         * OperationInvokerHandler.cs, MessageProcessingContext.cs :
61           ChannelDispatcher may be null, so check its availability before
62           using it. Don't use it, when possible.
63         * DispatchOperation.cs : remove unused member.
64
65 2010-06-04  Atsushi Enomoto  <atsushi@ximian.com>
66
67         * EndpointDispatcher.cs, BaseMessagesFormatter.cs:
68           Now MessageDescription.Direction is differentiated from "IsRequest"
69           property, to precisely identify request/reply in callbacks. Also
70           now we don't have to create extraneous ContractDescription for
71           callbacks.
72
73 2010-06-03  Atsushi Enomoto  <atsushi@ximian.com>
74
75         * EndpointDispatcher.cs, DispatchRuntime.cs, ClientRuntime.cs :
76           now Callback[Dispatch|Client]Runtime properties are always filled
77           so that users can configure the callback runtimes (not sure such
78           configured runtimes work fine yet, but it is a required step).
79         * InputOrReplyRequestProcessor.cs : instead of HasCallbackRuntime
80           hack, use CallbackClientRuntime.CallbackContractType for checking
81           callback existence.
82
83 2010-05-28  Atsushi Enomoto  <atsushi@ximian.com>
84
85         * ClientOperation.cs, DispatchOperation.cs : remove extra fields.
86
87 2010-05-28  Atsushi Enomoto  <atsushi@ximian.com>
88
89         * ClientOperation.cs : do the same for client side too.
90
91 2010-05-28  Atsushi Enomoto  <atsushi@ximian.com>
92
93         * DispatchOperation.cs : on callback channels ChannelDispatcher is
94           not available. Wait for something like ClientRuntime.ChannelFactory.
95
96 2010-05-28  Atsushi Enomoto  <atsushi@ximian.com>
97
98         * EndpointDispatcher.cs : some comments.
99         * DispatchOperation.cs : remove on-the-fly dependency on 
100           OperationDescription. Add immutable check on each property.
101
102 2010-05-27  Atsushi Enomoto  <atsushi@ximian.com>
103
104         * EndpointDispatcher.cs : fill CallbackDispatchRuntime. Add some
105           FIXME comments for ongoing fixes.
106
107 2010-05-26  Atsushi Enomoto  <atsushi@ximian.com>
108
109         * OperationInvokerHandler.cs : assign RelatesTo header item here.
110
111 2010-05-21  Atsushi Enomoto  <atsushi@ximian.com>
112
113         * ChannelDispatcher.cs : disable slottling again :( It still fails
114           to process concurrent requests if there is service metadata channel
115           and MaxConcurrentSessions > 1 on non-ASP.NET channels.
116
117 2010-05-21  Atsushi Enomoto  <atsushi@ximian.com>
118
119         * ChannelDispatcher.cs : enable throttling again. Though issues
120           regarding parallel request is not here (multiple dispatchers
121           can accept a channels for each), and HTTP channels do not accept
122           more than one channel at a time anyways.
123
124 2010-04-28  Atsushi Enomoto  <atsushi@ximian.com>
125
126         * ChannelDispatcher.cs : add workaround to set ChannelDispatcher
127           to IChannelListener. Avoid null ChannelDispatcher in http listener.
128
129 2010-04-20  Atsushi Enomoto  <atsushi@ximian.com>
130
131         * OperationInvokerHandler.cs : workaround NRE issue in AsyncCallTest.
132           The original code was worse than this workaround.
133
134 2010-04-05  Atsushi Enomoto  <atsushi@ximian.com>
135
136         * EndpointAddressMessageFilter.cs : check null arg. Return false for
137           no To header case and do not result in NRE.f
138
139 2010-04-05  Atsushi Enomoto  <atsushi@ximian.com>
140
141         * BaseMessagesFormatter.cs : hasParameter check is incorrectly
142           restrictive to reject some kinds of pairs.
143
144 2010-04-02  Atsushi Enomoto  <atsushi@ximian.com>
145
146         * FaultContractInfo.cs : add serializer property.
147
148 2010-04-02  Atsushi Enomoto  <atsushi@ximian.com>
149
150         * ClientOperation.cs : do not automatically fill FaultContractInfos.
151
152 2010-04-02  Atsushi Enomoto  <atsushi@ximian.com>
153
154         * OperationInvokerHandler.cs : implement FaultContractInfos support.
155         * ErrorProcessingHandler.cs : update comment. It is not relevant.
156
157 2010-04-02  Atsushi Enomoto  <atsushi@ximian.com>
158
159         * EndpointDispatcher.cs : fill FaultContractInfos.
160         * DispatchOperation.cs : do not fill them dynamically/automatically.
161         * ErrorProcessingHandler.cs : added some FIXME notes.
162
163 2010-03-30  Atsushi Enomoto  <atsushi@ximian.com>
164
165         * ChannelDispatcher.cs : differentiate EndpointNotFound and
166           ActionNotSupported so that FaultConverter can create appropriate
167           fault messages. Removed extra filter condition on null To item.
168           And create fault messages on *any* server side error, do not let
169           request client infinitely wait for the response until timeout.
170
171           (RunDestinationUnreachableTest() is still not working but it works
172           when it is SOAP 1.2.)
173
174 2010-03-30  Atsushi Enomoto  <atsushi@ximian.com>
175
176         * ChannelDispatcher.cs : for faults, use fault namespace, not that of
177           ReplyAction. Added FIXME comment regarding dispatcher.
178
179 2010-03-25  Atsushi Enomoto  <atsushi@ximian.com>
180
181         * OperationInvokerHandler.cs : removed unused code.
182
183 2010-03-24  Atsushi Enomoto  <atsushi@ximian.com>
184
185         * ChannelDispatcher.cs : return EndpointDispatcher at initializing
186           for internal use. Add some locks. Patch by Matt Dargavel.
187
188 2010-03-24  Atsushi Enomoto  <atsushi@ximian.com>
189
190         * ChannelDispatcher.cs : fix wrong method call in open_delegate.
191           Patch by Matt Dargavel.
192
193 2010-03-24  Atsushi Enomoto  <atsushi@ximian.com>
194
195         * ChannelDispatcher.cs : give the actual exception message instead
196           of "error occured".
197
198 2010-03-18  Atsushi Enomoto  <atsushi@ximian.com>
199
200         * XPathMessageContext.cs : implement.
201         * XPathMessageFilterTable.cs : add some missing overloads.
202
203 2010-02-26  Atsushi Enomoto  <atsushi@ximian.com>
204
205         * InputOrReplyRequestProcessor.cs : now ServiceRuntimeChannel is
206           moved to fake public namespace.
207
208 2010-02-18  Atsushi Enomoto  <atsushi@ximian.com>
209
210         * ChannelDispatcher.cs : revert previous change - it could result
211           in blocking some threads and block nunit completion.
212
213 2010-02-04  Atsushi Enomoto  <atsushi@ximian.com>
214
215         * ChannelDispatcher.cs : now I can enable service throttling to
216           handle more than one concurrent channels as ASP.NET reply channel
217           got fixed.
218
219 2010-01-25  Atsushi Enomoto  <atsushi@ximian.com>
220
221         * ChannelDispatcher.cs : actually instance context provider could be
222           null through the entire service run.
223
224           Fixed all current nunit failures!
225
226 2010-01-22  Atsushi Enomoto  <atsushi@ximian.com>
227
228         * ChannelDispatcher.cs : do not try to iterate channel acceptor when
229           it is being closed.
230
231 2010-01-19  Atsushi Enomoto  <atsushi@ximian.com>
232
233         * ChannelDispatcher.cs : another error audit.
234
235 2010-01-13  Atsushi Enomoto  <atsushi@ximian.com>
236
237         * FaultContractInfo.cs : implement.
238         * DispatchOperation.cs, ClientOperation.cs: fill Faults.
239
240 2010-01-08  Atsushi Enomoto  <atsushi@ximian.com>
241
242         * EndpointDispatcher.cs, InputOrReplyRequestProcessor.cs :
243           Pass service type to correctly retrieve ServiceContractAttribute
244           from the service type, not callback type.
245
246 2010-01-07  Atsushi Enomoto  <atsushi@ximian.com>
247
248         * ChannelDispatcher.cs : make sure to unlock channel acceptor wait
249           handle when the delegated method resulted in an error.
250
251 2009-12-26  Atsushi Enomoto  <atsushi@ximian.com>
252
253         * ChannelDispatcher.cs : close such channels that failed to receive
254           request or input.
255
256 2009-12-26  Atsushi Enomoto  <atsushi@ximian.com>
257
258         * DispatchRuntime.cs : shortened code and scattered monotodos.
259
260 2009-12-10  Atsushi Enomoto  <atsushi@ximian.com>
261
262         * OperationInvokerHandler.cs : fix async operation handling. Since
263           the entire handler chain is designed to be in synchronous, one
264           single handler must not leave its work incomplete (async). Just
265           wait for the async process completion within the handler.
266
267 2009-12-07  Atsushi Enomoto  <atsushi@ximian.com>
268
269         * ChannelDispatcher.cs : fix regression; ServiceBehaviorAttribute
270           could be set explicitly null.
271
272 2009-12-07  Atsushi Enomoto  <atsushi@ximian.com>
273
274         * ChannelDispatcher.cs : handle AddressFilterMode (.Any only yet).
275         * OperationInvokerHandler.cs : fix wrong IAsyncResult use.
276
277 2009-12-07  Atsushi Enomoto  <atsushi@ximian.com>
278
279         * InstanceBehavior.cs : allow nonpublic instance.
280         * DefaultOperationInvoker.cs : do use IsSynchronous correctly.
281
282 2009-10-22  Atsushi Enomoto  <atsushi@ximian.com>
283
284         * ChannelDispatcher.cs : disable concurrent channel acceptance
285           until it gets working fine.
286
287 2009-10-16  Atsushi Enomoto  <atsushi@ximian.com>
288
289         * ChannelDispatcher.cs : fix warnings.
290
291 2009-10-16  Atsushi Enomoto  <atsushi@ximian.com>
292
293         * ClientOperation.cs, ClientRuntime.cs : another couple of changes
294           are required to not use non-SL types.
295
296 2009-10-16  Atsushi Enomoto  <atsushi@ximian.com>
297
298         * ClientRuntime.cs : enable Operations property on monotouch.
299           Hopefully it will enable us to build WebHttpBinding.
300
301 2009-10-09  Atsushi Enomoto  <atsushi@ximian.com>
302
303          * ChannelDispatcher.cs : OnOpened/OnOpening constraints related
304            changes were required here too. Actually it simplified code.
305
306 2009-10-06  Atsushi Enomoto  <atsushi@ximian.com>
307
308         * OperationInvokerHandler.cs : a bit more explaining message.
309
310 2009-10-05  Atsushi Enomoto  <atsushi@ximian.com>
311
312         * ChannelDispatcher.cs : make sure to close, *and* abort channels
313           in case they failed to close. Also consider close timeouts.
314           Rename a field to make less confusing.
315
316 2009-09-17  Atsushi Enomoto  <atsushi@ximian.com>
317
318         * ChannelDispatcher.cs, EndpointDispatcher.cs :
319           when an EndpointDispatcher is added to ChannelDispatcher, its
320           ChannelDispatcher property is automatically filled. To do this,
321           create a derived collection type for Endpoints (that's what .NET
322           does). Remove extra InitializeEndpoint() argument.
323
324 2009-09-17  Atsushi Enomoto  <atsushi@ximian.com>
325
326         * OperationInvokerHandler.cs : make error message a bit verbose.
327
328 2009-09-16  Atsushi Enomoto  <atsushi@ximian.com>
329
330         * ChannelDispatcher.cs : make sure to close the request context,
331           some channels such as http keeps opening it. Patch by Levi Bard.
332           Fixed bug #533776.
333
334 2009-09-14  Atsushi Enomoto  <atsushi@ximian.com>
335
336         * ChannelDispatcher.cs : do not try to wait for channel closer
337           handle when the loop is not started yet. This fixes lengthy wait
338           in the nunit tests.
339
340 2009-09-11  Atsushi Enomoto  <atsushi@ximian.com>
341
342         * EndpointDispatcher.cs : AddressFilter is always non-null.
343         * DispatchRuntime.cs : CallbackClientRuntime seems to be created even
344           for non-callback dispatchers. Fixing this also results in fixes in
345           couple of nunit regressions.
346         * InputOrReplyRequestProcessor.cs : the change above required fix
347           here too (it has null check).
348
349 2009-09-11  Atsushi Enomoto  <atsushi@ximian.com>
350
351         * BaseMessagesFormatter.cs, DefaultOperationInvoker.cs:
352           Fix the crash that ref parameter in contract methods caused.
353
354 2009-09-04  Atsushi Enomoto  <atsushi@ximian.com>
355
356         * OperationInvokerHandler.cs, ReplyHandler.cs :
357           - Eliminate ReplyHandler use. What is does is simple reply, while
358             it brings inconsistency between sync and async models.
359             What reply handler used to do are now integrated.
360           - Support ErrorHandlers and InputSessionShutdownHandlers.
361             Actually ErrorHandlers were processed at wrong place and they
362             weren't called where they are expected.
363         * InputOrReplyRequestProcessor.cs : hence eliminated ReplyHandler.
364         * BaseRequestProcessor.cs : add FIXME notes on ErrorHandlers.
365
366 2009-09-04  Atsushi Enomoto  <atsushi@ximian.com>
367
368         * ChannelDispatcher.cs : remove obsoleted method.
369
370 2009-09-02  Atsushi Enomoto  <atsushi@ximian.com>
371
372         * BaseMessagesFormatter.cs :
373           implement XmlBodyWriter.OnCreateBufferedCopy().
374
375 2009-08-24  Atsushi Enomoto  <atsushi@ximian.com>
376
377         * CallbackInstanceContextProvider.cs : new instance context provider
378           used by duplex client dispatcher.
379
380 2009-08-24  Atsushi Enomoto  <atsushi@ximian.com>
381
382         * SecurityHandler.cs : skip callback duplex blocker.
383
384 2009-08-24  Atsushi Enomoto  <atsushi@ximian.com>
385
386         * EndpointDispatcher.cs, ChannelDispatcher.cs : differentiate
387           service dispatch and callback client dispatch at initialization.
388
389 2009-08-21  Atsushi Enomoto  <atsushi@ximian.com>
390
391         * ChannelDispatcher.cs : also made reference to host optional.
392
393 2009-08-21  Atsushi Enomoto  <atsushi@ximian.com>
394
395         * ChannelDispatcher.cs : isolated loop manager class from parent,
396           as well as moved some code from parent.
397
398 2009-08-21  Atsushi Enomoto  <atsushi@ximian.com>
399
400         * ChannelDispatcherCollection.cs : remove extra members.
401
402 2009-08-21  Atsushi Enomoto  <atsushi@ximian.com>
403
404         * ChannelDispatcher.cs, EndpointDispatcher.cs :
405           moved some initialization code from ServiceHostBase, to start
406           reducing dependencies on ServiceHostBase.
407
408 2009-08-20  Atsushi Enomoto  <atsushi@ximian.com>
409
410         * ChannelDispatcher.cs : handle unknown message in host event.
411
412 2009-08-17  Atsushi Enomoto  <atsushi@ximian.com>
413
414         * EndpointDispatcher.cs : do not try to create wrong filter.
415
416 2009-08-14  Atsushi Enomoto  <atsushi@ximian.com>
417
418         * ChannelDispatcher.cs : EndpointNotFoundException message could
419           be a bit kindful.
420
421 2009-08-11  Atsushi Enomoto  <atsushi@ximian.com>
422
423         * IOperationInvoker.cs : fix interface.
424         * DefaultOperationInvoker.cs : refresh implementation of the above.
425         * BaseMessagesFormatter.cs, OperationInvokerHandler.cs :
426           dependent changes for above.
427
428 2009-08-07  Atsushi Enomoto  <atsushi@ximian.com>
429
430         * InputOrReplyRequestProcessor.cs : now it could return an instance
431           of dynamically generated proxy over DuplexServiceRuntimeChannel.
432
433 2009-08-07  Atsushi Enomoto  <atsushi@ximian.com>
434
435         * ClientRuntime.cs : oops, it should have been committed at a time.
436           Change .ctor() args. Make some properties auto.
437
438 2009-08-07  Atsushi Enomoto  <atsushi@ximian.com>
439
440         * DispatchRuntime.cs : callback runtime is set later.
441
442 2009-08-06  Atsushi Enomoto  <atsushi@ximian.com>
443
444         * ClientRuntime.cs :
445           .ctor() just needs contract. Fill some properties.
446
447 2009-08-04  Atsushi Enomoto  <atsushi@ximian.com>
448
449         * ReplyHandler.cs : there is better way to check IsOneWay.
450
451 2009-08-04  Atsushi Enomoto  <atsushi@ximian.com>
452
453         * OperationInvokerHandler.cs : One way operation has no reply.
454         * ReplyHandler.cs : ditto.
455
456 2009-07-31  Atsushi Enomoto  <atsushi@ximian.com>
457
458         * ChannelDispatcher.cs : raise error on multiple endpoint match
459           (documented at EndpointDispatcher.FilterPriority).
460
461 2009-07-28  Atsushi Enomoto  <atsushi@ximian.com>
462
463         * ChannelDispatcher.cs : move Open() inside acceptor lock, so that
464           the channel does not have to be fired Receive() before Open().
465
466 2009-07-14  Atsushi Enomoto  <atsushi@ximian.com>
467
468         * DispatchRuntime.cs : add ValidateMustUnderstand.
469         * DispatchOperation.cs : add AutoDisposeParameters.
470
471 2009-07-02  Atsushi Enomoto  <atsushi@ximian.com>
472
473         * ChannelDispatcher.cs : when service instance is provided to the
474           ServiceHost, do not reject Type-less state.
475
476 2009-06-29  Atsushi Enomoto  <atsushi@ximian.com>
477
478         * ChannelDispatcher.cs : do not iterate extra channel acceptance
479           and hence close channels a bit more gracefully.
480
481 2009-06-25  Atsushi Enomoto  <atsushi@ximian.com>
482
483         * ChannelDispatcher.cs : instead of discarding channels, reuse them
484           unless it is closed by session manager (session manager does not
485           work, so channels are not actually closed automatically yet).
486
487 2009-06-25  Atsushi Enomoto  <atsushi@ximian.com>
488
489         * SessionInstanceContextProvider.cs : new instance context provider.
490
491 2009-06-23  Atsushi Enomoto  <atsushi@ximian.com>
492
493         * DispatchRuntime.cs : do not fill InstanceContextProvider here.
494         * ChannelDispatcher.cs : do it here instead.
495         * ChannelDispatcherCollection.cs : remove TODOs.
496
497 2009-06-23  Atsushi Enomoto  <atsushi@ximian.com>
498
499         * InputOrReplyRequestProcessor.cs : bogus initialization.
500
501 2009-06-18  Atsushi Enomoto  <atsushi@ximian.com>
502
503         * ChannelDispatcher.cs : significant changes:
504           - simplified Open/Close async.
505           - implement OnAbort().
506           - create ServiceThrottle when it is null.
507           - Channels are accepted as much as the throttle allows, and
508             process requests when accepted an input (now it holds more than
509             one channel).
510           - Support ReceiveSynchronously and use Begin/EndAcceptChannel()
511             for async pattern.
512           - Close all channels and the listener when it is closed.
513           - Cosmetic simplification on channel acceptor delegate creation.
514
515 2009-06-09  Atsushi Enomoto  <atsushi@ximian.com>
516
517         * ChannelDispatcher.cs : avoid NRE (actually it should eliminate
518           Thread.Abort()). Added some comments on throttling.
519
520 2009-06-09  Atsushi Enomoto  <atsushi@ximian.com>
521
522         * ServiceThrottle.cs : implement.
523
524 2009-06-08  Atsushi Enomoto  <atsushi@ximian.com>
525
526         * ChannelDispatcher.cs :
527           Add call to base (see CommunicationObject change).
528
529 2009-06-01  Atsushi Enomoto  <atsushi@ximian.com>
530
531         * ChannelDispatcher.cs : handle more errors gracefully.
532
533 2009-05-18  Atsushi Enomoto  <atsushi@ximian.com>
534
535         * ErrorProcessingHandler.cs, InputOrReplyRequestProcessor.cs :
536           they also premise request-reply channel and broke duplex channels.
537
538 2009-05-13  Atsushi Enomoto  <atsushi@ximian.com>
539
540         * ChannelDispatcher.cs : open channel before using it.
541
542 2009-05-13  Atsushi Enomoto  <atsushi@ximian.com>
543
544         * ReplyHandler.cs, InputOrReplyRequestProcessor.cs,
545           MessageProcessingContext.cs : reply processing is also needed by
546           non-request channels (i.e. duplex). Current code basis lacked
547           such possibility. Quick fix by adding duplex support in
548           ReplyHandler so far.
549
550 2009-05-13  Atsushi Enomoto  <atsushi@ximian.com>
551
552         * ChannelDispatcher.cs, SecurityHandler.cs,
553           InputOrReplyRequestProcessor.cs, MessageProcessingContext.cs :
554           remove default communication timeouts from several types. They
555           bring bogus NRE. Instead, fill timeouts in ChannelDispatcher and
556           use it when required (it was actually *only* request processor).
557
558 2009-05-13  Atsushi Enomoto  <atsushi@ximian.com>
559
560         * ChannelDispatcher.cs : wrong channel argument.
561
562 2009-04-27  Atsushi Enomoto  <atsushi@ximian.com>
563
564         * DispatchRuntime.cs : some comment.
565         * ChannelDispatcher.cs : ongoing changes to handle listeners and
566           accepted channels at more precise state. Listeners are opened,
567           without accepting channels. Some setup code is done at OnOpen(),
568           while some are done at OnOpened().
569
570 2009-04-23  Atsushi Enomoto  <atsushi@ximian.com>
571
572         * DispatchOperation.cs : implement GetFormatter() at service side too.
573
574 2009-04-01  Atsushi Enomoto  <atsushi@ximian.com>
575
576         * OperationInvokeHandler.cs : replace MS copycat exception message.
577
578 2009-02-26  Atsushi Enomoto  <atsushi@ximian.com>
579
580         * ClientRuntime.cs : fill contractType in .ctor().
581
582 2009-02-04  Atsushi Enomoto  <atsushi@ximian.com>
583
584         * BaseMessagesFormatter.cs : do not use non-2.1 CreateInstance().
585
586 2008-06-18  Noam Lampert <noaml@mainsoft.com>
587
588         * ChannelDispatcher.cs: Avoid aborting host process on faulty input message.
589
590 2008-05-22  Noam Lampert <noaml@mainsoft.com>
591
592         * OperationInvokeHandler.cs: Only return fault reply when TargetInvocation occured (not other internal
593           errors. Serlialize the correct (inner) exception.
594           
595 2008-05-22  Roei Erez  <roeie@mainsoft.com>
596         * fix ContractDescription.GetContract implementation
597         * Refactor Request processing
598         * Add support for message inspectors
599         * Add support for InstanceContextProvider & InstanceProvider, including lifecycles events
600         like: ReleaseServiceInstance, Open, Close...
601         * Add relevant test cases.
602
603 2008-05-01  Eyal Alaluf <eyala@mainsoft.com>
604
605         * BaseMessagesFormatter.cs: Handle methods with out parameters that return
606           void.
607         * DispatchOperation.cs, IOperationInvoker.cs: Simplify method invocation.
608
609 2008-04-22  Igor Zelmanovich <igorz@mainsoft.com>
610
611         * DispatchOperation.cs: removed dependency on OperationDescription, 
612         allows usage of custom channel dispatcher without endpoint was explicitly 
613         built
614
615 2008-04-22  Igor Zelmanovich <igorz@mainsoft.com>
616
617         * MexInstanceContextProvider.cs - remove unused code.
618
619 2008-04-21  Roei Erez <roeie@mainsoft.com>
620
621         * ChannelDispatcher.cs - Change order of Dispatcher shutdown
622
623 2008-04-17  Vladimir Krasnov  <vladimirk@mainsoft.com>
624
625         * ChannelDispatcher.cs, EndpointDispatcher.cs: removed dependency on 
626         ServiceDescription/ServiceEndpoint, allows usage of channel dispatcher
627         without endpoint was explicitly built
628         * EndpointDispatcher.cs: Filters lazy evaluation, refactored
629         communication processing, logic moved to channel dispatcher
630
631 2008-04-17  Vladimir Krasnov  <vladimirk@mainsoft.com>
632
633         * ActionMessageFilter.cs: fixed Match, match for "*" action
634
635 2008-04-17  Vladimir Krasnov  <vladimirk@mainsoft.com>
636
637         * DispatchOperation.cs: fixed ProcessRequest, fault message creation
638
639 2008-04-10  Eyal Alaluf <eyala@mainsoft.com>
640
641         * DefaultMessageOperationFormatter.cs: Moved to BaseMessagesFormatter.cs.
642         * BaseMessagesFormatter.cs: Refactored so typed messages uses the classes
643           defined here instead of the other way around.
644           Added support for by-ref and out parameters.
645           Added support for XmlSerializerFormat serializaters..
646         * DispatchOperation.cs, ClientOperation.cs: Use BaseMessagesFormatter.Create
647
648 2008-04-09  Roei Erez <roeie@mainsoft.com>
649
650         * Remove unused nethod from previous commit
651
652 2008-04-08  Roei Erez <roeie@mainsoft.com>
653
654         * ChannelDispatcher.cs
655           - fix 'Attach' logic
656           - Add support for Endpoints property
657           - Remove the hack of 'endpoint_dispatcher' field
658         * ChannelDispatcherCollection.cs
659           - Add support for 'Attach' 'Detach'
660         * EndpointDispatcher.cs
661           - By default create MatchAllMessageFilter.
662
663 2008-02-17  Atsushi Enomoto  <atsushi@ximian.com>
664
665         * EndpointDispatcher.cs : we don't need AddressFilter workaround
666           from Feb. 14 anymore.
667
668 2008-02-17  Atsushi Enomoto  <atsushi@ximian.com>
669
670         * EndpointDispatcher.cs : after service method call, apply outgoing
671           headers and properties to the returned message.
672
673 2008-02-15  Atsushi Enomoto  <atsushi@ximian.com>
674
675         * ChannelDispatcher.cs : populate DispatchOperations before applying
676           IEndpointBehaviors so that those behaviors can modify dispatch
677           operations.
678
679 2008-02-15  Atsushi Enomoto  <atsushi@ximian.com>
680
681         * DispatchOperation.cs : Action may be null. For such cases, use 
682           MessageDirection to determine the message description.
683
684 2008-02-15  Atsushi Enomoto  <atsushi@ximian.com>
685
686         * EndpointAddressMessageFilter.cs : implement Match(MessageBuffer).
687           Use ordinal string comparison.
688         * PrefixEndpointAddressMessageFilter.cs : implement Match() (both).
689
690 2008-02-14  Atsushi Enomoto  <atsushi@ximian.com>
691
692         * EndpointDispatcher.cs : moved AddressFilter application only when
693           DispatchOperation was not selected (it is sort of workaround).
694
695 2007-08-19  Atsushi Enomoto  <atsushi@ximian.com>
696
697         * DefaultMessageOperationFormatter.cs : Fixed SerializeReply() for
698           message contract type to process result, not the parameter.
699
700 2007-08-19  Atsushi Enomoto  <atsushi@ximian.com>
701
702         * SingletonInstanceContextProvider.cs : new.
703
704 2007-08-17  Atsushi Enomoto  <atsushi@ximian.com>
705
706         * DefaultMessageOperationFormatter.cs : dependent changes on
707           message serializer and deserializer.
708
709 2007-03-24  Atsushi Enomoto  <atsushi@ximian.com>
710
711         * DefaultMessageOperationFormatter.cs :
712           use it for deserialization as well.
713
714 2007-03-24  Atsushi Enomoto  <atsushi@ximian.com>
715
716         * DefaultMessageOperationFormatter.cs : consider message contracts
717           during message serialization/deserialization.
718
719 2007-03-07  Atsushi Enomoto  <atsushi@ximian.com>
720
721         * EndpointDispatcher.cs : now dispatcher-side foundation for token
722           negotiation is ready. Handle negotiation message on its own way.
723         * DispatchOperation.cs : instead of returning irrelevant SOAP Fault,
724           simply raise an error and let FaultConverter do better work.
725
726 2007-03-07  Atsushi Enomoto  <atsushi@ximian.com>
727
728         * EndpointDispatcher.cs : use ErrorHandlers when error was raised.
729           Handle exceptions to make into SOAP Fault, using FaultConverter.
730         * ChannelDispatcher.cs : simply get ServiceEndpoint at Attach().
731         * ChannelDispatcherBase.cs : removed MonoTODOs.
732
733 2007-03-07  Atsushi Enomoto  <atsushi@ximian.com>
734
735         * ChannelDispatcher.cs, DispatchRuntime.cs, EndpointDispatcher.cs :
736           moved most of request/input processing to EndpointDispatcher.cs.
737           Also, ChannelDispatcher now contains code for behavior
738           initialization.
739
740 2007-03-07  Atsushi Enomoto  <atsushi@ximian.com>
741
742         * ChannelDispatcher.cs : some cosmetic refactoring on error handling
743           with comments.
744
745 2006-12-14  Atsushi Enomoto  <atsushi@ximian.com>
746
747         * ChannelDispatcher.cs, DispatchRuntime.cs, DispatchOperation.cs :
748           Support OperationContext and OperationContextScope with
749           ServiceRuntimeChannel as its .ctor() input.
750
751 2006-12-14  Atsushi Enomoto  <atsushi@ximian.com>
752
753         * DispatchRuntime.cs : raise an error when the DispatchOperation
754           returned null Message.
755
756 2006-10-18  Ankit Jain  <jankit@novell.com>
757
758         * MexInstanceContextProvider.cs (HttpGetInstanceContextProvider): New.
759         * DispatchOperation.cs (DoProcessRequest): InstanceContext returned by
760         the provider can be null.
761         * EndpointAddressMessageFilter.cs (Match): Handle IncludeHostNameInComparison.
762
763 2006-10-12  Atsushi Enomoto  <atsushi@ximian.com>
764
765         * DispatchOperation.cs : slightly improved exception message.
766
767 2006-10-06  Ankit Jain  <jankit@novell.com>
768
769         * ChannelDispatcher.cs (ListenerLoopManager.StartLoopCore):
770         ReceiveRequest can return null.
771
772 2006-10-05  Atsushi Enomoto  <atsushi@ximian.com>
773
774         * ClientRuntime.cs : added MaxFaultSize.
775
776 2006-10-05  Atsushi Enomoto  <atsushi@ximian.com>
777
778         * ChannelDispatcher.cs : don't reject anonymous and null To.
779
780 2006-10-04  Ankit Jain  <jankit@novell.com>
781
782         * ChannelDispatcher.cs (ListenerLoopManager.StartLoopCore): Reply with a 
783         Fault message if message's To doesn't match the endpoint.
784         (ListenerLoopManager.CreateDestinationUnreachable): New.
785         * IInstanceContextProvider.cs: New.
786         * MexInstanceContextProvider.cs: New. InstanceContextProvider for
787         MetadataExchange.
788         (MetadataExchange): Implementation of IMetadataExchange.
789         * DispatchRuntime.cs (InstanceContextProvider): Add missing property.
790         * DispatchOperation.cs (DoProcessRequest): Use InstanceContextProvider
791         if available to obtain service instance.
792         * EndpointDispatcher.cs (.ctor): Set AddressFilter to EndpointAddressMessageFilter.
793         * EndpointAddressMessageFilter.cs (Match): Implement.
794
795 2006-10-03  Atsushi Enomoto  <atsushi@ximian.com>
796
797         * ClientRuntime.cs : added InteractiveChannelInitializer.
798
799 2006-09-12  Atsushi Enomoto  <atsushi@ximian.com>
800
801         * DispatchOperation.cs : removed extra comment.
802
803 2006-09-08  Atsushi Enomoto  <atsushi@ximian.com>
804
805         * DispatchOperation.cs : workaround to send exception detail.
806
807 2006-09-06  Atsushi Enomoto  <atsushi@ximian.com>
808
809         * ICallContextInitializer.cs : new file.
810         * DispatchOperation.cs : use above.
811           Not sure if it works correctly though.
812
813 2006-08-28  Atsushi Enomoto  <atsushi@ximian.com>
814
815         * DispatchOperation.cs : when there is an error during
816           ProcessRequest(), wrap the exception with MessageFault and return
817           a fault message.
818
819 2006-08-10  Duncan Mak  <duncan@novell.com>
820
821         * ExceptionHandler.cs: New file.
822
823         * ServiceThrottle.cs (MaxConnections): Renamed to
824         MaxConcurrentSessions.
825         (MaxInstances): Renamed to MaxConcurrentInstances.
826
827 2006-07-27  Atsushi Enomoto  <atsushi@ximian.com>
828
829         * IInteractiveChannelInitializer.cs : new file.
830
831 2006-07-14  Atsushi Enomoto  <atsushi@ximian.com>
832
833         * IErrorHandler.cs : API updates.
834
835 2006-07-13  Atsushi Enomoto  <atsushi@ximian.com>
836
837         * DispatchRuntime.cs :
838           it was selecting UnhandledOperation unexpectedly.
839         * DispatchOperation.cs : added FIXME comment.
840
841 2006-07-13  Atsushi Enomoto  <atsushi@ximian.com>
842
843         * DefaultMessageOperationFormatter.cs : Remove hack for non-
844           (de)serializing Message-based methods. They are now moved to
845           ClientBase and ServiceHostBase to explicitly set
846           [Serialize|Deserialize][Request|Reply].
847
848 2006-07-12  Atsushi Enomoto  <atsushi@ximian.com>
849
850         * DefaultMessageOperationFormatter.cs : don't omit action on
851           SerializeRequest. Do it in SerializeReply.
852
853 2006-07-12  Atsushi Enomoto  <atsushi@ximian.com>
854
855         * DefaultMessageOperationFormatter.cs : When addressing version is
856           None, then omit reply action. This logic is moved from MessageImpl.
857
858 2006-07-11  Atsushi Enomoto  <atsushi@ximian.com>
859
860         * DefaultMessageOperationFormatter.cs :
861           return message, not parameter[0]. Removed some extra FIXMEs.
862
863 2006-07-10  Atsushi Enomoto  <atsushi@ximian.com>
864
865         * DefaultMessageOperationFormatter.cs : when the parameter is
866           Message and the return type is Message, then do not use
867           XmlObjectSerializer.
868
869 2006-07-07  Atsushi Enomoto  <atsushi@ximian.com>
870
871         * PrefixEndpointAddressMessageFilter.cs, FaultContractInfo.cs :
872           new types in June CTP.
873         * ISharedInstanceSessionLifetime.cs:
874           removed in June CTP.
875         * ChannelDispatcher.cs, MatchAllMessageFilter.cs, DispatchRuntime.cs,
876           DispatchOperation.cs, ClientRuntime.cs, MatchNoneMessageFilter.cs,
877           ClientOperation.cs, ActionMessageFilterTable.cs,
878           EndpointAddressMessageFilterTable.cs :
879           several minor fixes for June CTP.
880
881 2006-07-06  Atsushi Enomoto  <atsushi@ximian.com>
882
883         * DispatchOperation.cs : MessageFault.DefaultAction vanished.
884
885 2006-07-05  Atsushi Enomoto  <atsushi@ximian.com>
886
887         * IClientFormatter.cs, IClientMessageFormatter.cs,
888           IDispatchFormatter.cs, IDispatchMessageFormatter.cs :
889           renamed former to latter, for each.
890
891 2006-07-05  Atsushi Enomoto  <atsushi@ximian.com>
892
893         * ChannelDispatcher.cs, DispatchRuntime.cs :
894           IRequestContext -> RequestContext.
895
896 2006-07-05  Atsushi Enomoto  <atsushi@ximian.com>
897
898         * ChannelDispatcher.cs, IDispatchFormatter.cs,
899           DefaultMessageOperationFormatter.cs, IClientFormatter.cs,
900           DispatchOperation.cs, ClientOperation.cs :
901           some June CTP updates.
902
903 2006-06-22  Atsushi Enomoto  <atsushi@ximian.com>
904
905         * DefaultMessageOperationFormatter.cs : implement SerializeRequest()
906           and DeserializeReply(). Now simple ClientBase<T> sample is working.
907
908 2006-06-22  Atsushi Enomoto  <atsushi@ximian.com>
909
910         * ClientOperation.cs : added GetFormatter() to support message
911           serialization/deserialization.
912         * DispatchOperation.cs : made some internal members private
913           (they are exposed extraneously). Commented out debugging code.
914
915 2006-06-20  Atsushi Enomoto  <atsushi@ximian.com>
916
917         * DefaultMessageOperationFormatter.cs : In SerializeReply(), use
918           custom BodyWriter() and use MessagePartDescription names. Now
919           return value and other (ref/out) parameters could be equivalently
920           serialized (at this method; to support them more love is needed).
921
922 2006-06-20  Atsushi Enomoto  <atsushi@ximian.com>
923
924         * DefaultMessageOperationFormatter.cs :
925           Action for response is null (though it is likely conditional).
926
927 2006-06-20  Atsushi Enomoto  <atsushi@ximian.com>
928
929         * DefaultMessageOperationFormatter.cs :
930           true DeserializeReply implementation using Message.CreateMessage()
931           with DataContractSerializer (not complete though).
932
933 2006-05-29  Atsushi Enomoto  <atsushi@ximian.com>
934
935         * ChannelDispatcher.cs, DispatchOperation.cs,
936           ChannelDispatcherBase.cs :
937           some updated API fixes.
938
939 2006-05-29  Atsushi Enomoto  <atsushi@ximian.com>
940
941         * EndpointDispatcher.cs : moved from Sys.ServiceModel.
942
943 2006-04-20  Atsushi Enomoto  <atsushi@ximian.com>
944
945         * ClientRuntime.cs : some minor collection instantiation and comments.
946
947 2006-04-07  Atsushi Enomoto  <atsushi@ximian.com>
948
949         * DispatchOperation.cs : Implemented internal MessageVersion.
950           hacked instance provision by using Activator.CreateInstance.
951         * DefaultMessageOperationFormatter.cs : fixed DeserializeRequest to
952           be functional. Implemented SerializeReply.
953
954 2006-04-05  Atsushi Enomoto  <atsushi@ximian.com>
955
956         * DispatchOperation.cs : return SOAP fault message for nonexistent
957           request Action.
958         * DefaultMessageOperationFormatter.cs : implemented
959           DeserializeRequest(), though there is no working example.
960
961 2006-03-17  Atsushi Enomoto  <atsushi@ximian.com>
962
963         * DispatchOperation.cs : implemented logic to acquire
964           OperationDescription. Added code for default IDispatchFormatter
965           implementation.
966         * DispatchRuntime.cs : fix warning.
967         * DefaultMessageOperationFormatter.cs : new file, for default
968           IDispatchFormatter implementation (not done yet).
969         * ChannelDispatcher.cs : create EndpointDispatcher in Attach and
970           bind to this instance.
971
972 2006-03-16  Atsushi Enomoto  <atsushi@ximian.com>
973
974         * ChannelDispatcherCollection.cs : added parameterless ctor().
975         * ChannelDispatcher.cs DispatchRuntime.cs DispatchOperation.cs :
976           Set some initial field values as proved in unit tests.
977           Request/input processing is still ongoing.
978
979 2006-03-13  Atsushi Enomoto  <atsushi@ximian.com>
980
981         * ChannelDispatcher.cs
982           DispatchRuntime.cs
983           DispatchOperation.cs : added request/input processing code.
984
985 2006-03-07  Atsushi Enomoto  <atsushi@ximian.com>
986
987         * ChannelDispatcher.cs : Get "AcceptChannel" method without ambiguity.
988
989 2006-03-07  Atsushi Enomoto  <atsushi@ximian.com>
990
991         * ChannelDispatcher.cs : Added request-processing code.
992
993 2006-03-06  Atsushi Enomoto  <atsushi@ximian.com>
994
995         * ChannelDispatcher.cs : implement Attach() and Detach() more to work.
996
997 2006-02-23  Atsushi Enomoto  <atsushi@ximian.com>
998
999         * DispatchBehavior.cs : 
1000           Dependent fixes for System.IdentityModel reorgainzation.
1001
1002 2006-02-23  Atsushi Enomoto  <atsushi@ximian.com>
1003
1004         * FilterNodeQuotaExceededException.cs
1005           FilterInvalidBodyAccessException.cs DispatchBehavior.cs
1006           DispatchOperation.cs NavigatorInvalidBodyAccessException.cs
1007           MatchNoneFilter.cs ActionFilter.cs
1008           MultipleFilterMatchesException.cs Filter.cs
1009           IInstanceContextInitializer.cs XPathFilter.cs
1010           IDispatchOperationSelector.cs MatchAllFilter.cs
1011           ActionFilterTable.cs EndpointAddressFilter.cs FilterTable.cs
1012           EndpointFilterTable.cs XPathMessageContext.cs
1013           IEndpointDispatcher.cs ProxyBehavior.cs
1014           ProxyOperation.cs XPathFilterTable.cs
1015           EndpointAddressFilterTable.cs InvalidBodyAccessException.cs
1016           IFilterTable.cs IOperationInvoker.cs :
1017           moved from System.ServiceModel due to the API changes.