OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 #include "net/quic/quic_session_key.h" | 5 #include "net/quic/quic_session_key.h" |
6 | 6 |
7 using std::string; | 7 using std::string; |
8 | 8 |
9 namespace net { | 9 namespace net { |
10 | 10 |
11 QuicSessionKey::QuicSessionKey() {} | 11 QuicSessionKey::QuicSessionKey() {} |
12 | 12 |
13 QuicSessionKey::QuicSessionKey(const HostPortPair& host_port_pair, | 13 QuicSessionKey::QuicSessionKey(const HostPortPair& host_port_pair, |
14 bool is_https, | 14 bool is_https) |
15 PrivacyMode privacy_mode) | |
16 : host_port_pair_(host_port_pair), | 15 : host_port_pair_(host_port_pair), |
17 is_https_(is_https), | 16 is_https_(is_https) {} |
18 privacy_mode_(privacy_mode) {} | |
19 | 17 |
20 QuicSessionKey::QuicSessionKey(const string& host, | 18 QuicSessionKey::QuicSessionKey(const string& host, |
21 uint16 port, | 19 uint16 port, |
22 bool is_https, | 20 bool is_https) |
23 PrivacyMode privacy_mode) | |
24 : host_port_pair_(host, port), | 21 : host_port_pair_(host, port), |
25 is_https_(is_https), | 22 is_https_(is_https) {} |
26 privacy_mode_(privacy_mode) {} | |
27 | 23 |
28 QuicSessionKey::~QuicSessionKey() {} | 24 QuicSessionKey::~QuicSessionKey() {} |
29 | 25 |
30 bool QuicSessionKey::operator<(const QuicSessionKey& other) const { | 26 bool QuicSessionKey::operator<(const QuicSessionKey& other) const { |
31 if (!host_port_pair_.Equals(other.host_port_pair_)) { | 27 if (!host_port_pair_.Equals(other.host_port_pair_)) { |
32 return host_port_pair_ < other.host_port_pair_; | 28 return host_port_pair_ < other.host_port_pair_; |
33 } | 29 } |
34 if (is_https_ != other.is_https_) { | 30 return is_https_ < other.is_https_; |
35 return is_https_ < other.is_https_; | |
36 } | |
37 return privacy_mode_ < other.privacy_mode_; | |
38 } | 31 } |
39 | 32 |
40 bool QuicSessionKey::operator==(const QuicSessionKey& other) const { | 33 bool QuicSessionKey::operator==(const QuicSessionKey& other) const { |
41 return is_https_ == other.is_https_ && | 34 return is_https_ == other.is_https_ && |
42 privacy_mode_ == other.privacy_mode_ && | |
43 host_port_pair_.Equals(other.host_port_pair_); | 35 host_port_pair_.Equals(other.host_port_pair_); |
44 } | 36 } |
45 | 37 |
46 string QuicSessionKey::ToString() const { | 38 string QuicSessionKey::ToString() const { |
47 return (is_https_ ? "https://" : "http://") + host_port_pair_.ToString() + | 39 return (is_https_ ? "https://" : "http://") + host_port_pair_.ToString(); |
48 (privacy_mode_ == kPrivacyModeEnabled ? "/private" : ""); | |
49 } | 40 } |
50 | 41 |
51 } // namespace net | 42 } // namespace net |
OLD | NEW |