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