8#include "private/http2protocol_p.h"
9#include "private/hpack_p.h"
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
64
65
66
67
68
69
70
71
72
73
74
75
76QHttp2Configuration::QHttp2Configuration()
77 : d(
new QHttp2ConfigurationPrivate)
82
83
84QHttp2Configuration::QHttp2Configuration(
const QHttp2Configuration &) =
default;
87
88
89QHttp2Configuration::QHttp2Configuration(QHttp2Configuration &&other)
noexcept
95
96
97QHttp2Configuration &QHttp2Configuration::operator=(
const QHttp2Configuration &) =
default;
100
101
102QHttp2Configuration &QHttp2Configuration::operator=(QHttp2Configuration &&)
noexcept =
default;
105
106
107QHttp2Configuration::~QHttp2Configuration()
112
113
114
115
116
117void QHttp2Configuration::setServerPushEnabled(
bool enable)
119 d->pushEnabled = enable;
123
124
125
126
127
128
129
130bool QHttp2Configuration::serverPushEnabled()
const
132 return d->pushEnabled;
136
137
138
139
140
141
142
143
144void QHttp2Configuration::setHuffmanCompressionEnabled(
bool enable)
146 d->huffmanCompressionEnabled = enable;
150
151
152
153
154bool QHttp2Configuration::huffmanCompressionEnabled()
const
156 return d->huffmanCompressionEnabled;
160
161
162
163
164
165
166
167bool QHttp2Configuration::setSessionReceiveWindowSize(
unsigned size)
169 if (!size || size > Http2::maxSessionReceiveWindowSize) {
170 qCWarning(QT_HTTP2) <<
"Invalid session window size";
174 d->sessionWindowSize = size;
179
180
181
182
183unsigned QHttp2Configuration::sessionReceiveWindowSize()
const
185 return d->sessionWindowSize;
189
190
191
192
193
194
195
196bool QHttp2Configuration::setStreamReceiveWindowSize(
unsigned size)
198 if (!size || size > Http2::maxSessionReceiveWindowSize) {
199 qCWarning(QT_HTTP2) <<
"Invalid stream window size";
203 d->streamWindowSize = size;
208
209
210
211
212unsigned QHttp2Configuration::streamReceiveWindowSize()
const
214 return d->streamWindowSize;
218
219
220
221
222
223
224
225
226bool QHttp2Configuration::setMaxFrameSize(
unsigned size)
228 if (size < Http2::minPayloadLimit || size > Http2::maxPayloadSize) {
229 qCWarning(QT_HTTP2) <<
"Maximum frame size to advertise is invalid";
233 d->maxFrameSize = size;
238
239
240
241unsigned QHttp2Configuration::maxFrameSize()
const
243 return d->maxFrameSize;
247
248
249
250
251
252
253
254void QHttp2Configuration::setMaxConcurrentStreams(
unsigned value)
256 d->maxConcurrentStreams = value;
260
261
262
263
264
265
266unsigned QHttp2Configuration::maxConcurrentStreams()
const
268 return d->maxConcurrentStreams;
272
273
274
275
276
277
278
279
280
281
282
283
284
285void QHttp2Configuration::setMaxHeaderListSize(quint32 size)
287 d->maxHeaderListSize = size;
291
292
293
294
295
296
297
298quint32 QHttp2Configuration::maxHeaderListSize()
const
300 return d->maxHeaderListSize;
304
305
306void QHttp2Configuration::swap(QHttp2Configuration &other)
noexcept
312
313
314
315
318
319
320
321
324
325
326bool QHttp2Configuration::isEqual(
const QHttp2Configuration &other)
const noexcept
331 return d->pushEnabled == other.d->pushEnabled
332 && d->huffmanCompressionEnabled == other.d->huffmanCompressionEnabled
333 && d->sessionWindowSize == other.d->sessionWindowSize
334 && d->streamWindowSize == other.d->streamWindowSize
335 && d->maxConcurrentStreams == other.d->maxConcurrentStreams
336 && d->maxHeaderListSize == other.d->maxHeaderListSize;
Combined button and popup list for selecting options.