2004-06-18 Sebastien Pouliot * ReturnMessage.cs: Added IMessage interface to class definition. 2004-06-17 Gert Driesen * ReturnMessage.cs: remove serializable attribute to match MS.NET 2004-05-11 Lluis Sanchez Gual * MethodResponse.cs: Only get the MethodBase from type and method name when requested. 2004-05-11 Lluis Sanchez Gual * MethodResponse.cs: In the serialization constructor, initialize MethodBase using the method name and type name. 2004-05-03 Lluis Sanchez Gual * MethodResponse.cs, ReturnMessage.cs: More null checks. 2004-04-30 Lluis Sanchez Gual * MethodResponse.cs, ReturnMessage.cs: Added null checks. 2004-04-29 Raja R Harinath * MethodResponse.cs (MethodResponse.OutArgCount) (MethodResponse.GetOutArg): Make reference to _args null-safe. 2004-04-28 Lluis Sanchez Gual * 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 * CADMessages.cs: Marshal the correct return args for the return message. 2004-02-18 Gonzalo Paniagua Javier * AsyncResult.cs: (AsyncWaitHandle): create the handle if not done yet. 2004-01-19 Lluis Sanchez Gual * 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 * ConstructionResponse.cs: Added constructor for exception response. 2003-12-22 Lluis Sanchez Gual * 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 * AsyncResult.cs: Call delegate on async call completion. * CADMessages.cs: Removed TODO. 2003-11-28 Dick Porter * MethodCall.cs: Use the char form of IndexOf, so that the comparison is done with the Invariant culture. 2003-11-26 Lluis Sanchez Gual * MethodCall.cs, MethodResponse.cs, ReturnMessage.cs: Implemented HasVarArgs property. 2003-11-25 Lluis Sanchez Gual * AsyncResult.cs, CallContext.cs: Added private constructor. * ReturnMessage.cs: Added parameter array length check. 2003-11-18 Lluis Sanchez Gual * 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 * StackBuilderSink.cs: Implemented AsyncProcessMessage(). 2003-11-16 Lluis Sanchez Gual * 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 * ConstructionCall.cs, ReturnMessage.cs: minor fixes. 2003-10-23 Lluis Sanchez Gual * MethodCall.cs: In the constructor that takes a CADMethodCallMessage object, make sure strings are not reused across domains. 2003-10-08 Lluis Sanchez Gual * 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 * 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 * 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 * MonoMethodMessage.cs: Moved CallType into namespace declaration. 2003-08-25 Lluis Sanchez Gual * 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 * 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 * MethodCall.cs: Throw the right exception if the target object is not found when resolving the target method. 2003-08-17 Lluis Sanchez Gual * CallContext.cs: Fixed bug #47686. 2003-08-14 Lluis Sanchez Gual * 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 * 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 * 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 * MethodCall.cs: Fixed copy constructor, when the message to copy does not implement IMethodMessage. 2003-07-09 Jean-Marc André * ReturnMessage.cs: Bug fix. GetOutArgName didn't return the right Name for the given out parameter. 2003-05-13 Lluis Sanchez Gual * 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 * 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 * 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 * 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 * MethodCall.cs: (MethodBase): resolve the method if it's not already done. 2003-02-18 Lluis Sanchez Gual * 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 * CADMessages.cs: Some minor changes that allow reuse of ObjRef methods. 2003-02-05 Lluis Sanchez Gual * ReturnMessage.cs, MethodResponse.cs: OutArgs initialized to an empty array when the the message returns an exception. 2003-02-04 Lluis Sanchez Gual * 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 * MethodCall.cs: added support for Cross appdomain messages, implemented some missing methods. * MethodDictionary.cs: made serializible and added methods to get internal properties. * MonoMethodMessage.cs: internal dictionary is now serializible * ReturnMessage.cs: made serializible * ErrorMessage.cs: typo fix * CADMessage.cs: new file, implements cross appdomain messages, both call and return. Princip of this classes is to move unmutable objects and primitivs between appdomains without marshalling. This increase performance a lot of the cross appdomain channel. 2003-01-29 Lluis Sanchez Gual * ServerContextTerminatorSink.cs: now it forwards messages to the target identity, which knows how to manage each type of service. * StackBuilderSink.cs: added a reference to the target object. 2002-12-28 Patrik Torstensson * RemotingSurrogateSelector.cs: Added serialization support for MBR's. * RemotingSurrogate.cs: Moved ObjRefSurrogate and MBRSurrogate to new file. * ErrorMessage.cs: Dummy used when an exception occours. * MonoMethodMessage.cs: Added Serializable and support for be created with null methods 2002-12-26 Lluis Sanchez Gual * ReturnMessage.cs: Implemented property Properties * RemotingSurrogateSelector.cs: Implemented serialization support for ObjRef. * MonoMethodMessage.cs: Implemented Properties and MethodSignature properties. * MethodReturnMessageWrapper.cs: Implemented. * MethodCallMessageWrapper.cs: Implemented. * MethodCall.cs: Implemented. * Header.cs: Small corrections to make it work. * MethodDictionary.cs: Added. * MethodCallDictionary.cs: Added. * MethodReturnDictionary.cs: Added. * ArgInfo.cs: Added. 2002-12-20 Lluis Sanchez Gual * MonoMethodMessage.cs: Implemented property Uri 2002-12-20 Lluis Sanchez Gual * ServerContextTerminatorSink.cs: Added * ServerObjectTerminatorSink.cs: Added * StackBuilderSink.cs: Added 2002-12-10 Jaime Anguiano Olarra * CallContext.c: Added to the CVS. 2002-08-22 Nick Drochak * RemotingSurrogateSelector.cs (SetRootObject): Function should return void, not object. 2002-08-03 Duncan Mak * MethodCall.cs: * MethodResponse.cs: More visibility fixes. Hopefully this is the last of it. 2002-08-02 Duncan Mak * MethodCall.cs: * MethodCallMessageWrapper.cs: * MethodReturnMessageWrapper.cs: Various visibility fixes. * RemotingSurrogateSelector.cs: Added, replaced RemoteSurrogateSelector. 2002-07-31 Duncan Mak * MethodCallMessageWrapper.cs: * MethodReturnMessageWrapper.cs: Revert the last patch and made it work. Thanks to Gonzalo for reminding me to chain the constructors. 2002-07-31 Duncan Mak * MethodCallMessageWrapper.cs: * MethodReturnMessageWrapper.cs: Remove reference to InternalMessageWrapper. It's probably an MS private class, even though it's visible in the documentation. 2002-07-31 Duncan Mak * InternalMessageWrapper.cs: * MessageSurrogateFilter.cs: * MethodCall.cs: * MethodCallMessageWrapper.cs: * MethodResponse.cs: * MethodReturnMessageWrapper.cs: * RemoteSurrogateSelector.cs: Added to CVS. * MonoMethodMessage.cs: * ReturnMessage.cs: Add set in the Uri property. 2002-07-24 Duncan Mak * OneWayAttribute.cs: Added to CVS. 2002-07-23 Duncan Mak * HeaderHandler.cs: Added. * IRemotingFormatter.cs: Added to CVS. * IMethodMessage.cs: IMethodMessage inherits from IMessage. Thu Apr 4 13:13:20 CEST 2002 Paolo Molaro * IMethodReturnMessage.cs: added IMethodMessage, IMessage interfaces. * ReturnMessage.cs: stubbed out Properties property. 2002-03-21 Dietmar Maurer * AsyncResult.cs: impl. 2002/03/04 Nick Drochak * Header.cs: Change properties into fields where they should be.