Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ GetResponseHeaderValueWithCaching()

string System.Net.Http.HttpConnectionBase.GetResponseHeaderValueWithCaching ( HeaderDescriptor descriptor,
ReadOnlySpan< byte > value,
Encoding valueEncoding )
inlineinherited

Definition at line 20 of file HttpConnectionBase.cs.

21 {
22 if (descriptor.KnownHeader != KnownHeaders.Date)
23 {
24 if (descriptor.KnownHeader != KnownHeaders.Server)
25 {
26 return descriptor.GetHeaderValue(value, valueEncoding);
27 }
28 return GetOrAddCachedValue(ref _lastServerHeaderValue, descriptor, value, valueEncoding);
29 }
30 return GetOrAddCachedValue(ref _lastDateHeaderValue, descriptor, value, valueEncoding);
31 static string GetOrAddCachedValue([NotNull] ref string cache, HeaderDescriptor descriptor, ReadOnlySpan<byte> value, Encoding encoding)
32 {
33 string text = cache;
34 if (text == null || !ByteArrayHelpers.EqualsOrdinalAscii(text, value))
35 {
36 text = (cache = descriptor.GetHeaderValue(value, encoding));
37 }
38 return text;
39 }
40 }
static readonly KnownHeader Date
static readonly KnownHeader Server
string GetHeaderValue(ReadOnlySpan< byte > headerValue, Encoding valueEncoding)

References System.Net.Http.HttpConnectionBase._lastDateHeaderValue, System.Net.Http.HttpConnectionBase._lastServerHeaderValue, System.Net.Http.Headers.KnownHeaders.Date, System.ByteArrayHelpers.EqualsOrdinalAscii(), System.Net.Http.Headers.HeaderDescriptor.GetHeaderValue(), System.Net.Http.Headers.HeaderDescriptor.KnownHeader, System.Net.Http.Headers.KnownHeaders.Server, System.text, and System.value.

Referenced by System.Net.Http.Http2Connection.Http2Stream.OnHeader(), System.Net.Http.Http3RequestStream.OnHeader(), and System.Net.Http.HttpConnection.ParseHeaderNameValue().