Terraria
v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
HttpGeneralHeaders.cs
Go to the documentation of this file.
1
namespace
System.Net.Http.Headers
;
2
3
internal
sealed
class
HttpGeneralHeaders
4
{
5
private
HttpHeaderValueCollection<string>
_connection
;
6
7
private
HttpHeaderValueCollection<string>
_trailer
;
8
9
private
HttpHeaderValueCollection<TransferCodingHeaderValue>
_transferEncoding
;
10
11
private
HttpHeaderValueCollection<ProductHeaderValue>
_upgrade
;
12
13
private
HttpHeaderValueCollection<ViaHeaderValue>
_via
;
14
15
private
HttpHeaderValueCollection<WarningHeaderValue>
_warning
;
16
17
private
HttpHeaderValueCollection<NameValueHeaderValue>
_pragma
;
18
19
private
readonly
HttpHeaders
_parent
;
20
21
private
bool
_transferEncodingChunkedSet
;
22
23
private
bool
_connectionCloseSet
;
24
25
public
CacheControlHeaderValue
CacheControl
26
{
27
get
28
{
29
return
(
CacheControlHeaderValue
)
_parent
.
GetParsedValues
(
KnownHeaders
.
CacheControl
.Descriptor);
30
}
31
set
32
{
33
_parent
.
SetOrRemoveParsedValue
(
KnownHeaders
.
CacheControl
.Descriptor,
value
);
34
}
35
}
36
37
public
HttpHeaderValueCollection<string>
Connection
=>
ConnectionCore
;
38
39
public
bool
?
ConnectionClose
40
{
41
get
42
{
43
return
GetConnectionClose
(
_parent
,
this
);
44
}
45
set
46
{
47
if
(
value
==
true
)
48
{
49
_connectionCloseSet
=
true
;
50
ConnectionCore
.
SetSpecialValue
();
51
}
52
else
53
{
54
_connectionCloseSet
=
value
.HasValue;
55
ConnectionCore
.
RemoveSpecialValue
();
56
}
57
}
58
}
59
60
public
DateTimeOffset
?
Date
61
{
62
get
63
{
64
return
HeaderUtilities
.
GetDateTimeOffsetValue
(
KnownHeaders
.
Date
.Descriptor,
_parent
);
65
}
66
set
67
{
68
_parent
.
SetOrRemoveParsedValue
(
KnownHeaders
.
Date
.Descriptor,
value
);
69
}
70
}
71
72
public
HttpHeaderValueCollection<NameValueHeaderValue>
Pragma
73
{
74
get
75
{
76
if
(
_pragma
==
null
)
77
{
78
_pragma
=
new
HttpHeaderValueCollection<NameValueHeaderValue>
(
KnownHeaders
.
Pragma
.Descriptor,
_parent
);
79
}
80
return
_pragma
;
81
}
82
}
83
84
public
HttpHeaderValueCollection<string>
Trailer
85
{
86
get
87
{
88
if
(
_trailer
==
null
)
89
{
90
_trailer
=
new
HttpHeaderValueCollection<string>
(
KnownHeaders
.
Trailer
.Descriptor,
_parent
,
HeaderUtilities
.
TokenValidator
);
91
}
92
return
_trailer
;
93
}
94
}
95
96
public
HttpHeaderValueCollection<TransferCodingHeaderValue>
TransferEncoding =>
TransferEncodingCore
;
97
98
public
bool
?
TransferEncodingChunked
99
{
100
get
101
{
102
return
GetTransferEncodingChunked
(
_parent
,
this
);
103
}
104
set
105
{
106
if
(
value
==
true
)
107
{
108
_transferEncodingChunkedSet
=
true
;
109
TransferEncodingCore
.SetSpecialValue();
110
}
111
else
112
{
113
_transferEncodingChunkedSet
=
value
.HasValue;
114
TransferEncodingCore
.RemoveSpecialValue();
115
}
116
}
117
}
118
119
public
HttpHeaderValueCollection<ProductHeaderValue>
Upgrade
120
{
121
get
122
{
123
if
(
_upgrade
==
null
)
124
{
125
_upgrade
=
new
HttpHeaderValueCollection<ProductHeaderValue>
(
KnownHeaders
.
Upgrade
.Descriptor,
_parent
);
126
}
127
return
_upgrade
;
128
}
129
}
130
131
public
HttpHeaderValueCollection<ViaHeaderValue>
Via
132
{
133
get
134
{
135
if
(
_via
==
null
)
136
{
137
_via
=
new
HttpHeaderValueCollection<ViaHeaderValue>
(
KnownHeaders
.
Via
.Descriptor,
_parent
);
138
}
139
return
_via
;
140
}
141
}
142
143
public
HttpHeaderValueCollection<WarningHeaderValue>
Warning
144
{
145
get
146
{
147
if
(
_warning
==
null
)
148
{
149
_warning
=
new
HttpHeaderValueCollection<WarningHeaderValue>
(
KnownHeaders
.
Warning
.Descriptor,
_parent
);
150
}
151
return
_warning
;
152
}
153
}
154
155
private
HttpHeaderValueCollection<string>
ConnectionCore
156
{
157
get
158
{
159
if
(
_connection
==
null
)
160
{
161
_connection
=
new
HttpHeaderValueCollection<string>
(
KnownHeaders
.
Connection
.Descriptor,
_parent
,
"close"
,
HeaderUtilities
.
TokenValidator
);
162
}
163
return
_connection
;
164
}
165
}
166
167
private
HttpHeaderValueCollection<TransferCodingHeaderValue>
TransferEncodingCore
168
{
169
get
170
{
171
if
(
_transferEncoding
==
null
)
172
{
173
_transferEncoding
=
new
HttpHeaderValueCollection<TransferCodingHeaderValue>
(
KnownHeaders
.
TransferEncoding
.Descriptor,
_parent
,
HeaderUtilities
.
TransferEncodingChunked
);
174
}
175
return
_transferEncoding
;
176
}
177
}
178
179
internal
static
bool
?
GetConnectionClose
(
HttpHeaders
parent,
HttpGeneralHeaders
headers)
180
{
181
if
(headers?.
_connection
!=
null
)
182
{
183
if
(headers.
_connection
.
IsSpecialValueSet
)
184
{
185
return
true
;
186
}
187
}
188
else
if
(parent.
ContainsParsedValue
(
KnownHeaders
.
Connection
.Descriptor,
"close"
))
189
{
190
return
true
;
191
}
192
if
(headers !=
null
&& headers.
_connectionCloseSet
)
193
{
194
return
false
;
195
}
196
return
null
;
197
}
198
199
internal
static
bool
?
GetTransferEncodingChunked
(
HttpHeaders
parent,
HttpGeneralHeaders
headers)
200
{
201
if
(headers?.
_transferEncoding
!=
null
)
202
{
203
if
(headers.
_transferEncoding
.IsSpecialValueSet)
204
{
205
return
true
;
206
}
207
}
208
else
if
(parent.
ContainsParsedValue
(
KnownHeaders
.
TransferEncoding
.Descriptor,
HeaderUtilities
.
TransferEncodingChunked
))
209
{
210
return
true
;
211
}
212
if
(headers !=
null
&& headers.
_transferEncodingChunkedSet
)
213
{
214
return
false
;
215
}
216
return
null
;
217
}
218
219
internal
HttpGeneralHeaders
(
HttpHeaders
parent)
220
{
221
_parent
= parent;
222
}
223
224
internal
void
AddSpecialsFrom
(
HttpGeneralHeaders
sourceHeaders)
225
{
226
if
(!
TransferEncodingChunked
.HasValue)
227
{
228
TransferEncodingChunked
= sourceHeaders.
TransferEncodingChunked
;
229
}
230
if
(!
ConnectionClose
.HasValue)
231
{
232
ConnectionClose
= sourceHeaders.
ConnectionClose
;
233
}
234
}
235
}
System.Net.Http.Headers.CacheControlHeaderValue
Definition
CacheControlHeaderValue.cs:9
System.Net.Http.Headers.HeaderUtilities.TokenValidator
static readonly Action< HttpHeaderValueCollection< string >, string > TokenValidator
Definition
HeaderUtilities.cs:14
System.Net.Http.Headers.HeaderUtilities.GetDateTimeOffsetValue
static ? DateTimeOffset GetDateTimeOffsetValue(HeaderDescriptor descriptor, HttpHeaders store, DateTimeOffset? defaultValue=null)
Definition
HeaderUtilities.cs:216
System.Net.Http.Headers.HeaderUtilities.TransferEncodingChunked
static readonly TransferCodingHeaderValue TransferEncodingChunked
Definition
HeaderUtilities.cs:10
System.Net.Http.Headers.HeaderUtilities
Definition
HeaderUtilities.cs:9
System.Net.Http.Headers.HttpGeneralHeaders.Warning
HttpHeaderValueCollection< WarningHeaderValue > Warning
Definition
HttpGeneralHeaders.cs:144
System.Net.Http.Headers.HttpGeneralHeaders.ConnectionClose
bool? ConnectionClose
Definition
HttpGeneralHeaders.cs:40
System.Net.Http.Headers.HttpGeneralHeaders._transferEncoding
HttpHeaderValueCollection< TransferCodingHeaderValue > _transferEncoding
Definition
HttpGeneralHeaders.cs:9
System.Net.Http.Headers.HttpGeneralHeaders.GetConnectionClose
static ? bool GetConnectionClose(HttpHeaders parent, HttpGeneralHeaders headers)
Definition
HttpGeneralHeaders.cs:179
System.Net.Http.Headers.HttpGeneralHeaders.TransferEncodingCore
HttpHeaderValueCollection< TransferCodingHeaderValue > TransferEncodingCore
Definition
HttpGeneralHeaders.cs:168
System.Net.Http.Headers.HttpGeneralHeaders._warning
HttpHeaderValueCollection< WarningHeaderValue > _warning
Definition
HttpGeneralHeaders.cs:15
System.Net.Http.Headers.HttpGeneralHeaders.TransferEncodingChunked
bool? TransferEncodingChunked
Definition
HttpGeneralHeaders.cs:99
System.Net.Http.Headers.HttpGeneralHeaders.Date
DateTimeOffset? Date
Definition
HttpGeneralHeaders.cs:61
System.Net.Http.Headers.HttpGeneralHeaders.Upgrade
HttpHeaderValueCollection< ProductHeaderValue > Upgrade
Definition
HttpGeneralHeaders.cs:120
System.Net.Http.Headers.HttpGeneralHeaders.GetTransferEncodingChunked
static ? bool GetTransferEncodingChunked(HttpHeaders parent, HttpGeneralHeaders headers)
Definition
HttpGeneralHeaders.cs:199
System.Net.Http.Headers.HttpGeneralHeaders.Trailer
HttpHeaderValueCollection< string > Trailer
Definition
HttpGeneralHeaders.cs:85
System.Net.Http.Headers.HttpGeneralHeaders._trailer
HttpHeaderValueCollection< string > _trailer
Definition
HttpGeneralHeaders.cs:7
System.Net.Http.Headers.HttpGeneralHeaders.CacheControl
CacheControlHeaderValue CacheControl
Definition
HttpGeneralHeaders.cs:26
System.Net.Http.Headers.HttpGeneralHeaders.Pragma
HttpHeaderValueCollection< NameValueHeaderValue > Pragma
Definition
HttpGeneralHeaders.cs:73
System.Net.Http.Headers.HttpGeneralHeaders.HttpGeneralHeaders
HttpGeneralHeaders(HttpHeaders parent)
Definition
HttpGeneralHeaders.cs:219
System.Net.Http.Headers.HttpGeneralHeaders._transferEncodingChunkedSet
bool _transferEncodingChunkedSet
Definition
HttpGeneralHeaders.cs:21
System.Net.Http.Headers.HttpGeneralHeaders.Via
HttpHeaderValueCollection< ViaHeaderValue > Via
Definition
HttpGeneralHeaders.cs:132
System.Net.Http.Headers.HttpGeneralHeaders._pragma
HttpHeaderValueCollection< NameValueHeaderValue > _pragma
Definition
HttpGeneralHeaders.cs:17
System.Net.Http.Headers.HttpGeneralHeaders.AddSpecialsFrom
void AddSpecialsFrom(HttpGeneralHeaders sourceHeaders)
Definition
HttpGeneralHeaders.cs:224
System.Net.Http.Headers.HttpGeneralHeaders._via
HttpHeaderValueCollection< ViaHeaderValue > _via
Definition
HttpGeneralHeaders.cs:13
System.Net.Http.Headers.HttpGeneralHeaders._connection
HttpHeaderValueCollection< string > _connection
Definition
HttpGeneralHeaders.cs:5
System.Net.Http.Headers.HttpGeneralHeaders._parent
readonly HttpHeaders _parent
Definition
HttpGeneralHeaders.cs:19
System.Net.Http.Headers.HttpGeneralHeaders._upgrade
HttpHeaderValueCollection< ProductHeaderValue > _upgrade
Definition
HttpGeneralHeaders.cs:11
System.Net.Http.Headers.HttpGeneralHeaders.ConnectionCore
HttpHeaderValueCollection< string > ConnectionCore
Definition
HttpGeneralHeaders.cs:156
System.Net.Http.Headers.HttpGeneralHeaders._connectionCloseSet
bool _connectionCloseSet
Definition
HttpGeneralHeaders.cs:23
System.Net.Http.Headers.HttpGeneralHeaders.Connection
HttpHeaderValueCollection< string > Connection
Definition
HttpGeneralHeaders.cs:37
System.Net.Http.Headers.HttpGeneralHeaders
Definition
HttpGeneralHeaders.cs:4
System.Net.Http.Headers.HttpHeaderValueCollection.SetSpecialValue
void SetSpecialValue()
Definition
HttpHeaderValueCollection.cs:151
System.Net.Http.Headers.HttpHeaderValueCollection.RemoveSpecialValue
void RemoveSpecialValue()
Definition
HttpHeaderValueCollection.cs:159
System.Net.Http.Headers.HttpHeaderValueCollection.IsSpecialValueSet
bool IsSpecialValueSet
Definition
HttpHeaderValueCollection.cs:21
System.Net.Http.Headers.HttpHeaderValueCollection
Definition
HttpHeaderValueCollection.cs:7
System.Net.Http.Headers.HttpHeaders.ContainsParsedValue
bool ContainsParsedValue(HeaderDescriptor descriptor, object value)
Definition
HttpHeaders.cs:426
System.Net.Http.Headers.HttpHeaders.SetOrRemoveParsedValue
void SetOrRemoveParsedValue(HeaderDescriptor descriptor, object value)
Definition
HttpHeaders.cs:354
System.Net.Http.Headers.HttpHeaders.GetParsedValues
object GetParsedValues(HeaderDescriptor descriptor)
Definition
HttpHeaders.cs:779
System.Net.Http.Headers.HttpHeaders
Definition
HttpHeaders.cs:11
System.Net.Http.Headers.KnownHeaders.Date
static readonly KnownHeader Date
Definition
KnownHeaders.cs:107
System.Net.Http.Headers.KnownHeaders.TransferEncoding
static readonly KnownHeader TransferEncoding
Definition
KnownHeaders.cs:199
System.Net.Http.Headers.KnownHeaders.Trailer
static readonly KnownHeader Trailer
Definition
KnownHeaders.cs:197
System.Net.Http.Headers.KnownHeaders.Connection
static readonly KnownHeader Connection
Definition
KnownHeaders.cs:83
System.Net.Http.Headers.KnownHeaders.CacheControl
static readonly KnownHeader CacheControl
Definition
KnownHeaders.cs:81
System.Net.Http.Headers.KnownHeaders.Warning
static readonly KnownHeader Warning
Definition
KnownHeaders.cs:213
System.Net.Http.Headers.KnownHeaders.Upgrade
static readonly KnownHeader Upgrade
Definition
KnownHeaders.cs:201
System.Net.Http.Headers.KnownHeaders.Pragma
static readonly KnownHeader Pragma
Definition
KnownHeaders.cs:151
System.Net.Http.Headers.KnownHeaders.Via
static readonly KnownHeader Via
Definition
KnownHeaders.cs:209
System.Net.Http.Headers.KnownHeaders
Definition
KnownHeaders.cs:6
System.Net.Http.Headers
Definition
AltSvcHeaderParser.cs:4
System.ExceptionArgument.value
@ value
System.DateTimeOffset
Definition
DateTimeOffset.cs:14
source
System.Net.Http
System.Net.Http.Headers
HttpGeneralHeaders.cs
Generated by
1.10.0