1 2006-08-23 Lluis Sanchez Gual <lluis@novell.com>
3 * ObjRef.cs: Throw a TypeLoadException exception if the referenced
4 type can't be found. That's better than a nullref.
6 2006-07-15 Jonathan Chambers <joncham@gmail.com>
8 * RemotingServices.cs: Begin implementing COM Interop.
10 2006-04-27 Robert Jordan <robertj@gmx.net>
12 * RemotingServices.cs (IsObjectOutOfAppDomain, IsObjectOutOfContext):
13 add parameter validation. Fixes bug #78164.
15 2006-04-07 Sebastien Pouliot <sebastien@ximian.com>
17 * RemotingServices.cs: Assert SerializationFormatter permissions if
18 the runtime wants to do cross-appdomain serialization (this will need
19 to be better reviewed/tested later but it fix some current issues).
21 2005-12-07 Robert Jordan <robertj@gmx.net>
23 * RemotingServices.cs: Accept the application name beeing a part of
24 the object URI. Fixes bug #76809.
26 2005-11-06 Svetlana Zholkovsky <svetlanaz@mainsoft.com>
28 * RemotingConfiguration.cs: Fix ConfigHandler.OnEndElement to handle case
29 when the configuration file contains custom providers with child elements.
30 * ServerIdentity.cs: clear _serverSink field in the DisposeServerObject method.
32 2005-10-18 Lluis Sanchez Gual <lluis@novell.com>
34 * RemotingConfiguration.cs: The value for customErrors tag must be
35 case-insensitive. Fixes bug #76466 (patch by Robert Jordan).
37 2005-10-17 Lluis Sanchez Gual <lluis@novell.com>
39 * RemotingConfiguration.cs: Rethrow catched exceptions
40 in ReadConfigFile (patch by Robert Jordan). Fixes bug #76434.
41 Properly set the application name.
43 2005-08-18 Lluis Sanchez Gual <lluis@novell.com>
45 * RemotingServices.cs: Notify marshals, unmarshals and disconnections
46 to TrackingServices. Fixes bug #75814.
48 2005-06-06 Zoltan Varga <vargaz@freemail.hu>
50 * ObjRef.cs RemotingServices.cs: Add some missing 2.0 attributes.
52 2005-05-26 Ben Maurer <bmaurer@ximian.com>
54 * InternalRemotingServices.cs: Move hashtable init to
55 cctor. Removes double checked locking and locking on typeof.
57 2005-05-17 Lluis Sanchez Gual <lluis@novell.com>
59 * ObjRef.cs: Use IsInstanceOfType instead of IsAssignableFrom
60 since GetType() may not return the correct type if the object is
63 2005-05-12 Atsushi Enomoto <atsushi@ximian.com>
65 * RemotingConfiguration.cs : MiniParser->SmallXmlParser changes.
67 2005-05-09 Lluis Sanchez Gual <lluis@novell.com>
69 * RemotingServices.cs: Fix warning.
71 2004-10-26 Lluis Sanchez Gual <lluis@novell.com>
73 * RemotingServices.cs: Added several serialization methods needed by
74 the cross app domain wrappers.
75 In GetOrCreateClientIdentity(), set the domain of the proxy if it
76 references an object in another domain.
78 2004-09-28 Lluis Sanchez Gual <lluis@novell.com>
80 * RemotingServices.cs: Allways pass the uri when calling
81 GetClientChannelSinkChain, even if it has channel data.
84 2004-09-27 Lluis Sanchez Gual <lluis@novell.com>
86 * ServerIdentity.cs: Only set the target identity if it has not already
89 2004-09-23 Lluis Sanchez Gual <lluis@novell.com>
91 * RemotingServices.cs: Fixed wrong patch for InternalExecuteMessage.
92 The MethodBase in the message may not be the same type of the object
93 (the method can be called using an interface).
95 2004-09-22 Lluis Sanchez Gual <lluis@novell.com>
97 * RemotingServices.cs: In InternalExecute, use MethodBase instead
98 of MonoMethod, so it can be also used for running constructors.
99 * ServerIdentity.cs: Added methods for getting and setting the client
100 proxy in ClientActivatedIdentity. This is needed for CBOs, since
101 messages need to be dispatched using the proxy as "this", not the
104 2004-09-11 Ben Maurer <bmaurer@users.sourceforge.net>
106 * RemotingServices.cs: use MethodBase rather than looking
107 for the method ourselves. It has higher perf in x-ad calls.
109 2004-09-05 Ben Maurer <bmaurer@users.sourceforge.net>
111 * RemotingServices.cs (IsMethodOverloaded): use the internal
112 method GetMethodsByName. It does much less work than GetMembers.
114 2004-09-05 Ben Maurer <bmaurer@users.sourceforge.net>
116 * RemotingServices.cs (IsOneWay): use IsDefined rather than
117 GetCustomAttributes. It is much faster.
119 2004-07-22 Lluis Sanchez Gual <lluis@novell.com>
121 * ObjRef.cs: Fixed type check in in ObjRef constructor. The requested class
122 must be the object class or a base class. This fixes bug #61249.
124 2004-07-22 Lluis Sanchez Gual <lluis@novell.com>
126 * RemotingServices.cs: Changed GetMethodBaseFromMethodMessage so its code
127 can be reused internally. Also fixed bug when gettting a method from an
130 2004-07-02 Lluis Sanchez Gual <lluis@ximian.com>
132 * ServerIdentity.cs: When disposing an identity, detach the identity from
133 the object, so it can be safely marshalled again.
134 * RemotingServices.cs: Fixed IsObjectOutOfContext and
135 IsObjectOutOfAppDomain. In SetObjectUriForMarshal, take into account
138 2004-07-01 Lluis Sanchez Gual <lluis@ximian.com>
140 * RemotingConfiguration.cs: Avoid adding "id" and "type" as custom
141 properties of providers. This fixes bug #60934.
143 2004-06-15 Gert Driesen <drieseng@users.sourceforge.net>
145 * RemotingTimeoutException.cs: added missing serialization ctor
146 * ServerException.cs: added missing serialization ctor
148 2004-06-15 Lluis Sanchez Gual <lluis@ximian.com>
150 * RemotingConfiguration.cs: Read application name from configuraation file.
152 2004-06-01 Gert Driesen <drieseng@users.sourceforge.net>
154 * RemotingServices.cs: Added missing Conditional attribute and
155 MonoTODO attribute on LogRemotingStage
157 2004-05-11 Lluis Sanchez Gual <lluis@ximian.com>
159 * RemotingConfiguration.cs: Added method for configuring chanels with the
160 delayed client load flag. Added locks for accessing internal tables.
162 2004-05-11 Lluis Sanchez Gual <lluis@ximian.com>
164 * RemotingServices.cs: In GetMethodBaseFromMethodMessage, look for
165 constructors if no method is found.
167 2004-05-07 Lluis Sanchez Gual <lluis@ximian.com>
169 * SoapServices.cs: Support encoded namespace names in
170 DecodeXmlNamespaceForClrTypeNamespace. Thanks to George Kodinov.
172 2004-04-28 Lluis Sanchez Gual <lluis@ximian.com>
174 * RemotingServices.cs: When create a ReturnMessage, provide an array with
175 all parameters, including input parameters.
177 2004-04-26 Lluis Sanchez Gual <lluis@ximian.com>
179 * ObjRef.cs: Little optimization.
181 2004-03-09 Lluis Sanchez Gual <lluis@ximian.com>
183 * RemotingServices.cs: Marshal(): If the object is a proxy, return the ObjRef
184 stored in the identity object.
186 2004-03-04 Lluis Sanchez Gual <lluis@ximian.com>
188 * Identity.cs: Removed object type from Identity, since it is hold
189 now in the IRemotingTypeInfo object.
190 * ServerIdentity.cs: Added object type.
191 * TypeInfo.cs: Added null check for the class hierarchy.
193 2004-02-17 Lluis Sanchez Gual <lluis@ximian.com>
195 * RemotingServices.cs: Client identities are registered using the full url,
196 not the object uri, so they must be unregistered using the same key.
198 2004-01-24 Lluis Sanchez Gual <lluis@ximian.com>
200 * TypeInfo.cs: The list of interfaces may be null. Added check.
202 2004-01-19 Lluis Sanchez Gual <lluis@ximian.com>
204 * RemotingServices.cs: When marshalling a custom proxy, allow the creation
205 of a new identity. This fixes bug #52921.
206 * ServerIdentity.cs: Allow the creation of server identities that
207 represent a custom proxy instead of a real object.
209 2003-12-10 Lluis Sanchez Gual <lluis@ximian.com>
211 * SoapServices.cs: Little fix: correctly encode namespaces.
213 2003-12-10 Martin Willemoes Hansen <mwh@sysrq.dk>
215 * RemotingConfiguration.cs: fixed wrong attribute name
216 sponsorShipTimeOut it should be sponsorshipTimeout
218 2003-12-03 Lluis Sanchez Gual <lluis@ximian.com>
220 * SoapServices.cs: Little fix in namespace construction.
222 2003-11-28 Dick Porter <dick@ximian.com>
225 * RemotingConfiguration.cs: Use the char form of IndexOf, so that
226 the comparison is done with the Invariant culture.
228 2003-11-26 Lluis Sanchez Gual <lluis@ximian.com>
230 * InternalRemotingServices.cs: Fixed GetCachedSoapAttribute().
231 * RemotingConfiguration.cs: Implemented CustomErrorsEnabled().
232 Added support for soapInterop configuration section.
233 * SoapServices.cs: Several fixes to match MS behavior.
235 2003-11-25 Lluis Sanchez Gual <lluis@ximian.com>
237 * InternalRemotingServices.cs: Implemented GetCachedSoapAttribute().
238 * SoapServices.cs: Implemented missing methods.
239 * WellKnownClientTypeEntry.cs: Initialize object_url in constructor.
241 2003-11-24 Jackson Harper <jackson@ximian.com>
243 * ServerIdentity.cs: Get non public types, so remote objects can
244 be non public or have non public constructors.
246 2003-11-19 Lluis Sanchez Gual <lluis@ximian.com>
248 * InternalRemotingServices.cs: Added missing attributes.
250 2003-11-17 Lluis Sanchez Gual <lluis@ximian.com>
252 * InternalRemotingServices.cs: Added CLSCompliant to SetServerIdentity
253 (MethodCall is not compliant)
254 * IObjectHandle.cs: Set correct value for Guid.
256 2003-11-16 Lluis Sanchez Gual <lluis@ximian.com>
258 * IObjectHandle.cs, ObjectHandle.cs: Added missing attributes.
259 * RemotingConfiguration.cs: GetRegisteredActivatedClientTypes made public.
260 Declared CustomErrorsEnabled() method.
261 * RemotingServices.cs: Implemented GetSessionIdForMethodMessage().
262 IsAsyncMessage must be internal.
263 * InternalRemotingServices.cs: Added.
265 2003-11-13 Lluis Sanchez Gual <lluis@ximian.com>
267 * RemotingServices.cs: Add ".rem" suffix to generated uri names.
269 2003-11-12 Lluis Sanchez Gual <lluis@ximian.com>
271 * RemotingConfiguration.cs: Implemented all remaining functionality.
272 * ActivatedClientTypeEntry.cs: Set the value of ObjectType in the constructor
273 * ActivatedServiceTypeEntry.cs, WellKnownClientTypeEntry.cs,
274 WellKnownServiceTypeEntry.cs: Check that the provided type is valid.
276 2003-11-11 Lluis Sanchez Gual <lluis@ximian.com>
278 * RemotingConfiguration.cs: Added initial implementation of Configure method
281 2003-11-11 Lluis Sanchez Gual <lluis@ximian.com>
283 * ActivatedClientTypeEntry.cs, ActivatedServiceTypeEntry.cs,
284 IRemotingTypeInfo.cs, RemotingServices.cs, WellKnownServiceTypeEntry.cs:
287 2003-11-01 Zoltan Varga <vargaz@freemail.hu>
289 * RemotingServices.cs (GetDomainProxy): Use the new InvokeInDomain
290 function instead of calling SetDomain.
292 2003-10-23 Lluis Sanchez Gual <lluis@ximian.com>
294 * RemotingServices.cs: Do not create an identity for an object if it
297 2003-10-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
299 * RemotingServices.cs: (NewUri) use Interlocked.Increment on next_id.
301 2003-10-09 Lluis Sanchez Gual <lluis@ximian.com>
303 * ObjRef.cs: Added new constructor to support CAD channel.
305 2003-10-08 Lluis Sanchez Gual <lluis@ximian.com>
307 * Identity.cs, RemotingServices.cs: Fixed memory leak. I Changed reference
308 to proxy in ClientIdentity to a WeakReference. This fixes a memory leak.
309 * RemotingServices.cs: Ignore first "/" char in uris when looking for
311 Take into account that identity now has a weak reference
314 2003-09-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
316 * ObjectHandle.cs: simplified and fix InitializeLifetimeService.
318 2003-09-11 Lluis Sanchez Gual <lluis@ximian.com>
320 * RemotingServices.cs: Collect value of parameters with the Out flag
321 into the return message. Also set and reset CallContext. Added method
324 2003-08-25 Lluis Sanchez Gual <lluis@ximian.com>
326 * RemotingServices.cs: Some small fixes.
328 2003-08-14 Lluis Sanchez Gual <lluis@ximian.com>
330 * ObjRef.cs: Implemented IsFromThisProcess().
331 * RemotingServices.cs: Implemented methods GetLifetimeService and
332 GetEnvoyChainForProxy. Stubbed LogRemotingStage.
334 2003-07-29 Lluis Sanchez Gual <lluis@ximian.com>
336 * RemotingServices.cs: GetObjectUri(): For client proxies, return
339 2003-07-26 Duncan Mak <duncan@ximian.com>
341 * SoapServices.cs (XmlNsForClrTypeWithNsAndAssembly):
342 Fixed typo. It's 'Ns', but 'Ms'.
344 2003-07-25 Lluis Sanchez Gual <lluis@ximian.com>
346 * RemotingServices.cs: If the type for a proxy is not available in
347 the client site, use the MarshalByRefObject type.
349 2003-07-21 Lluis Sanchez Gual <lluis@ximian.com>
351 * ServerIdentity.cs: Fixed bug #46645
353 2003-07-16 Lluis Sanchez Gual <lluis@ximian.com>
355 * Identity.cs: Added TargetUri property
357 2003-04-10 Lluis Sanchez Gual <lluis@ideary.com>
359 * ObjRef.cs: Fixed bug #43187, based on the patch by Jean-Marc Andre
361 2003-04-10 Lluis Sanchez Gual <lluis@ideary.com>
363 * ObjRef.cs: Renamed ChannelInfoStore to ChannelInfo (match MS.NET)
364 * RemotingServices.cs: Added method to help support Async messages.
365 * RemotingConfiguration.cs: Implemented property ProcessID.
367 2003-03-24 Lluis Sanchez Gual <lluis@ideary.com>
369 * RemotingServices.cs: Fixed bug #39915
371 2003-03-20 Lluis Sanchez Gual <lluis@ideary.com>
373 * Identity.cs: Added support for dynamic properties.
374 * ObjRef.cs: Removed some [MonoTODO]
375 * TypeInfo.cs: Added support for interfaces.
376 * RemotingServices.cs: Several fixes to support interfaces in proxies.
378 2003-03-15 Lluis Sanchez Gual <lluis@ideary.com>
380 * RemotingServices.cs: fixes bugs #39380 and #39331.
382 2003-02-25 Lluis Sanchez Gual <lluis@ideary.com>
384 * Identity.cs: Added property to check if an identity is connected (it is remotely accesible)
385 * ObjRef.cs: Added internal helper method for getting the server type of an ObjRef.
386 * RemotingServices.cs: Implemented Disconnect method. Added support for custom proxy
387 creating using ProxyAttribute. Added support for activation attributes in creation
388 of proxies. Some other minor corrections.
389 * ServerIdentity.cs: minor corrections.
391 2003-02-18 Lluis Sanchez Gual <lluis@ideary.com>
393 * Identity.cs: Added envoy message sink.
394 * ObjRef.cs: Implemented EnvoySink property
395 * RemotingConfiguration.cs: now enables proxy creation for types registered
396 as ClientActivatedType or WellKnownClientType.
397 * RemotingServices.cs: Added support for ContextBoundObjects.
398 Added methods for creating proxies.
399 * ServerIdentity.cs: Added initialization of envoy sink.
400 * EnvoyInfo.cs: Added. It is an implementation on IEnvoyInfo.
402 2003-02-08 Sebastien Pouliot <spouliot@videotron.ca>
404 * RemotingConfiguration.cs: Changed using to Mono.Xml for MiniParser.
406 2003-02-07 Patrik Torstensson
408 * RemotingServices.cs: Always marshal an object in GetObjectData
410 2003-02-07 Lluis Sanchez Gual <lluis@ideary.com>
412 * Identity.cs: Added ObjRef attribute, that holds the objref of the object.
413 Removed implementation of CreateObjRef. Now it is implemented in the derived classes.
414 * ServerIdentity.cs: Added implementation of CreateObjRef.
415 * RemotingServices.cs: Changed implementation of GetRemoteObject and GetClientIdentity.
416 Now they only have and ObjRef as input parameter. This is the objref received from
417 the server. Unmarshal() also checks if the objref is for a well known object.
418 In this case, a proxy is always created, but if not, it tries to get the real object.
419 * ObjRef.cs: Added some flags that have info for marshalling/unmarshalling.
420 Changed behavior of IsPossibleToCAD. Now returns false. Returning true makes serialization
421 of this ObjRef to fail in the target AD. Added method UpdateChannelInfo.
423 2003-02-04 Lluis Sanchez Gual <lluis@ideary.com>
425 * Identity.cs: created and identity class for each identity type. It is a more clear design.
426 * ServerIdentity.cs: added. Implements identity funtionality specific to server objects
427 * RemotingServices.cs: Modified to work with new types of identities.
428 * RemotingConfiguration.cs: Modified to work with new types of identities.
429 * ObjRef.cs: Added initialization of channel info in default constructor.
430 * Identity.cs: Added support for WellKnownService objects.
432 2003-02-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
434 * RemotingServices.cs:
435 (GetMethodBaseFromMethodMessage): fixed to make it also work with
436 internal methods without MethodSignature (see ApplicationHost.cs).
438 2003-02-03 Patrik Torstensson
440 * ObjRef.cs: added copy constructor and two helpers for cross
441 appdomain message marshalling.
442 * RemotingServices.cs: Added helper to create transparant proxy for appdomain, and
443 register internal cross appdomain channel.
445 2003-01-29 Lluis Sanchez Gual <lluis@ideary.com>
447 * RemotingServices.cs: Added support for WellKnownService objects.
448 * RemotingConfiguration.cs: Implemented most of methods (Configure is not working yet).
449 * ObjRef.cs: Added initialization of channel info in default constructor.
450 * Identity.cs: Added support for WellKnownService objects.
452 2003-01-28 Patrik Torstensson
454 * ObjRef.cs: Fixed Objref marshalling flags
456 2003-01-24 Lluis Sanchez Gual <lluis@ideary.com>
458 * RemotingServices.cs: Implemented some missing methods: IsMethodOverloaded,
459 SetObjectUriForMarshal, IsOneWay, IsObjectOutOfAppDomain,
460 IsObjectOutOfContext, GetObjRefForProxy, GetObjectData,
461 GetMethodBaseFromMethodMessage.
462 * TypeInfo.cs: Added.
463 * ObjRef.cs: Implemented serialization and added support for IRemotingTypeInfo.
465 2002-12-28 Lluis Sanchez Gual <lluis@ideary.com>
467 * SoapServices.cs: Implemented some methods
469 2002-12-20 Lluis Sanchez Gual <lluis@ideary.com>
471 * ObjRef.cs: Implementation now based on methods of RemotingServices.
472 * RemotingServices.cs: Remoting information now kept in Identity objects.
473 All methods adapted to work with identities.
474 Renamed ExecuteMessage to InternalExecuteMessage. ExecuteMessage should
475 not make a direct call to the object.
476 * Identity.cs: added.
478 2002-12-11 Jaime Anguiano Olarra <jaime@gnome.org>
480 * RemotingConfiguration.cs: added to the CVS.
482 2002-11-29 Jaime Anguiano Olarra <jaime@gnome.org>
484 * ObjectHandle.cs: added implementation for InitializeLifetimeService
488 2002-11-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
490 * SoapServices.cs: fix error CS3005.
492 2002-09-03 Dietmar Maurer <dietmar@ximian.com>
494 * RemotingServices.cs: add an unique app_id string used to generate
497 * ObjRef.cs: added serialization support
499 2002-08-31 Dietmar Maurer <dietmar@ximian.com>
501 * ObjRef.cs: gather the channel date at creation time.
503 2002-08-20 Dietmar Maurer <dietmar@ximian.com>
505 * RemotingServices.cs: Connect impl.
507 2002-08-02 Duncan Mak <duncan@ximian.com>
509 * ActivatedClientTypeEntry.cs:
510 * ActivatedServiceTypeEntry.cs:
511 * WellKnownClientTypeEntry.cs:
512 * WellKnownServiceTypeEntry.cs: Various visibility fixes.
514 2002-07-31 Duncan Mak <duncan@ximian.com>
517 * ActivatedClientTypeEntry.cs:
518 * ActivatedServiceTypeEntry.cs:
519 * WellKnownClientTypeEntry.cs:
520 * WellKnownServiceTypeEntry.cs: Added all the classes derived from TypeEntry.
522 * RemotingException.cs:
523 * RemotingTimeoutException.cs:
524 * ServerException.cs: Added missing exceptions.
528 * IRemotingTypeInfo.cs: Added missing interfaces.
530 2002-07-24 Duncan Mak <duncan@ximian.com>
532 * LeaseState.cs: Moved to System.Runtime.Remoting.Lifetime.
534 * SoapMethodOption.cs:
535 * SoapOption.cs: Removed and merged into System.Runtime.Remoting.Metadata.SoapOption.
537 2002-07-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
539 * IObjectHandle.cs: New file.
540 * ObjectHandle.cs: implemented constructor and Unwrap.
542 2002-01-05 Ravi Pratap <ravi@ximian.com>
544 * ObjRef.cs : Strew the MonoTODO attribute.
546 2001-09-02 Miguel de Icaza <miguel@ximian.com>
548 * ObjRef.cs: Include System.Runtime.Serialization