Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
System.Net.Http.Http2Connection.Http2Stream Class Referencesealed

Classes

class  Http2ReadStream
 
class  Http2WriteStream
 

Public Member Functions

 Http2Stream (HttpRequestMessage request, Http2Connection connection)
 
void Initialize (int streamId, int initialWindowSize)
 
HttpResponseMessage GetAndClearResponse ()
 
async Task SendRequestBodyAsync (CancellationToken cancellationToken)
 
async ValueTask< boolWaitFor100ContinueAsync (CancellationToken cancellationToken)
 
void OnWindowUpdate (int amount)
 
void OnHeader (ReadOnlySpan< byte > name, ReadOnlySpan< byte > value)
 
void OnHeadersStart ()
 
void OnHeadersComplete (bool endStream)
 
void OnResponseData (ReadOnlySpan< byte > buffer, bool endStream)
 
void OnReset (Exception resetException, Http2ProtocolErrorCode? resetStreamErrorCode=null, bool canRetry=false)
 
async Task ReadResponseHeadersAsync (CancellationToken cancellationToken)
 
int ReadData (Span< byte > buffer, HttpResponseMessage responseMessage)
 
async ValueTask< int > ReadDataAsync (Memory< byte > buffer, HttpResponseMessage responseMessage, CancellationToken cancellationToken)
 
void CopyTo (HttpResponseMessage responseMessage, Stream destination, int bufferSize)
 
async Task CopyToAsync (HttpResponseMessage responseMessage, Stream destination, int bufferSize, CancellationToken cancellationToken)
 
void Trace (string message, [CallerMemberName] string memberName=null)
 
void OnCompleted (Action< object?> continuation, object? state, short token, ValueTaskSourceOnCompletedFlags flags)
 

Properties

static ReadOnlySpan< byte > StatusHeaderName [get]
 
object SyncObject [get]
 
int StreamId [get, private set]
 
bool SendRequestFinished [get]
 
bool ExpectResponseData [get]
 
Http2Connection Connection [get]
 

Private Types

enum  ResponseProtocolState : byte {
  ExpectingStatus , ExpectingIgnoredHeaders , ExpectingHeaders , ExpectingData ,
  ExpectingTrailingHeaders , Complete , Aborted
}
 
enum  StreamCompletionState : byte { InProgress , Completed , Failed }
 

Private Member Functions

void SendReset ()
 
void Complete ()
 
void Cancel ()
 
bool bool sendReset CancelResponseBody ()
 
void IHttpHeadersHandler. OnStaticIndexedHeader (int index)
 
void IHttpHeadersHandler. OnStaticIndexedHeader (int index, ReadOnlySpan< byte > value)
 
void AdjustHeaderBudget (int amount)
 
void OnStatus (int statusCode)
 
void OnHeader (HeaderDescriptor descriptor, ReadOnlySpan< byte > value)
 
void CheckResponseBodyState ()
 
bool bool isEmptyResponse TryEnsureHeaders ()
 
bool int bytesRead TryReadFromBuffer (Span< byte > buffer, bool partOfSyncRead=false)
 
void MoveTrailersToResponseMessage (HttpResponseMessage responseMessage)
 
async ValueTask SendDataAsync (ReadOnlyMemory< byte > buffer, CancellationToken cancellationToken)
 
void CloseResponseBody ()
 
CancellationTokenRegistration RegisterRequestBodyCancellation (CancellationToken cancellationToken)
 
ValueTaskSourceStatus IValueTaskSource. GetStatus (short token)
 
void IValueTaskSource. OnCompleted (Action< object > continuation, object state, short token, ValueTaskSourceOnCompletedFlags flags)
 
void IValueTaskSource. GetResult (short token)
 
void WaitForData ()
 
ValueTask WaitForDataAsync (CancellationToken cancellationToken)
 

Static Private Member Functions

static readonly (HeaderDescriptor descriptor, byte[] value)[] s_hpackStaticHeaderTable
 

Private Attributes

readonly Http2Connection _connection
 
readonly HttpRequestMessage _request
 
HttpResponseMessage _response
 
HttpResponseHeaders _trailers
 
System.Net.MultiArrayBuffer _responseBuffer
 
Http2StreamWindowManager _windowManager
 
CreditWaiter _creditWaiter
 
int _availableCredit
 
readonly object _creditSyncObject = new object()
 
StreamCompletionState _requestCompletionState
 
StreamCompletionState _responseCompletionState
 
ResponseProtocolState _responseProtocolState
 
Exception _resetException
 
bool _canRetry
 
bool _requestBodyAbandoned
 
ManualResetValueTaskSourceCore< bool_waitSource
 
CancellationTokenRegistration _waitSourceCancellation
 
bool _hasWaiter
 
readonly CancellationTokenSource _requestBodyCancellationSource
 
readonly TaskCompletionSource< bool_expect100ContinueWaiter
 
int _headerBudgetRemaining
 
bool signalWaiter
 
bool wait
 

Static Private Attributes

static readonly int[] s_hpackStaticStatusCodeTable = new int[7] { 200, 204, 206, 304, 400, 404, 500 }
 

Detailed Description

Definition at line 180 of file Http2Connection.cs.


The documentation for this class was generated from the following file: