e79aa3c0ed
Former-commit-id: a2155e9bd80020e49e72e86c44da02a8ac0e57a4
45 lines
1.4 KiB
C#
45 lines
1.4 KiB
C#
//-----------------------------------------------------------------------------
|
|
// Copyright (c) Microsoft Corporation. All rights reserved.
|
|
//-----------------------------------------------------------------------------
|
|
|
|
namespace System.ServiceModel.Dispatcher
|
|
{
|
|
using System;
|
|
using System.ServiceModel;
|
|
using System.ServiceModel.Channels;
|
|
|
|
internal class PerCallInstanceContextProvider : InstanceContextProviderBase
|
|
{
|
|
internal PerCallInstanceContextProvider(DispatchRuntime dispatchRuntime)
|
|
: base(dispatchRuntime)
|
|
{
|
|
}
|
|
|
|
#region IInstanceContextProvider Members
|
|
|
|
public override InstanceContext GetExistingInstanceContext(Message message, IContextChannel channel)
|
|
{
|
|
//Always return null so we will create new InstanceContext for each message
|
|
return null;
|
|
}
|
|
|
|
public override void InitializeInstanceContext(InstanceContext instanceContext, Message message, IContextChannel channel)
|
|
{
|
|
//no-op
|
|
}
|
|
|
|
public override bool IsIdle(InstanceContext instanceContext)
|
|
{
|
|
//By default return true if no channels are bound to this context
|
|
return true;
|
|
}
|
|
|
|
public override void NotifyIdle(InstanceContextIdleCallback callback, InstanceContext instanceContext)
|
|
{
|
|
//no-op
|
|
}
|
|
|
|
#endregion
|
|
}
|
|
}
|