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

Side by Side Diff: net/spdy/spdy_alt_svc_wire_format.h

Issue 1458163002: Remove |using base::StringPiece| from net/spdy header files. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 1 month 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
« no previous file with comments | « net/spdy/hpack/hpack_static_table.cc ('k') | net/spdy/spdy_alt_svc_wire_format.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2015 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 // This file contains data structures and utility functions used for serializing 5 // This file contains data structures and utility functions used for serializing
6 // and parsing alternative service header values, common to HTTP/1.1 header 6 // and parsing alternative service header values, common to HTTP/1.1 header
7 // fields and HTTP/2 and QUIC ALTSVC frames. See specification at 7 // fields and HTTP/2 and QUIC ALTSVC frames. See specification at
8 // https://httpwg.github.io/http-extensions/alt-svc.html. 8 // https://httpwg.github.io/http-extensions/alt-svc.html.
9 9
10 #ifndef NET_SPDY_SPDY_ALT_SVC_WIRE_FORMAT_H_ 10 #ifndef NET_SPDY_SPDY_ALT_SVC_WIRE_FORMAT_H_
11 #define NET_SPDY_SPDY_ALT_SVC_WIRE_FORMAT_H_ 11 #define NET_SPDY_SPDY_ALT_SVC_WIRE_FORMAT_H_
12 12
13 #include <vector> 13 #include <vector>
14 14
15 #include "base/basictypes.h" 15 #include "base/basictypes.h"
16 #include "base/strings/string_piece.h" 16 #include "base/strings/string_piece.h"
17 #include "net/base/net_export.h" 17 #include "net/base/net_export.h"
18 18
19 using base::StringPiece;
20
21 namespace net { 19 namespace net {
22 20
23 namespace test { 21 namespace test {
24 class SpdyAltSvcWireFormatPeer; 22 class SpdyAltSvcWireFormatPeer;
25 } // namespace test 23 } // namespace test
26 24
27 class NET_EXPORT_PRIVATE SpdyAltSvcWireFormat { 25 class NET_EXPORT_PRIVATE SpdyAltSvcWireFormat {
28 public: 26 public:
29 using VersionVector = std::vector<uint16>; 27 using VersionVector = std::vector<uint16>;
30 28
(...skipping 24 matching lines...) Expand all
55 port == other.port && version == other.version && 53 port == other.port && version == other.version &&
56 max_age == other.max_age && probability == other.probability; 54 max_age == other.max_age && probability == other.probability;
57 } 55 }
58 }; 56 };
59 // An empty vector means alternative services should be cleared for given 57 // An empty vector means alternative services should be cleared for given
60 // origin. Note that the wire format for this is the string "clear", not an 58 // origin. Note that the wire format for this is the string "clear", not an
61 // empty value (which is invalid). 59 // empty value (which is invalid).
62 typedef std::vector<AlternativeService> AlternativeServiceVector; 60 typedef std::vector<AlternativeService> AlternativeServiceVector;
63 61
64 friend class test::SpdyAltSvcWireFormatPeer; 62 friend class test::SpdyAltSvcWireFormatPeer;
65 static bool ParseHeaderFieldValue(StringPiece value, 63 static bool ParseHeaderFieldValue(base::StringPiece value,
66 AlternativeServiceVector* altsvc_vector); 64 AlternativeServiceVector* altsvc_vector);
67 static std::string SerializeHeaderFieldValue( 65 static std::string SerializeHeaderFieldValue(
68 const AlternativeServiceVector& altsvc_vector); 66 const AlternativeServiceVector& altsvc_vector);
69 67
70 private: 68 private:
71 static void SkipWhiteSpace(StringPiece::const_iterator* c, 69 static void SkipWhiteSpace(base::StringPiece::const_iterator* c,
72 StringPiece::const_iterator end); 70 base::StringPiece::const_iterator end);
73 static bool PercentDecode(StringPiece::const_iterator c, 71 static bool PercentDecode(base::StringPiece::const_iterator c,
74 StringPiece::const_iterator end, 72 base::StringPiece::const_iterator end,
75 std::string* output); 73 std::string* output);
76 static bool ParseAltAuthority(StringPiece::const_iterator c, 74 static bool ParseAltAuthority(base::StringPiece::const_iterator c,
77 StringPiece::const_iterator end, 75 base::StringPiece::const_iterator end,
78 std::string* host, 76 std::string* host,
79 uint16* port); 77 uint16* port);
80 static bool ParsePositiveInteger16(StringPiece::const_iterator c, 78 static bool ParsePositiveInteger16(base::StringPiece::const_iterator c,
81 StringPiece::const_iterator end, 79 base::StringPiece::const_iterator end,
82 uint16* value); 80 uint16* value);
83 static bool ParsePositiveInteger32(StringPiece::const_iterator c, 81 static bool ParsePositiveInteger32(base::StringPiece::const_iterator c,
84 StringPiece::const_iterator end, 82 base::StringPiece::const_iterator end,
85 uint32* value); 83 uint32* value);
86 static bool ParseProbability(StringPiece::const_iterator c, 84 static bool ParseProbability(base::StringPiece::const_iterator c,
87 StringPiece::const_iterator end, 85 base::StringPiece::const_iterator end,
88 double* probability); 86 double* probability);
89 }; 87 };
90 88
91 } // namespace net 89 } // namespace net
92 90
93 #endif // NET_SPDY_SPDY_ALT_SVC_WIRE_FORMAT_H_ 91 #endif // NET_SPDY_SPDY_ALT_SVC_WIRE_FORMAT_H_
OLDNEW
« no previous file with comments | « net/spdy/hpack/hpack_static_table.cc ('k') | net/spdy/spdy_alt_svc_wire_format.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698