scripts
This commit is contained in:
@@ -0,0 +1,45 @@
|
||||
using System;
|
||||
using System.Runtime.Remoting.Contexts;
|
||||
using System.Runtime.Remoting.Messaging;
|
||||
|
||||
namespace System.Runtime.Remoting
|
||||
{
|
||||
// Token: 0x02000452 RID: 1106
|
||||
internal class SingleCallIdentity : ServerIdentity
|
||||
{
|
||||
// Token: 0x06002AA7 RID: 10919 RVA: 0x0008A3F0 File Offset: 0x000885F0
|
||||
public SingleCallIdentity(string objectUri, Context context, Type objectType)
|
||||
: base(objectUri, context, objectType)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x06002AA8 RID: 10920 RVA: 0x0008A3FC File Offset: 0x000885FC
|
||||
public override IMessage SyncObjectProcessMessage(IMessage msg)
|
||||
{
|
||||
MarshalByRefObject marshalByRefObject = (MarshalByRefObject)Activator.CreateInstance(this._objectType, true);
|
||||
if (marshalByRefObject.ObjectIdentity == null)
|
||||
{
|
||||
marshalByRefObject.ObjectIdentity = this;
|
||||
}
|
||||
IMessageSink messageSink = this._context.CreateServerObjectSinkChain(marshalByRefObject, false);
|
||||
IMessage message = messageSink.SyncProcessMessage(msg);
|
||||
if (marshalByRefObject is IDisposable)
|
||||
{
|
||||
((IDisposable)marshalByRefObject).Dispose();
|
||||
}
|
||||
return message;
|
||||
}
|
||||
|
||||
// Token: 0x06002AA9 RID: 10921 RVA: 0x0008A45C File Offset: 0x0008865C
|
||||
public override IMessageCtrl AsyncObjectProcessMessage(IMessage msg, IMessageSink replySink)
|
||||
{
|
||||
MarshalByRefObject marshalByRefObject = (MarshalByRefObject)Activator.CreateInstance(this._objectType, true);
|
||||
IMessageSink messageSink = this._context.CreateServerObjectSinkChain(marshalByRefObject, false);
|
||||
if (marshalByRefObject is IDisposable)
|
||||
{
|
||||
replySink = new DisposerReplySink(replySink, (IDisposable)marshalByRefObject);
|
||||
}
|
||||
return messageSink.AsyncProcessMessage(msg, replySink);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user