+2005-05-31 Lluis Sanchez Gual <lluis@novell.com>
+
+ * ReturnMessage.cs: Added some null checks.
+ * MethodReturnMessageWrapper.cs: Added some null checks. Fixed
+ incorrect cast in the constructor.
+
+2005-05-20 Sebastien Pouliot <sebastien@ximian.com>
+
+ * AsyncResult.cs: Added new fields (required for stack propagation) to
+ match runtime structure.
+
+2005-05-09 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MethodCall.cs: Fix warning.
+
+2004-10-26 Lluis Sanchez Gual <lluis@novell.com>
+
+ * CallContext.cs: In CreateLogicalCallContext, added parameter which
+ specifies if an empty LogicalCallContext needs to be created if there are
+ no context values.
+
+2004-09-27 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MethodCallMessageWrapper.cs: The wrapper has to modify the wrapped
+ message. MS does it.
+ * ReturnMessage.cs: Use TypeName instead of _typeName since now name is
+ lazely constructed.
+
+2004-09-22 Lluis Sanchez Gual <lluis@novell.com>
+
+ * ConstructionCall.cs: Added a Proxy property (which is the proxy that
+ will reference the object being created).
+ * StackBuilderSink.cs: Take into account the forceInternalExecute
+ parameter.
+
+2004-09-11 Ben Maurer <bmaurer@users.sourceforge.net>
+
+ * CallContext.cs: Use [ThreadStatic], it is much faster than the
+ Thread.[Get/Set]Data functions
+
+2004-09-11 Ben Maurer <bmaurer@users.sourceforge.net>
+
+ * CADMessages.cs: get rid of method / type name, it is not needed
+ * MethodCall.cs: lazily init method / type name.
+ * ReturnMessage.cs: lazily init method / type name, sig.
+
+2004-09-11 Ben Maurer <bmaurer@users.sourceforge.net>
+
+ * CADMessages.cs, MethodCall.cs: When doing an x-appdomain
+ call, store the method in a RuntimeMethodHandle. This allows
+ us to avoid the expensive lookup operations that must be done
+ to resolve the method. This makes xsp go from 250 r/s to 450 r/s
+ for me.
+
+2004-09-05 Ben Maurer <bmaurer@users.sourceforge.net>
+
+ * MethodCall.cs, CADMessages.cs: String.Copy (x) is the same
+ thing as new string (x.ToCharArray ()), however it involves
+ half the memory allocation
+
+2004-07-22 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MethodCall.cs: Use RemotingServices.GetMethodBaseFromName to get the
+ MethodBase from the method name. This fixes bug #61774.
+
+2004-06-18 Sebastien Pouliot <sebastien@ximian.com>
+
+ * ReturnMessage.cs: Added IMessage interface to class definition.
+
+2004-06-17 Gert Driesen <drieseng@users.sourceforge.net>
+
+ * ReturnMessage.cs: remove serializable attribute to match MS.NET
+
+2004-05-11 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * MethodResponse.cs: Only get the MethodBase from type and method name when
+ requested.
+
+2004-05-11 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * MethodResponse.cs: In the serialization constructor, initialize MethodBase
+ using the method name and type name.
+
+2004-05-03 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * MethodResponse.cs, ReturnMessage.cs: More null checks.
+
+2004-04-30 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * MethodResponse.cs, ReturnMessage.cs: Added null checks.
+
+2004-04-29 Raja R Harinath <rharinath@novell.com>
+
+ * MethodResponse.cs (MethodResponse.OutArgCount)
+ (MethodResponse.GetOutArg): Make reference to _args null-safe.
+
+2004-04-28 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * CADMessages.cs: Revert last change. It was ok.
+ * MethodResponse.cs, ReturnMessage.cs: Handle output parameters in a
+ different way. The message is constructed from an array that has all
+ parameters, including input parameters (which will be set to null).
+ The Args property returns all arguments. OutArgs returns only the
+ output arguments, which are taken from the provided args list.
+
+2004-04-26 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * CADMessages.cs: Marshal the correct return args for the return message.
+
+2004-02-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * AsyncResult.cs:
+ (AsyncWaitHandle): create the handle if not done yet.
+
+2004-01-19 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * AsyncResult.cs: Added async_callback field and fixed the callback call.
+ I thought that async_delegate was the callback, but it is not, it is the
+ delegate upon which the async call was invoked. This fixes bug #53020.
+ * StackBuilderSink.cs: If the target object is a proxy, make the call
+ using the Invoke method of the real proxy.
+
+2003-12-23 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * ConstructionResponse.cs: Added constructor for exception response.
+
+2003-12-22 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * MethodCall.cs: Do not try to resolve the method in the serialization
+ constructor, since the type array may not be yet completely deserialized.
+ This fixes bug #52426.
+
+2003-12-10 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * AsyncResult.cs: Call delegate on async call completion.
+ * CADMessages.cs: Removed TODO.
+
+2003-11-28 Dick Porter <dick@ximian.com>
+
+ * MethodCall.cs: Use the char form of IndexOf, so that the
+ comparison is done with the Invariant culture.
+
+2003-11-26 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * MethodCall.cs, MethodResponse.cs, ReturnMessage.cs: Implemented
+ HasVarArgs property.
+
+2003-11-25 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * AsyncResult.cs, CallContext.cs: Added private constructor.
+ * ReturnMessage.cs: Added parameter array length check.
+
+2003-11-18 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * ArgInfo.cs, ClientContextTerminatorSink.cs, ErrorMessage.cs, MethodCall.cs,
+ MethodResponse.cs, MonoMethodMessage.cs, ServerContextTerminatorSink.cs,
+ StackBuilderSink.cs: Fixed class visibility.
+ * CADMessages.cs: Added null reference check in SaveLogicalCallContext.
+ * ISerializationRootObject.cs: Added.
+
+2003-11-17 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * StackBuilderSink.cs: Implemented AsyncProcessMessage().
+
+2003-11-16 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * CADMessages.cs: Added methods for setting and getting the logical call
+ context.
+ * ConstructionCall.cs: Fixed signature of some methods.
+ * ConstructionResponse.cs: Fixed signature of constructor and added missing
+ property.
+ * LogicalCallContext.cs: Removed TODO.
+ * MethodCall.cs, MethodResponse.cs: Added support for LogicalCallContext in
+ consturctor.
+ * MethodReturnMessageWrapper.cs: Removed some unneded methods.
+
+2003-11-11 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * ConstructionCall.cs, ReturnMessage.cs: minor fixes.
+
+2003-10-23 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * MethodCall.cs: In the constructor that takes a CADMethodCallMessage
+ object, make sure strings are not reused across domains.
+
+2003-10-08 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * CADMessages.cs: added smuggeling argument support for some instances
+ of MarshalByRefObject. This should make the cross-appdomain channel
+ even faster. Some other minor fixes.
+
+2003-10-07 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * CADMessages.cs: improved argument smuggeling. Now it supports strings,
+ datetime and arrays of primitive types. This makes CAD much faster.
+ * AsyncResult.cs: Added property to store the call message.
+
+2003-09-11 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * ArgInfo.cs: Include parameters with the Out flag in the out parameters list.
+ * CallContext.cs: SetCurrentCallContext now returns the old context, so it
+ can be later restored with new new method RestoreCallContext().
+ * ReturnMessage.cs: Some fixes in the way the class deals with output parameters,
+ to match MS.NET behavior.
+
+2003-08-28 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * MonoMethodMessage.cs: Moved CallType into namespace declaration.
+
+2003-08-25 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * AsyncResult.cs: Added method EndInvoke(). Fixed SyncProcessMessage().
+ * CallContext.cs: Clean current logical context before setting the new
+ values form LogicalCallContext (SetCurrentCallContext).
+ * MonoMethodMessage.cs: Added new CallType field and enum.
+ * StackBuilderSink.cs: Improved error message.
+
+2003-08-20 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * MethodCall.cs: Changed exception text to match MS.NET (more or less).
+ * AsyncResult.cs: Added new fields to store async calls results.
+
+2003-08-17 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * MethodCall.cs: Throw the right exception if the target object is not
+ found when resolving the target method.
+
+2003-08-17 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * CallContext.cs: Fixed bug #47686.
+
+2003-08-14 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * CADMessages.cs: Enabled smuggeling of primitive type parameters (as suggested
+ by Patrik).
+ * CallContext.cs: Impplemented.
+ * LogicalCallContext.cs: Implemented.
+ * MonoMethodMessage.cs: Added setter for LogicalCallContext property.
+
+2003-07-25 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * ArgInfo.cs: Use Type.IsByRef to check if a parameter is a ref or
+ out parameter.
+ * MethodCall.cs: Improved checking if the requested client type for the target
+ object can be casted to the server type. Now not only checks type name,
+ but also the type hierarchy and implemented interfaces. Also implemented
+ method ToString().
+ * MethodResponse.cs: Imlemented ToString().
+ * ReturnMessage.cs: In the exception constructor, allow the request to be null.
+ Implemented ToString().
+ * StackBuilderSink.cs: Check type of parameters before calling the target method.
+ (a wrong type would make the runtime to crash).
+
+2003-07-23 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * MethodDictionary.cs: Fixed Add method. If the property is method
+ property, then there is no need it to the internal properties table.
+
+2003-07-21 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * MethodCall.cs: Fixed copy constructor, when the message to copy does not
+ implement IMethodMessage.
+
+2003-07-09 Jean-Marc André <jean-marc.andre@polymtl.ca>
+
+ * ReturnMessage.cs: Bug fix. GetOutArgName didn't return the right Name for the given out parameter.
+
+2003-05-13 Lluis Sanchez Gual <lluis@ideary.com>
+
+ * MethodCall.cs: ResolveMethod now uses the type of the target object (identified
+ by the uri) instead of the type specified by TypeName (only if both types have
+ the same name).
+
+2003-04-10 Lluis Sanchez Gual <lluis@ideary.com>
+
+ * AsyncResult.cs: implemented some methods.
+ * ClientContextTerminatorSink.cs: Improved support for Async and OneWay messages.
+ * MonoMethodMessage.cs: Added member needed to support Async messages.
+ * ServerObjectTerminatorSink.cs: Improved support for Async and OneWay messages.
+
+2003-03-21 Lluis Sanchez Gual <lluis@ideary.com>
+
+ * CADMessages.cs: removed some warnings.
+ * ClientContextTerminatorSink.cs: added support for dynamic sinks.
+ * ConstructionCall.cs: added internal property IsContextOK.
+ * MethodResponse.cs: fixed management of output parameters.
+ * ServerObjectTerminatorSink.cs: added support for dynamic sinks.
+
+2003-03-03 Lluis Sanchez Gual <lluis@ideary.com>
+
+ * ConstructionCall.cs: Added internal constructor. Added setter for activation attributes.
+ Some other minor corrections.
+ * EnvoyTerminatorSink.cs: Message now redirected to current context's client sink chain.
+ * MethodCall.cs: Added method for copying messages.
+
+2003-02-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * MethodCall.cs:
+ (MethodBase): resolve the method if it's not already done.
+
+2003-02-18 Lluis Sanchez Gual <lluis@ideary.com>
+
+ * IInternalMessage.cs: Added. Provides some useful methods for method messages.
+ * ServerContextTerminatorSink.cs: Added support for construction messages.
+ * MethodCall.cs: Implemented serialization support. Added support for IInternalMessage.
+ * MethodDictionary.cs: Added support for IInternalMessage.
+ * MethodResponse.cs: Added serialization support. Added support for IInternalMessage.
+ * MonoMethodMessage.cs: Added support for IInternalMessage.
+ * ReturnMessage.cs: Added support for IInternalMessage.
+ * ClientContextTerminatorSink.cs: Added.
+ * ConstructionCall.cs: Added.
+ * ConstructionCallDictionary.cs: Added.
+ * ConstructionResponse.cs: Added.
+ * EnvoyTerminatorSink.cs: Added.
+
+2003-02-07 Patrik Torstensson
+
+ * CADMessages.cs: Disable smuggeling of objects cross domain, still issues casing remoting
+ to fail. (fixed formating)
+
+2003-02-07 Lluis Sanchez Gual <lluis@ideary.com>
+
+ * CADMessages.cs: Some minor changes that allow reuse of ObjRef methods.
+
+2003-02-05 Lluis Sanchez Gual <lluis@ideary.com>
+
+ * ReturnMessage.cs, MethodResponse.cs: OutArgs initialized to an empty array
+ when the the message returns an exception.
+
+2003-02-04 Lluis Sanchez Gual <lluis@ideary.com>
+
+ * ServerContextTerminatorSink.cs: Modified to work with new types of identities.
+ * ReturnMessage.cs: Removed internal dependence to MonoMethodMessage. It is not needed now.
+ * MonoMethodMessage.cs: Now only has method call keys in the dictionary.
+ * MethodReturnDictionary.cs, MethodCallDictionary.cs: Made public the list of
+ method keys. This list is used in MessageFormatter.
+ * MethodDictionary.cs: Corrected some minor bugs.
+ * MethodCall.cs: minor correction on constructor.
+
2003-02-03 Patrik Torstensson
* MethodResponse.cs: Implemented