Index: net/http/http_server_properties_impl.cc |
diff --git a/net/http/http_server_properties_impl.cc b/net/http/http_server_properties_impl.cc |
index 4140e1d6e35ae5dd9ed1ad236a66779aee6d4fcf..b96a4b27d707291d89ce5a9629f96cf4b447cb48 100644 |
--- a/net/http/http_server_properties_impl.cc |
+++ b/net/http/http_server_properties_impl.cc |
@@ -45,25 +45,15 @@ HttpServerPropertiesImpl::~HttpServerPropertiesImpl() { |
} |
void HttpServerPropertiesImpl::SetSpdyServers( |
- std::vector<std::string>* spdy_servers, |
- bool support_spdy) { |
+ std::unique_ptr<SpdyServersMap> spdy_servers_map) { |
DCHECK_CALLED_ON_VALID_THREAD(thread_checker_); |
- if (!spdy_servers) |
- return; |
// Add the entries from persisted data. |
- SpdyServersMap spdy_servers_map(SpdyServersMap::NO_AUTO_EVICT); |
- for (std::vector<std::string>::reverse_iterator it = spdy_servers->rbegin(); |
- it != spdy_servers->rend(); ++it) { |
- spdy_servers_map.Put(*it, support_spdy); |
- } |
- |
- // |spdy_servers_map| will have the memory cache. |
- spdy_servers_map_.Swap(spdy_servers_map); |
+ spdy_servers_map_.Swap(*spdy_servers_map); |
// Add the entries from the memory cache. |
- for (SpdyServersMap::reverse_iterator it = spdy_servers_map.rbegin(); |
- it != spdy_servers_map.rend(); ++it) { |
+ for (SpdyServersMap::reverse_iterator it = spdy_servers_map->rbegin(); |
+ it != spdy_servers_map->rend(); ++it) { |
// Add the entry if it is not in the cache, otherwise move it to the front |
// of recency list. |
if (spdy_servers_map_.Get(it->first) == spdy_servers_map_.end()) |
@@ -72,7 +62,7 @@ void HttpServerPropertiesImpl::SetSpdyServers( |
} |
void HttpServerPropertiesImpl::SetAlternativeServiceServers( |
- AlternativeServiceMap* alternative_service_map) { |
+ std::unique_ptr<AlternativeServiceMap> alternative_service_map) { |
int32_t size_diff = |
alternative_service_map->size() - alternative_service_map_.size(); |
if (size_diff > 0) { |
@@ -83,22 +73,12 @@ void HttpServerPropertiesImpl::SetAlternativeServiceServers( |
"Net.AlternativeServiceServers.MoreOrEqualCacheEntries", -size_diff); |
} |
- AlternativeServiceMap new_alternative_service_map( |
- AlternativeServiceMap::NO_AUTO_EVICT); |
// Add the entries from persisted data. |
- for (AlternativeServiceMap::reverse_iterator input_it = |
- alternative_service_map->rbegin(); |
- input_it != alternative_service_map->rend(); ++input_it) { |
- DCHECK(!input_it->second.empty()); |
- new_alternative_service_map.Put(input_it->first, input_it->second); |
- } |
- |
- alternative_service_map_.Swap(new_alternative_service_map); |
+ alternative_service_map_.Swap(*alternative_service_map); |
// Add the entries from the memory cache. |
- for (AlternativeServiceMap::reverse_iterator input_it = |
- new_alternative_service_map.rbegin(); |
- input_it != new_alternative_service_map.rend(); ++input_it) { |
+ for (auto input_it = alternative_service_map->rbegin(); |
+ input_it != alternative_service_map->rend(); ++input_it) { |
if (alternative_service_map_.Get(input_it->first) == |
alternative_service_map_.end()) { |
alternative_service_map_.Put(input_it->first, input_it->second); |
@@ -133,28 +113,19 @@ void HttpServerPropertiesImpl::SetAlternativeServiceServers( |
} |
} |
-void HttpServerPropertiesImpl::SetSupportsQuic(IPAddress* last_address) { |
- if (last_address) |
- last_quic_address_ = *last_address; |
+void HttpServerPropertiesImpl::SetSupportsQuic(const IPAddress& last_address) { |
+ last_quic_address_ = last_address; |
} |
void HttpServerPropertiesImpl::SetServerNetworkStats( |
- ServerNetworkStatsMap* server_network_stats_map) { |
+ std::unique_ptr<ServerNetworkStatsMap> server_network_stats_map) { |
// Add the entries from persisted data. |
- ServerNetworkStatsMap new_server_network_stats_map( |
- ServerNetworkStatsMap::NO_AUTO_EVICT); |
- for (ServerNetworkStatsMap::reverse_iterator it = |
- server_network_stats_map->rbegin(); |
- it != server_network_stats_map->rend(); ++it) { |
- new_server_network_stats_map.Put(it->first, it->second); |
- } |
- |
- server_network_stats_map_.Swap(new_server_network_stats_map); |
+ server_network_stats_map_.Swap(*server_network_stats_map); |
// Add the entries from the memory cache. |
for (ServerNetworkStatsMap::reverse_iterator it = |
- new_server_network_stats_map.rbegin(); |
- it != new_server_network_stats_map.rend(); ++it) { |
+ server_network_stats_map->rbegin(); |
+ it != server_network_stats_map->rend(); ++it) { |
if (server_network_stats_map_.Get(it->first) == |
server_network_stats_map_.end()) { |
server_network_stats_map_.Put(it->first, it->second); |
@@ -163,19 +134,13 @@ void HttpServerPropertiesImpl::SetServerNetworkStats( |
} |
void HttpServerPropertiesImpl::SetQuicServerInfoMap( |
- QuicServerInfoMap* quic_server_info_map) { |
+ std::unique_ptr<QuicServerInfoMap> quic_server_info_map) { |
// Add the entries from persisted data. |
- QuicServerInfoMap temp_map(QuicServerInfoMap::NO_AUTO_EVICT); |
- for (QuicServerInfoMap::reverse_iterator it = quic_server_info_map->rbegin(); |
- it != quic_server_info_map->rend(); ++it) { |
- temp_map.Put(it->first, it->second); |
- } |
- |
- quic_server_info_map_.Swap(temp_map); |
+ quic_server_info_map_.Swap(*quic_server_info_map); |
// Add the entries from the memory cache. |
- for (QuicServerInfoMap::reverse_iterator it = temp_map.rbegin(); |
- it != temp_map.rend(); ++it) { |
+ for (QuicServerInfoMap::reverse_iterator it = quic_server_info_map->rbegin(); |
+ it != quic_server_info_map->rend(); ++it) { |
if (quic_server_info_map_.Get(it->first) == quic_server_info_map_.end()) { |
quic_server_info_map_.Put(it->first, it->second); |
} |
@@ -183,18 +148,18 @@ void HttpServerPropertiesImpl::SetQuicServerInfoMap( |
} |
void HttpServerPropertiesImpl::GetSpdyServerList( |
- base::ListValue* spdy_server_list, |
+ std::vector<std::string>* spdy_servers, |
size_t max_size) const { |
DCHECK_CALLED_ON_VALID_THREAD(thread_checker_); |
- DCHECK(spdy_server_list); |
- spdy_server_list->Clear(); |
+ DCHECK(spdy_servers); |
+ |
+ spdy_servers->clear(); |
size_t count = 0; |
// Get the list of servers (scheme/host/port) that support SPDY. |
for (SpdyServersMap::const_iterator it = spdy_servers_map_.begin(); |
it != spdy_servers_map_.end() && count < max_size; ++it) { |
- const std::string spdy_server = it->first; |
if (it->second) { |
- spdy_server_list->AppendString(spdy_server); |
+ spdy_servers->push_back(it->first); |
++count; |
} |
} |