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

Unified Diff: chrome/browser/chromeos/policy/status_uploader.cc

Issue 2765463002: Remote fetch device status (attributes and logs) command (Closed)
Patch Set: Created 3 years, 9 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/chromeos/policy/status_uploader.cc
diff --git a/chrome/browser/chromeos/policy/status_uploader.cc b/chrome/browser/chromeos/policy/status_uploader.cc
index 0c42579c80b2a9cfca3f18b12147f6e9412bf4cc..b27faf4d4bcdd6ddbe562a9b5e48af82d87d3ede 100644
--- a/chrome/browser/chromeos/policy/status_uploader.cc
+++ b/chrome/browser/chromeos/policy/status_uploader.cc
@@ -84,12 +84,15 @@ StatusUploader::~StatusUploader() {
MediaCaptureDevicesDispatcher::GetInstance()->RemoveObserver(this);
}
-void StatusUploader::ScheduleNextStatusUpload() {
+void StatusUploader::ScheduleNextStatusUpload(bool immediately) {
// Calculate when to fire off the next update (if it should have already
// happened, this yields a TimeDelta of kMinUploadScheduleDelayMs).
base::TimeDelta delay = std::max(
(last_upload_ + upload_frequency_) - base::Time::NowFromSystemTime(),
base::TimeDelta::FromMilliseconds(kMinUploadScheduleDelayMs));
+ // If we want an immediate status upload, set delay to 0.
+ if (immediately)
+ delay = base::TimeDelta();
upload_callback_.Reset(base::Bind(&StatusUploader::UploadStatus,
Andrew T Wilson (Slow) 2017/03/20 16:33:10 My main concern here is that we could have a statu
Ivan Šandrk 2017/03/20 17:48:53 I think it should actually be safe, but I haven't
base::Unretained(this)));
task_runner_->PostDelayedTask(FROM_HERE, upload_callback_.callback(), delay);
@@ -172,6 +175,10 @@ void StatusUploader::OnRequestUpdate(int render_process_id,
}
}
+void StatusUploader::ScheduleNextStatusUploadImmediately() {
+ ScheduleNextStatusUpload(true);
+}
+
void StatusUploader::UploadStatus() {
// Gather status in the background.
collector_->GetDeviceAndSessionStatusAsync(base::Bind(

Powered by Google App Engine
This is Rietveld 408576698