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

Side by Side Diff: chrome/browser/chromeos/policy/system_log_uploader.cc

Issue 1557693002: Convert Pass()→std::move() in //chrome/browser/chromeos/policy (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 11 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 (c) 2015 The Chromium Authors. All rights reserved. 1 // Copyright (c) 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 "chrome/browser/chromeos/policy/system_log_uploader.h"
6
7 #include <utility>
8
5 #include "base/bind.h" 9 #include "base/bind.h"
6 #include "base/bind_helpers.h" 10 #include "base/bind_helpers.h"
7 #include "base/command_line.h" 11 #include "base/command_line.h"
8 #include "base/files/file_util.h" 12 #include "base/files/file_util.h"
9 #include "base/location.h" 13 #include "base/location.h"
10 #include "base/macros.h" 14 #include "base/macros.h"
11 #include "base/metrics/histogram_macros.h" 15 #include "base/metrics/histogram_macros.h"
12 #include "base/strings/string_number_conversions.h" 16 #include "base/strings/string_number_conversions.h"
13 #include "base/strings/string_split.h" 17 #include "base/strings/string_split.h"
14 #include "base/strings/stringprintf.h" 18 #include "base/strings/stringprintf.h"
15 #include "base/task_runner_util.h" 19 #include "base/task_runner_util.h"
16 #include "chrome/browser/browser_process.h" 20 #include "chrome/browser/browser_process.h"
17 #include "chrome/browser/chromeos/policy/system_log_uploader.h"
18 #include "chrome/browser/chromeos/policy/upload_job_impl.h" 21 #include "chrome/browser/chromeos/policy/upload_job_impl.h"
19 #include "chrome/browser/chromeos/settings/device_oauth2_token_service.h" 22 #include "chrome/browser/chromeos/settings/device_oauth2_token_service.h"
20 #include "chrome/browser/chromeos/settings/device_oauth2_token_service_factory.h " 23 #include "chrome/browser/chromeos/settings/device_oauth2_token_service_factory.h "
21 #include "chrome/common/chrome_switches.h" 24 #include "chrome/common/chrome_switches.h"
22 #include "components/policy/core/browser/browser_policy_connector.h" 25 #include "components/policy/core/browser/browser_policy_connector.h"
23 #include "components/policy/core/common/cloud/enterprise_metrics.h" 26 #include "components/policy/core/common/cloud/enterprise_metrics.h"
24 #include "content/public/browser/browser_thread.h" 27 #include "content/public/browser/browser_thread.h"
25 #include "net/http/http_request_headers.h" 28 #include "net/http/http_request_headers.h"
26 #include "third_party/re2/src/re2/re2.h" 29 #include "third_party/re2/src/re2/re2.h"
27 30
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
78 if (!base::PathExists(base::FilePath(file_path))) 81 if (!base::PathExists(base::FilePath(file_path)))
79 continue; 82 continue;
80 std::string data = std::string(); 83 std::string data = std::string();
81 if (!base::ReadFileToString(base::FilePath(file_path), &data)) { 84 if (!base::ReadFileToString(base::FilePath(file_path), &data)) {
82 LOG(ERROR) << "Failed to read the system log file from the disk " 85 LOG(ERROR) << "Failed to read the system log file from the disk "
83 << file_path << std::endl; 86 << file_path << std::endl;
84 } 87 }
85 system_logs->push_back(std::make_pair( 88 system_logs->push_back(std::make_pair(
86 file_path, policy::SystemLogUploader::RemoveSensitiveData(data))); 89 file_path, policy::SystemLogUploader::RemoveSensitiveData(data)));
87 } 90 }
88 return system_logs.Pass(); 91 return system_logs;
89 } 92 }
90 93
91 // An implementation of the |SystemLogUploader::Delegate|, that is used to 94 // An implementation of the |SystemLogUploader::Delegate|, that is used to
92 // create an upload job and load system logs from the disk. 95 // create an upload job and load system logs from the disk.
93 class SystemLogDelegate : public policy::SystemLogUploader::Delegate { 96 class SystemLogDelegate : public policy::SystemLogUploader::Delegate {
94 public: 97 public:
95 SystemLogDelegate(); 98 SystemLogDelegate();
96 ~SystemLogDelegate() override; 99 ~SystemLogDelegate() override;
97 100
98 // SystemLogUploader::Delegate: 101 // SystemLogUploader::Delegate:
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after
186 189
187 // Template string constant for populating the name field. 190 // Template string constant for populating the name field.
188 const char* const SystemLogUploader::kNameFieldTemplate = "file%d"; 191 const char* const SystemLogUploader::kNameFieldTemplate = "file%d";
189 192
190 SystemLogUploader::SystemLogUploader( 193 SystemLogUploader::SystemLogUploader(
191 scoped_ptr<Delegate> syslog_delegate, 194 scoped_ptr<Delegate> syslog_delegate,
192 const scoped_refptr<base::SequencedTaskRunner>& task_runner) 195 const scoped_refptr<base::SequencedTaskRunner>& task_runner)
193 : retry_count_(0), 196 : retry_count_(0),
194 upload_frequency_(GetUploadFrequency()), 197 upload_frequency_(GetUploadFrequency()),
195 task_runner_(task_runner), 198 task_runner_(task_runner),
196 syslog_delegate_(syslog_delegate.Pass()), 199 syslog_delegate_(std::move(syslog_delegate)),
197 upload_enabled_(false), 200 upload_enabled_(false),
198 weak_factory_(this) { 201 weak_factory_(this) {
199 if (!syslog_delegate_) 202 if (!syslog_delegate_)
200 syslog_delegate_.reset(new SystemLogDelegate()); 203 syslog_delegate_.reset(new SystemLogDelegate());
201 DCHECK(syslog_delegate_); 204 DCHECK(syslog_delegate_);
202 205
203 // Watch for policy changes. 206 // Watch for policy changes.
204 upload_enabled_observer_ = chromeos::CrosSettings::Get()->AddSettingsObserver( 207 upload_enabled_observer_ = chromeos::CrosSettings::Get()->AddSettingsObserver(
205 chromeos::kSystemLogUploadEnabled, 208 chromeos::kSystemLogUploadEnabled,
206 base::Bind(&SystemLogUploader::RefreshUploadSettings, 209 base::Bind(&SystemLogUploader::RefreshUploadSettings,
(...skipping 112 matching lines...) Expand 10 before | Expand all | Expand 10 after
319 int file_number = 1; 322 int file_number = 1;
320 for (const auto& syslog_entry : *system_logs) { 323 for (const auto& syslog_entry : *system_logs) {
321 std::map<std::string, std::string> header_fields; 324 std::map<std::string, std::string> header_fields;
322 scoped_ptr<std::string> data = 325 scoped_ptr<std::string> data =
323 make_scoped_ptr(new std::string(syslog_entry.second)); 326 make_scoped_ptr(new std::string(syslog_entry.second));
324 header_fields.insert(std::make_pair(kFileTypeHeaderName, kFileTypeLogFile)); 327 header_fields.insert(std::make_pair(kFileTypeHeaderName, kFileTypeLogFile));
325 header_fields.insert(std::make_pair(net::HttpRequestHeaders::kContentType, 328 header_fields.insert(std::make_pair(net::HttpRequestHeaders::kContentType,
326 kContentTypePlainText)); 329 kContentTypePlainText));
327 upload_job_->AddDataSegment( 330 upload_job_->AddDataSegment(
328 base::StringPrintf(kNameFieldTemplate, file_number), syslog_entry.first, 331 base::StringPrintf(kNameFieldTemplate, file_number), syslog_entry.first,
329 header_fields, data.Pass()); 332 header_fields, std::move(data));
330 ++file_number; 333 ++file_number;
331 } 334 }
332 upload_job_->Start(); 335 upload_job_->Start();
333 } 336 }
334 337
335 void SystemLogUploader::StartLogUpload() { 338 void SystemLogUploader::StartLogUpload() {
336 // Must be called on the main thread. 339 // Must be called on the main thread.
337 DCHECK(thread_checker_.CalledOnValidThread()); 340 DCHECK(thread_checker_.CalledOnValidThread());
338 341
339 if (upload_enabled_) { 342 if (upload_enabled_) {
(...skipping 14 matching lines...) Expand all
354 base::TimeDelta()); 357 base::TimeDelta());
355 // Ensure that we never have more than one pending delayed task. 358 // Ensure that we never have more than one pending delayed task.
356 weak_factory_.InvalidateWeakPtrs(); 359 weak_factory_.InvalidateWeakPtrs();
357 task_runner_->PostDelayedTask(FROM_HERE, 360 task_runner_->PostDelayedTask(FROM_HERE,
358 base::Bind(&SystemLogUploader::StartLogUpload, 361 base::Bind(&SystemLogUploader::StartLogUpload,
359 weak_factory_.GetWeakPtr()), 362 weak_factory_.GetWeakPtr()),
360 delay); 363 delay);
361 } 364 }
362 365
363 } // namespace policy 366 } // namespace policy
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698