Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(11)

Side by Side Diff: net/http2/decoder/http2_frame_decoder_listener_test_util.h

Issue 2554683003: Revert of Add new HTTP/2 and HPACK decoder in net/http2/. (Closed)
Patch Set: Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef NET_HTTP2_DECODER_HTTP2_FRAME_DECODER_LISTENER_TEST_UTIL_H_
6 #define NET_HTTP2_DECODER_HTTP2_FRAME_DECODER_LISTENER_TEST_UTIL_H_
7
8 #include <stddef.h>
9
10 #include "net/http2/decoder/http2_frame_decoder_listener.h"
11 #include "net/http2/http2_constants.h"
12 #include "net/http2/http2_structures.h"
13
14 namespace net {
15
16 // Fail if any of the methods are called. Allows a test to override only the
17 // expected calls.
18 class FailingHttp2FrameDecoderListener : public Http2FrameDecoderListener {
19 public:
20 FailingHttp2FrameDecoderListener();
21 ~FailingHttp2FrameDecoderListener() override;
22
23 // TODO(jamessynge): Remove OnFrameHeader once done with supporting
24 // SpdyFramer's exact states.
25 bool OnFrameHeader(const Http2FrameHeader& header) override;
26 void OnDataStart(const Http2FrameHeader& header) override;
27 void OnDataPayload(const char* data, size_t len) override;
28 void OnDataEnd() override;
29 void OnHeadersStart(const Http2FrameHeader& header) override;
30 void OnHeadersPriority(const Http2PriorityFields& priority) override;
31 void OnHpackFragment(const char* data, size_t len) override;
32 void OnHeadersEnd() override;
33 void OnPriorityFrame(const Http2FrameHeader& header,
34 const Http2PriorityFields& priority) override;
35 void OnContinuationStart(const Http2FrameHeader& header) override;
36 void OnContinuationEnd() override;
37 void OnPadLength(size_t trailing_length) override;
38 void OnPadding(const char* padding, size_t skipped_length) override;
39 void OnRstStream(const Http2FrameHeader& header,
40 Http2ErrorCode error_code) override;
41 void OnSettingsStart(const Http2FrameHeader& header) override;
42 void OnSetting(const Http2SettingFields& setting_fields) override;
43 void OnSettingsEnd() override;
44 void OnSettingsAck(const Http2FrameHeader& header) override;
45 void OnPushPromiseStart(const Http2FrameHeader& header,
46 const Http2PushPromiseFields& promise,
47 size_t total_padding_length) override;
48 void OnPushPromiseEnd() override;
49 void OnPing(const Http2FrameHeader& header,
50 const Http2PingFields& ping) override;
51 void OnPingAck(const Http2FrameHeader& header,
52 const Http2PingFields& ping) override;
53 void OnGoAwayStart(const Http2FrameHeader& header,
54 const Http2GoAwayFields& goaway) override;
55 void OnGoAwayOpaqueData(const char* data, size_t len) override;
56 void OnGoAwayEnd() override;
57 void OnWindowUpdate(const Http2FrameHeader& header,
58 uint32_t increment) override;
59 void OnAltSvcStart(const Http2FrameHeader& header,
60 size_t origin_length,
61 size_t value_length) override;
62 void OnAltSvcOriginData(const char* data, size_t len) override;
63 void OnAltSvcValueData(const char* data, size_t len) override;
64 void OnAltSvcEnd() override;
65 void OnUnknownStart(const Http2FrameHeader& header) override;
66 void OnUnknownPayload(const char* data, size_t len) override;
67 void OnUnknownEnd() override;
68 void OnPaddingTooLong(const Http2FrameHeader& header,
69 size_t missing_length) override;
70 void OnFrameSizeError(const Http2FrameHeader& header) override;
71
72 private:
73 void EnsureNotAbstract() { FailingHttp2FrameDecoderListener instance; }
74 };
75
76 // VLOG's all the calls it receives, and forwards those calls to an optional
77 // listener.
78 class LoggingHttp2FrameDecoderListener : public Http2FrameDecoderListener {
79 public:
80 LoggingHttp2FrameDecoderListener();
81 explicit LoggingHttp2FrameDecoderListener(Http2FrameDecoderListener* wrapped);
82 ~LoggingHttp2FrameDecoderListener() override;
83
84 // TODO(jamessynge): Remove OnFrameHeader once done with supporting
85 // SpdyFramer's exact states.
86 bool OnFrameHeader(const Http2FrameHeader& header) override;
87 void OnDataStart(const Http2FrameHeader& header) override;
88 void OnDataPayload(const char* data, size_t len) override;
89 void OnDataEnd() override;
90 void OnHeadersStart(const Http2FrameHeader& header) override;
91 void OnHeadersPriority(const Http2PriorityFields& priority) override;
92 void OnHpackFragment(const char* data, size_t len) override;
93 void OnHeadersEnd() override;
94 void OnPriorityFrame(const Http2FrameHeader& header,
95 const Http2PriorityFields& priority) override;
96 void OnContinuationStart(const Http2FrameHeader& header) override;
97 void OnContinuationEnd() override;
98 void OnPadLength(size_t trailing_length) override;
99 void OnPadding(const char* padding, size_t skipped_length) override;
100 void OnRstStream(const Http2FrameHeader& header,
101 Http2ErrorCode error_code) override;
102 void OnSettingsStart(const Http2FrameHeader& header) override;
103 void OnSetting(const Http2SettingFields& setting_fields) override;
104 void OnSettingsEnd() override;
105 void OnSettingsAck(const Http2FrameHeader& header) override;
106 void OnPushPromiseStart(const Http2FrameHeader& header,
107 const Http2PushPromiseFields& promise,
108 size_t total_padding_length) override;
109 void OnPushPromiseEnd() override;
110 void OnPing(const Http2FrameHeader& header,
111 const Http2PingFields& ping) override;
112 void OnPingAck(const Http2FrameHeader& header,
113 const Http2PingFields& ping) override;
114 void OnGoAwayStart(const Http2FrameHeader& header,
115 const Http2GoAwayFields& goaway) override;
116 void OnGoAwayOpaqueData(const char* data, size_t len) override;
117 void OnGoAwayEnd() override;
118 void OnWindowUpdate(const Http2FrameHeader& header,
119 uint32_t increment) override;
120 void OnAltSvcStart(const Http2FrameHeader& header,
121 size_t origin_length,
122 size_t value_length) override;
123 void OnAltSvcOriginData(const char* data, size_t len) override;
124 void OnAltSvcValueData(const char* data, size_t len) override;
125 void OnAltSvcEnd() override;
126 void OnUnknownStart(const Http2FrameHeader& header) override;
127 void OnUnknownPayload(const char* data, size_t len) override;
128 void OnUnknownEnd() override;
129 void OnPaddingTooLong(const Http2FrameHeader& header,
130 size_t missing_length) override;
131 void OnFrameSizeError(const Http2FrameHeader& header) override;
132
133 private:
134 void EnsureNotAbstract() { LoggingHttp2FrameDecoderListener instance; }
135
136 Http2FrameDecoderListener* wrapped_;
137 };
138
139 } // namespace net
140
141 #endif // NET_HTTP2_DECODER_HTTP2_FRAME_DECODER_LISTENER_TEST_UTIL_H_
OLDNEW
« no previous file with comments | « net/http2/decoder/http2_frame_decoder_listener.cc ('k') | net/http2/decoder/http2_frame_decoder_listener_test_util.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698