System.ServiceModel.Channels.TransmissionStrategy
namespace System.ServiceModel.Channels
{
internal sealed class TransmissionStrategy
{
public bool DoneTransmitting { get; }
public bool HasPending { get; }
public long Last { get; }
public ComponentExceptionHandler OnException {
set;
}
public RetryHandler RetryTimeoutElapsed {
set;
}
public int QuotaRemaining { get; }
public int Timeout { get; }
public TransmissionStrategy(ReliableMessagingVersion reliableMessagingVersion, TimeSpan initRtt, int maxWindowSize, bool requestAcks, UniqueId id);
public void Abort(ChannelBase channel);
public Task<(MessageAttemptInfo attemptInfo, bool success)> AddAsync(Message message, TimeSpan timeout, object state);
public Task<MessageAttemptInfo> AddLastAsync(Message message, TimeSpan timeout, object state);
public void Close();
public void DequeuePending();
public Task OnRetryElapsed(object state);
public void Fault(ChannelBase channel);
public MessageAttemptInfo GetMessageInfoForRetry(bool remove);
public bool SetLast();
public bool IsFinalAckConsistent(SequenceRangeCollection ranges);
public void ProcessAcknowledgement(SequenceRangeCollection ranges, out bool invalidAck, out bool inconsistentAck);
public bool ProcessTransferred(long transferred, int quotaRemaining);
public bool ProcessTransferred(SequenceRangeCollection ranges, int quotaRemaining);
}
}