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