<PackageReference Include="System.ServiceModel.Primitives" Version="6.0.0" />

System.ServiceModel.Channels.ChannelReliableSession

abstract class ChannelReliableSession : ISession
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); } }