System.ServiceModel.Channels.ChannelReliableSession
namespace System.ServiceModel.Channels
{
internal abstract class ChannelReliableSession : ISession
{
public delegate void UnblockChannelCloseHandler ();
protected ChannelBase Channel { get; }
protected Guard Guard { get; }
public string Id { get; }
public TimeSpan InitiationTime { get; set; }
public UniqueId InputID { get; set; }
protected FaultHelper FaultHelper { get; }
public UniqueId OutputID { get; set; }
public abstract UniqueId SequenceID { get; }
public IReliableFactorySettings Settings { get; }
protected object ThisLock { get; }
public UnblockChannelCloseHandler UnblockChannelCloseCallback {
set;
}
protected ChannelReliableSession(ChannelBase channel, IReliableFactorySettings settings, IReliableChannelBinder binder, FaultHelper faultHelper);
public virtual void Abort();
public abstract Task OpenAsync(TimeSpan timeout);
public virtual Task CloseAsync(TimeSpan timeout);
public void CloseSession();
protected virtual void FaultCore();
public void OnLocalFault(Exception e, WsrmFault fault, RequestContext context);
public void OnLocalFault(Exception e, Message faultMessage, RequestContext context);
public void OnRemoteFault(WsrmFault fault);
public void OnRemoteFault(Exception e);
public virtual void OnFaulted();
public abstract void OnLocalActivity();
public void OnUnknownException(Exception e);
public virtual void OnRemoteActivity(bool fastPolling);
public bool ProcessInfo(WsrmMessageInfo info, RequestContext context);
public bool ProcessInfo(WsrmMessageInfo info, RequestContext context, bool throwException);
public void SetFinalAck(SequenceRangeCollection finalRanges);
public virtual void StartInactivityTimer();
public bool VerifyDuplexProtocolElements(WsrmMessageInfo info, RequestContext context);
public bool VerifyDuplexProtocolElements(WsrmMessageInfo info, RequestContext context, bool throwException);
protected virtual WsrmFault VerifyDuplexProtocolElements(WsrmMessageInfo info);
public bool VerifySimplexProtocolElements(WsrmMessageInfo info, RequestContext context);
public bool VerifySimplexProtocolElements(WsrmMessageInfo info, RequestContext context, bool throwException);
protected abstract WsrmFault VerifySimplexProtocolElements(WsrmMessageInfo info);
}
}