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

Side by Side Diff: net/http/http_server_properties.h

Issue 2496953002: Revert of Unify enum NextProto and enum AlternateProtocol. (Closed)
Patch Set: Created 4 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/http/http_network_transaction_unittest.cc ('k') | net/http/http_server_properties.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) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 #ifndef NET_HTTP_HTTP_SERVER_PROPERTIES_H_ 5 #ifndef NET_HTTP_HTTP_SERVER_PROPERTIES_H_
6 #define NET_HTTP_HTTP_SERVER_PROPERTIES_H_ 6 #define NET_HTTP_HTTP_SERVER_PROPERTIES_H_
7 7
8 #include <stdint.h> 8 #include <stdint.h>
9 9
10 #include <map> 10 #include <map>
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
59 BROKEN_ALTERNATE_PROTOCOL_LOCATION_QUIC_STREAM_FACTORY = 1, 59 BROKEN_ALTERNATE_PROTOCOL_LOCATION_QUIC_STREAM_FACTORY = 1,
60 BROKEN_ALTERNATE_PROTOCOL_LOCATION_HTTP_STREAM_FACTORY_IMPL_JOB_ALT = 2, 60 BROKEN_ALTERNATE_PROTOCOL_LOCATION_HTTP_STREAM_FACTORY_IMPL_JOB_ALT = 2,
61 BROKEN_ALTERNATE_PROTOCOL_LOCATION_HTTP_STREAM_FACTORY_IMPL_JOB_MAIN = 3, 61 BROKEN_ALTERNATE_PROTOCOL_LOCATION_HTTP_STREAM_FACTORY_IMPL_JOB_MAIN = 3,
62 BROKEN_ALTERNATE_PROTOCOL_LOCATION_MAX, 62 BROKEN_ALTERNATE_PROTOCOL_LOCATION_MAX,
63 }; 63 };
64 64
65 // Log a histogram to reflect |location|. 65 // Log a histogram to reflect |location|.
66 NET_EXPORT void HistogramBrokenAlternateProtocolLocation( 66 NET_EXPORT void HistogramBrokenAlternateProtocolLocation(
67 BrokenAlternateProtocolLocation location); 67 BrokenAlternateProtocolLocation location);
68 68
69 NET_EXPORT bool IsAlternateProtocolValid(NextProto protocol); 69 enum AlternateProtocol {
70 NPN_HTTP_2,
71 QUIC,
72 UNINITIALIZED_ALTERNATE_PROTOCOL,
73 };
74
75 NET_EXPORT bool IsAlternateProtocolValid(AlternateProtocol protocol);
76
77 NET_EXPORT const char* AlternateProtocolToString(AlternateProtocol protocol);
78 NET_EXPORT AlternateProtocol AlternateProtocolFromString(
79 const std::string& str);
80 NET_EXPORT_PRIVATE AlternateProtocol AlternateProtocolFromNextProto(
81 NextProto next_proto);
70 82
71 // (protocol, host, port) triple as defined in 83 // (protocol, host, port) triple as defined in
72 // https://tools.ietf.org/id/draft-ietf-httpbis-alt-svc-06.html 84 // https://tools.ietf.org/id/draft-ietf-httpbis-alt-svc-06.html
73 struct NET_EXPORT AlternativeService { 85 struct NET_EXPORT AlternativeService {
74 AlternativeService() : protocol(kProtoUnknown), host(), port(0) {} 86 AlternativeService()
87 : protocol(UNINITIALIZED_ALTERNATE_PROTOCOL), host(), port(0) {}
75 88
76 AlternativeService(NextProto protocol, const std::string& host, uint16_t port) 89 AlternativeService(AlternateProtocol protocol,
90 const std::string& host,
91 uint16_t port)
77 : protocol(protocol), host(host), port(port) {} 92 : protocol(protocol), host(host), port(port) {}
78 93
79 AlternativeService(NextProto protocol, const HostPortPair& host_port_pair) 94 AlternativeService(AlternateProtocol protocol,
95 const HostPortPair& host_port_pair)
80 : protocol(protocol), 96 : protocol(protocol),
81 host(host_port_pair.host()), 97 host(host_port_pair.host()),
82 port(host_port_pair.port()) {} 98 port(host_port_pair.port()) {}
83 99
84 AlternativeService(const AlternativeService& alternative_service) = default; 100 AlternativeService(const AlternativeService& alternative_service) = default;
85 AlternativeService& operator=(const AlternativeService& alternative_service) = 101 AlternativeService& operator=(const AlternativeService& alternative_service) =
86 default; 102 default;
87 103
88 HostPortPair host_port_pair() const { return HostPortPair(host, port); } 104 HostPortPair host_port_pair() const { return HostPortPair(host, port); }
89 105
90 bool operator==(const AlternativeService& other) const { 106 bool operator==(const AlternativeService& other) const {
91 return protocol == other.protocol && host == other.host && 107 return protocol == other.protocol && host == other.host &&
92 port == other.port; 108 port == other.port;
93 } 109 }
94 110
95 bool operator!=(const AlternativeService& other) const { 111 bool operator!=(const AlternativeService& other) const {
96 return !this->operator==(other); 112 return !this->operator==(other);
97 } 113 }
98 114
99 bool operator<(const AlternativeService& other) const { 115 bool operator<(const AlternativeService& other) const {
100 return std::tie(protocol, host, port) < 116 return std::tie(protocol, host, port) <
101 std::tie(other.protocol, other.host, other.port); 117 std::tie(other.protocol, other.host, other.port);
102 } 118 }
103 119
104 std::string ToString() const; 120 std::string ToString() const;
105 121
106 NextProto protocol; 122 AlternateProtocol protocol;
107 std::string host; 123 std::string host;
108 uint16_t port; 124 uint16_t port;
109 }; 125 };
110 126
111 struct NET_EXPORT AlternativeServiceInfo { 127 struct NET_EXPORT AlternativeServiceInfo {
112 AlternativeServiceInfo() : alternative_service() {} 128 AlternativeServiceInfo() : alternative_service() {}
113 129
114 AlternativeServiceInfo(const AlternativeService& alternative_service, 130 AlternativeServiceInfo(const AlternativeService& alternative_service,
115 base::Time expiration) 131 base::Time expiration)
116 : alternative_service(alternative_service), 132 : alternative_service(alternative_service),
117 expiration(expiration) {} 133 expiration(expiration) {}
118 134
119 AlternativeServiceInfo(NextProto protocol, 135 AlternativeServiceInfo(AlternateProtocol protocol,
120 const std::string& host, 136 const std::string& host,
121 uint16_t port, 137 uint16_t port,
122 base::Time expiration) 138 base::Time expiration)
123 : alternative_service(protocol, host, port), expiration(expiration) {} 139 : alternative_service(protocol, host, port),
140 expiration(expiration) {}
124 141
125 AlternativeServiceInfo( 142 AlternativeServiceInfo(
126 const AlternativeServiceInfo& alternative_service_info) = default; 143 const AlternativeServiceInfo& alternative_service_info) = default;
127 AlternativeServiceInfo& operator=( 144 AlternativeServiceInfo& operator=(
128 const AlternativeServiceInfo& alternative_service_info) = default; 145 const AlternativeServiceInfo& alternative_service_info) = default;
129 146
130 bool operator==(const AlternativeServiceInfo& other) const { 147 bool operator==(const AlternativeServiceInfo& other) const {
131 return alternative_service == other.alternative_service && 148 return alternative_service == other.alternative_service &&
132 expiration == other.expiration; 149 expiration == other.expiration;
133 } 150 }
(...skipping 209 matching lines...) Expand 10 before | Expand all | Expand 10 after
343 virtual void SetMaxServerConfigsStoredInProperties( 360 virtual void SetMaxServerConfigsStoredInProperties(
344 size_t max_server_configs_stored_in_properties) = 0; 361 size_t max_server_configs_stored_in_properties) = 0;
345 362
346 private: 363 private:
347 DISALLOW_COPY_AND_ASSIGN(HttpServerProperties); 364 DISALLOW_COPY_AND_ASSIGN(HttpServerProperties);
348 }; 365 };
349 366
350 } // namespace net 367 } // namespace net
351 368
352 #endif // NET_HTTP_HTTP_SERVER_PROPERTIES_H_ 369 #endif // NET_HTTP_HTTP_SERVER_PROPERTIES_H_
OLDNEW
« no previous file with comments | « net/http/http_network_transaction_unittest.cc ('k') | net/http/http_server_properties.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698