* MethodCall.cs: Use RemotingServices.GetMethodBaseFromName to get the
[mono.git] / mcs / class / corlib / System.Runtime.Remoting.Messaging / ChangeLog
1 2004-07-22  Lluis Sanchez Gual  <lluis@novell.com>
2
3         * MethodCall.cs: Use RemotingServices.GetMethodBaseFromName to get the
4           MethodBase from the method name. This fixes bug #61774.
5
6 2004-06-18  Sebastien Pouliot  <sebastien@ximian.com>
7
8         * ReturnMessage.cs: Added IMessage interface to class definition.
9
10 2004-06-17  Gert Driesen <drieseng@users.sourceforge.net>
11
12         * ReturnMessage.cs: remove serializable attribute to match MS.NET
13
14 2004-05-11  Lluis Sanchez Gual  <lluis@ximian.com>
15
16         * MethodResponse.cs: Only get the MethodBase from type and method name when
17           requested.
18
19 2004-05-11  Lluis Sanchez Gual  <lluis@ximian.com>
20
21         * MethodResponse.cs: In the serialization constructor, initialize MethodBase
22           using the method name and type name.
23
24 2004-05-03  Lluis Sanchez Gual  <lluis@ximian.com>
25
26         * MethodResponse.cs, ReturnMessage.cs: More null checks.
27
28 2004-04-30  Lluis Sanchez Gual  <lluis@ximian.com>
29
30         * MethodResponse.cs, ReturnMessage.cs: Added null checks.
31
32 2004-04-29  Raja R Harinath  <rharinath@novell.com>
33
34         * MethodResponse.cs (MethodResponse.OutArgCount)
35         (MethodResponse.GetOutArg): Make reference to _args null-safe.
36
37 2004-04-28  Lluis Sanchez Gual  <lluis@ximian.com>
38
39         * CADMessages.cs: Revert last change. It was ok.
40         * MethodResponse.cs, ReturnMessage.cs: Handle output parameters in a
41           different way. The message is constructed from an array that has all
42           parameters, including input parameters (which will be set to null).
43           The Args property returns all arguments. OutArgs returns only the
44           output arguments, which are taken from the provided args list.
45         
46 2004-04-26  Lluis Sanchez Gual  <lluis@ximian.com>
47
48         * CADMessages.cs: Marshal the correct return args for the return message.
49
50 2004-02-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
51
52         * AsyncResult.cs:
53         (AsyncWaitHandle): create the handle if not done yet.
54
55 2004-01-19  Lluis Sanchez Gual  <lluis@ximian.com>
56
57         * AsyncResult.cs: Added async_callback field and fixed the callback call.
58         I thought that async_delegate was the callback, but it is not, it is the
59         delegate upon which the async call was invoked. This fixes bug #53020.
60         * StackBuilderSink.cs: If the target object is a proxy, make the call
61         using the Invoke method of the real proxy.
62
63 2003-12-23  Lluis Sanchez Gual  <lluis@ximian.com>
64
65         * ConstructionResponse.cs: Added constructor for exception response.
66
67 2003-12-22  Lluis Sanchez Gual  <lluis@ximian.com>
68
69         * MethodCall.cs: Do not try to resolve the method in the serialization
70           constructor, since the type array may not be yet completely deserialized.
71           This fixes bug #52426.
72
73 2003-12-10  Lluis Sanchez Gual  <lluis@ximian.com>
74
75         * AsyncResult.cs: Call delegate on async call completion.
76         * CADMessages.cs: Removed TODO.
77
78 2003-11-28  Dick Porter  <dick@ximian.com>
79
80         * MethodCall.cs: Use the char form of IndexOf, so that the
81         comparison is done with the Invariant culture.
82
83 2003-11-26  Lluis Sanchez Gual <lluis@ximian.com>
84
85         * MethodCall.cs, MethodResponse.cs, ReturnMessage.cs: Implemented
86           HasVarArgs property.
87
88 2003-11-25  Lluis Sanchez Gual <lluis@ximian.com>
89
90         * AsyncResult.cs, CallContext.cs: Added private constructor.
91         * ReturnMessage.cs: Added parameter array length check.
92
93 2003-11-18  Lluis Sanchez Gual <lluis@ximian.com>
94
95         * ArgInfo.cs, ClientContextTerminatorSink.cs, ErrorMessage.cs, MethodCall.cs,
96           MethodResponse.cs, MonoMethodMessage.cs, ServerContextTerminatorSink.cs,
97           StackBuilderSink.cs: Fixed class visibility.
98         * CADMessages.cs: Added null reference check in SaveLogicalCallContext.
99         * ISerializationRootObject.cs: Added.
100
101 2003-11-17  Lluis Sanchez Gual <lluis@ximian.com>
102
103         * StackBuilderSink.cs: Implemented AsyncProcessMessage().
104         
105 2003-11-16  Lluis Sanchez Gual <lluis@ximian.com>
106
107         * CADMessages.cs: Added methods for setting and getting the logical call
108           context.
109         * ConstructionCall.cs: Fixed signature of some methods.
110         * ConstructionResponse.cs: Fixed signature of constructor and added missing
111           property.
112         * LogicalCallContext.cs: Removed TODO.
113         * MethodCall.cs, MethodResponse.cs: Added support for LogicalCallContext in
114           consturctor.
115         * MethodReturnMessageWrapper.cs: Removed some unneded methods.
116
117 2003-11-11  Lluis Sanchez Gual  <lluis@ximian.com>
118
119         * ConstructionCall.cs, ReturnMessage.cs: minor fixes.
120
121 2003-10-23  Lluis Sanchez Gual  <lluis@ximian.com>
122
123         * MethodCall.cs: In the constructor that takes a CADMethodCallMessage
124           object, make sure strings are not reused across domains.
125
126 2003-10-08  Lluis Sanchez Gual  <lluis@ximian.com>
127
128         * CADMessages.cs: added smuggeling argument support for some instances
129           of MarshalByRefObject. This should make the cross-appdomain channel 
130           even faster. Some other minor fixes.
131
132 2003-10-07  Lluis Sanchez Gual  <lluis@ximian.com>
133
134         * CADMessages.cs: improved argument smuggeling. Now it supports strings,
135           datetime and arrays of primitive types. This makes CAD much faster.
136         * AsyncResult.cs: Added property to store the call message.
137
138 2003-09-11  Lluis Sanchez Gual  <lluis@ximian.com>
139
140         * ArgInfo.cs: Include parameters with the Out flag in the out parameters list.
141         * CallContext.cs: SetCurrentCallContext now returns the old context, so it
142           can be later restored with new new method RestoreCallContext().
143         * ReturnMessage.cs: Some fixes in the way the class deals with output parameters,
144           to match MS.NET behavior.
145
146 2003-08-28  Lluis Sanchez Gual  <lluis@ximian.com>
147
148         * MonoMethodMessage.cs: Moved CallType into namespace declaration.
149
150 2003-08-25  Lluis Sanchez Gual <lluis@ximian.com>
151
152         * AsyncResult.cs: Added method EndInvoke(). Fixed SyncProcessMessage().
153         * CallContext.cs: Clean current logical context before setting the new
154           values form LogicalCallContext (SetCurrentCallContext).
155         * MonoMethodMessage.cs: Added new CallType field and enum.
156         * StackBuilderSink.cs: Improved error message.
157
158 2003-08-20  Lluis Sanchez Gual <lluis@ximian.com>
159
160         * MethodCall.cs: Changed exception text to match MS.NET (more or less).
161         * AsyncResult.cs: Added new fields to store async calls results.
162
163 2003-08-17  Lluis Sanchez Gual <lluis@ximian.com>
164
165         * MethodCall.cs: Throw the right exception if the target object is not
166           found when resolving the target method.
167
168 2003-08-17  Lluis Sanchez Gual <lluis@ximian.com>
169
170         * CallContext.cs: Fixed bug #47686.
171
172 2003-08-14  Lluis Sanchez Gual <lluis@ximian.com>
173
174         * CADMessages.cs: Enabled smuggeling of primitive type parameters (as suggested
175           by Patrik).
176         * CallContext.cs: Impplemented.
177         * LogicalCallContext.cs: Implemented.
178         * MonoMethodMessage.cs: Added setter for LogicalCallContext property.
179
180 2003-07-25  Lluis Sanchez Gual <lluis@ximian.com>
181
182         * ArgInfo.cs: Use Type.IsByRef to check if a parameter is a ref or
183           out parameter.
184         * MethodCall.cs: Improved checking if the requested client type for the target
185           object can be casted to the server type. Now not only checks type name,
186           but also the type hierarchy and implemented interfaces. Also implemented
187           method ToString().
188         * MethodResponse.cs: Imlemented ToString().
189         * ReturnMessage.cs: In the exception constructor, allow the request to be null.
190           Implemented ToString().
191         * StackBuilderSink.cs: Check type of parameters before calling the target method.
192           (a wrong type would make the runtime to crash).
193
194 2003-07-23  Lluis Sanchez Gual <lluis@ximian.com>
195
196         * MethodDictionary.cs: Fixed Add method. If the property is method
197           property, then there is no need it to the internal properties table.
198
199 2003-07-21  Lluis Sanchez Gual <lluis@ximian.com>
200
201         * MethodCall.cs: Fixed copy constructor, when the message to copy does not
202           implement IMethodMessage.
203
204 2003-07-09  Jean-Marc André <jean-marc.andre@polymtl.ca>
205
206         * ReturnMessage.cs: Bug fix. GetOutArgName didn't return the right Name for the given out parameter.
207
208 2003-05-13  Lluis Sanchez Gual <lluis@ideary.com>
209         
210         * MethodCall.cs: ResolveMethod now uses the type of the target object (identified
211           by the uri) instead of the type specified by TypeName (only if both types have
212           the same name).
213
214 2003-04-10  Lluis Sanchez Gual <lluis@ideary.com>
215         
216         * AsyncResult.cs: implemented some methods.
217         * ClientContextTerminatorSink.cs: Improved support for Async and OneWay messages.
218         * MonoMethodMessage.cs: Added member needed to support Async messages.
219         * ServerObjectTerminatorSink.cs: Improved support for Async and OneWay messages.
220
221 2003-03-21  Lluis Sanchez Gual <lluis@ideary.com>
222         
223         * CADMessages.cs: removed some warnings.
224         * ClientContextTerminatorSink.cs: added support for dynamic sinks.
225         * ConstructionCall.cs: added internal property IsContextOK.
226         * MethodResponse.cs: fixed management of output parameters.
227         * ServerObjectTerminatorSink.cs: added support for dynamic sinks.
228
229 2003-03-03  Lluis Sanchez Gual <lluis@ideary.com>
230
231         * ConstructionCall.cs: Added internal constructor. Added setter for activation attributes.
232           Some other minor corrections.
233         * EnvoyTerminatorSink.cs: Message now redirected to current context's client sink chain.
234         * MethodCall.cs: Added method for copying messages.
235
236 2003-02-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
237
238         * MethodCall.cs:
239         (MethodBase): resolve the method if it's not already done.
240
241 2003-02-18  Lluis Sanchez Gual <lluis@ideary.com>
242
243         * IInternalMessage.cs: Added. Provides some useful methods for method messages.
244         * ServerContextTerminatorSink.cs: Added support for construction messages.
245         * MethodCall.cs: Implemented serialization support. Added support for IInternalMessage.
246         * MethodDictionary.cs: Added support for IInternalMessage.
247         * MethodResponse.cs: Added serialization support. Added support for IInternalMessage.
248         * MonoMethodMessage.cs: Added support for IInternalMessage.
249         * ReturnMessage.cs: Added support for IInternalMessage.
250         * ClientContextTerminatorSink.cs: Added.
251         * ConstructionCall.cs: Added.
252         * ConstructionCallDictionary.cs: Added.
253         * ConstructionResponse.cs: Added.
254         * EnvoyTerminatorSink.cs: Added.
255         
256 2003-02-07  Patrik Torstensson
257
258         * CADMessages.cs: Disable smuggeling of objects cross domain, still issues casing remoting
259           to fail. (fixed formating)
260
261 2003-02-07  Lluis Sanchez Gual <lluis@ideary.com>
262
263         * CADMessages.cs: Some minor changes that allow reuse of ObjRef methods.
264         
265 2003-02-05  Lluis Sanchez Gual <lluis@ideary.com>
266         
267         * ReturnMessage.cs, MethodResponse.cs: OutArgs initialized to an empty array
268           when the the message returns an exception.
269
270 2003-02-04  Lluis Sanchez Gual <lluis@ideary.com>
271         
272         * ServerContextTerminatorSink.cs: Modified to work with new types of identities.
273         * ReturnMessage.cs: Removed internal dependence to MonoMethodMessage. It is not needed now.
274         * MonoMethodMessage.cs: Now only has method call keys in the dictionary. 
275         * MethodReturnDictionary.cs, MethodCallDictionary.cs: Made public the list of 
276           method keys. This list is used in MessageFormatter.
277         * MethodDictionary.cs: Corrected some minor bugs.
278         * MethodCall.cs: minor correction on constructor.
279
280 2003-02-03 Patrik Torstensson
281
282         * MethodResponse.cs: Implemented
283         * MethodCall.cs: added support for Cross appdomain messages, implemented some
284         missing methods.
285         * MethodDictionary.cs: made serializible and added methods to get internal properties.
286         * MonoMethodMessage.cs: internal dictionary is now serializible
287         * ReturnMessage.cs: made serializible
288         * ErrorMessage.cs: typo fix
289         
290         * CADMessage.cs: new file, implements cross appdomain messages, both call and return. 
291         Princip of this classes is to move unmutable objects and primitivs between appdomains
292         without marshalling. This increase performance a lot of the cross appdomain channel.
293         
294 2003-01-29  Lluis Sanchez Gual <lluis@ideary.com>
295         
296         * ServerContextTerminatorSink.cs: now it forwards messages to the target identity,
297           which knows how to manage each type of service.
298         * StackBuilderSink.cs: added a reference to the target object.
299
300 2002-12-28  Patrik Torstensson
301
302         * RemotingSurrogateSelector.cs: Added serialization support for MBR's.
303         * RemotingSurrogate.cs: Moved ObjRefSurrogate and MBRSurrogate to new file.
304         * ErrorMessage.cs: Dummy used when an exception occours.
305         * MonoMethodMessage.cs: Added Serializable and support for be created with null methods
306
307 2002-12-26  Lluis Sanchez Gual <lluis@ideary.com>
308
309         * ReturnMessage.cs: Implemented property Properties
310         * RemotingSurrogateSelector.cs: Implemented serialization support for ObjRef.
311         * MonoMethodMessage.cs: Implemented Properties and MethodSignature properties.
312         * MethodReturnMessageWrapper.cs: Implemented.
313         * MethodCallMessageWrapper.cs: Implemented.
314         * MethodCall.cs: Implemented.
315         * Header.cs: Small corrections to make it work.
316         * MethodDictionary.cs: Added.
317         * MethodCallDictionary.cs: Added.
318         * MethodReturnDictionary.cs: Added.
319         * ArgInfo.cs: Added.
320
321 2002-12-20  Lluis Sanchez Gual <lluis@ideary.com>
322
323         * MonoMethodMessage.cs: Implemented property Uri
324
325 2002-12-20  Lluis Sanchez Gual <lluis@ideary.com>
326
327         * ServerContextTerminatorSink.cs: Added
328         * ServerObjectTerminatorSink.cs: Added
329         * StackBuilderSink.cs: Added
330
331 2002-12-10  Jaime Anguiano Olarra <jaime@gnome.org>
332
333         * CallContext.c: Added to the CVS.
334
335 2002-08-22  Nick Drochak  <ndrochak@gol.com>
336
337         * RemotingSurrogateSelector.cs (SetRootObject): Function should return
338         void, not object.
339
340 2002-08-03  Duncan Mak  <duncan@ximian.com>
341
342         * MethodCall.cs: 
343         * MethodResponse.cs: More visibility fixes. Hopefully this is the
344         last of it.
345
346 2002-08-02  Duncan Mak  <duncan@ximian.com>
347
348         * MethodCall.cs: 
349         * MethodCallMessageWrapper.cs: 
350         * MethodReturnMessageWrapper.cs: Various visibility fixes.
351
352         * RemotingSurrogateSelector.cs: Added, replaced RemoteSurrogateSelector.
353
354 2002-07-31  Duncan Mak  <duncan@ximian.com>
355         
356         * MethodCallMessageWrapper.cs:
357         * MethodReturnMessageWrapper.cs: Revert the last patch and made it
358         work. Thanks to Gonzalo for reminding me to chain the constructors.
359
360 2002-07-31  Duncan Mak  <duncan@ximian.com>
361
362         * MethodCallMessageWrapper.cs:
363         * MethodReturnMessageWrapper.cs: Remove reference to
364         InternalMessageWrapper. It's probably an MS private class, even
365         though it's visible in the documentation.
366
367 2002-07-31  Duncan Mak  <duncan@ximian.com>
368
369         * InternalMessageWrapper.cs: 
370         * MessageSurrogateFilter.cs: 
371         * MethodCall.cs: 
372         * MethodCallMessageWrapper.cs: 
373         * MethodResponse.cs: 
374         * MethodReturnMessageWrapper.cs: 
375
376         * RemoteSurrogateSelector.cs: Added to CVS. 
377
378         * MonoMethodMessage.cs: 
379         * ReturnMessage.cs: Add set in the Uri property.
380
381 2002-07-24  Duncan Mak  <duncan@ximian.com>
382
383         * OneWayAttribute.cs: Added to CVS.
384
385 2002-07-23  Duncan Mak  <duncan@ximian.com>
386
387         * HeaderHandler.cs: Added.
388
389         * IRemotingFormatter.cs: Added to CVS.
390
391         * IMethodMessage.cs: IMethodMessage inherits from IMessage.
392
393 Thu Apr 4 13:13:20 CEST 2002 Paolo Molaro <lupus@ximian.com>
394
395         * IMethodReturnMessage.cs: added IMethodMessage, IMessage interfaces.
396         * ReturnMessage.cs: stubbed out Properties property.
397
398 2002-03-21  Dietmar Maurer  <dietmar@ximian.com>
399
400         * AsyncResult.cs: impl.
401
402 2002/03/04  Nick Drochak  <ndrochak@gol.com>
403
404         * Header.cs: Change properties into fields where they should be.