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

Side by Side Diff: remoting/test/host_list_fetcher.cc

Issue 2000803003: Use std::unique_ptr for base::DictionaryValue and base::ListValue's internal store. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix various builds. Created 4 years, 7 months 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
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 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 #include "remoting/test/host_list_fetcher.h" 5 #include "remoting/test/host_list_fetcher.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/callback_helpers.h" 8 #include "base/callback_helpers.h"
9 #include "base/json/json_reader.h" 9 #include "base/json/json_reader.h"
10 #include "base/logging.h" 10 #include "base/logging.h"
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after
81 } 81 }
82 82
83 const base::ListValue* hosts = nullptr; 83 const base::ListValue* hosts = nullptr;
84 if (!data->GetList("items", &hosts)) { 84 if (!data->GetList("items", &hosts)) {
85 LOG(ERROR) << "Failed to find hosts in Hostlist response data"; 85 LOG(ERROR) << "Failed to find hosts in Hostlist response data";
86 return false; 86 return false;
87 } 87 }
88 88
89 // Any host_info with malformed data will not be added to the hostlist. 89 // Any host_info with malformed data will not be added to the hostlist.
90 base::DictionaryValue* host_dict; 90 base::DictionaryValue* host_dict;
91 for (base::Value* host_info : *hosts) { 91 for (const auto& host_info : *hosts) {
92 HostInfo host; 92 HostInfo host;
93 if (host_info->GetAsDictionary(&host_dict) && 93 if (host_info->GetAsDictionary(&host_dict) &&
94 host.ParseHostInfo(*host_dict)) { 94 host.ParseHostInfo(*host_dict)) {
95 hostlist->push_back(host); 95 hostlist->push_back(host);
96 } 96 }
97 } 97 }
98 return true; 98 return true;
99 } 99 }
100 100
101 void HostListFetcher::OnURLFetchComplete( 101 void HostListFetcher::OnURLFetchComplete(
102 const net::URLFetcher* source) { 102 const net::URLFetcher* source) {
103 DCHECK(source); 103 DCHECK(source);
104 VLOG(2) << "URL Fetch Completed for: " << source->GetOriginalURL(); 104 VLOG(2) << "URL Fetch Completed for: " << source->GetOriginalURL();
105 105
106 std::vector<HostInfo> hostlist; 106 std::vector<HostInfo> hostlist;
107 107
108 if (!ProcessResponse(&hostlist)) { 108 if (!ProcessResponse(&hostlist)) {
109 hostlist.clear(); 109 hostlist.clear();
110 } 110 }
111 base::ResetAndReturn(&hostlist_callback_).Run(hostlist); 111 base::ResetAndReturn(&hostlist_callback_).Run(hostlist);
112 } 112 }
113 113
114 } // namespace test 114 } // namespace test
115 } // namespace remoting 115 } // namespace remoting
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698