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

Side by Side Diff: chrome/browser/android/offline_pages/background_scheduler_bridge.h

Issue 2662103003: Always get device conditions from Java for every attempt. (Closed)
Patch Set: Created 3 years, 10 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 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 #ifndef CHROME_BROWSER_ANDROID_OFFLINE_PAGES_BACKGROUND_SCHEDULER_BRIDGE_H_ 5 #ifndef CHROME_BROWSER_ANDROID_OFFLINE_PAGES_BACKGROUND_SCHEDULER_BRIDGE_H_
6 #define CHROME_BROWSER_ANDROID_OFFLINE_PAGES_BACKGROUND_SCHEDULER_BRIDGE_H_ 6 #define CHROME_BROWSER_ANDROID_OFFLINE_PAGES_BACKGROUND_SCHEDULER_BRIDGE_H_
7 7
8 #include "components/offline_pages/core/background/scheduler.h" 8 #include "components/offline_pages/core/background/scheduler.h"
9 9
10 #include "base/android/jni_android.h" 10 #include "base/android/jni_android.h"
11 11
12 namespace offline_pages { 12 namespace offline_pages {
13 namespace android { 13 namespace android {
14 14
15 // Bridge between C++ and Java for implementing background scheduler 15 // Bridge between C++ and Java for implementing background scheduler
16 // on Android. 16 // on Android.
17 class BackgroundSchedulerBridge : public Scheduler { 17 class BackgroundSchedulerBridge : public Scheduler {
18 public: 18 public:
19 BackgroundSchedulerBridge();
20 ~BackgroundSchedulerBridge() override;
21
19 // Scheduler implementation. 22 // Scheduler implementation.
20 void Schedule(const TriggerConditions& trigger_conditions) override; 23 void Schedule(const TriggerConditions& trigger_conditions) override;
21 void BackupSchedule(const TriggerConditions& trigger_conditions, 24 void BackupSchedule(const TriggerConditions& trigger_conditions,
22 long delay_in_seconds) override; 25 long delay_in_seconds) override;
23 void Unschedule() override; 26 void Unschedule() override;
27 const DeviceConditions& GetCurrentDeviceConditions() override;
24 28
25 private: 29 private:
26 base::android::ScopedJavaLocalRef<jobject> CreateTriggerConditions( 30 base::android::ScopedJavaLocalRef<jobject> CreateTriggerConditions(
27 JNIEnv* env, 31 JNIEnv* env,
28 bool require_power_connected, 32 bool require_power_connected,
29 int minimum_battery_percentage, 33 int minimum_battery_percentage,
30 bool require_unmetered_network) const; 34 bool require_unmetered_network) const;
35 std::unique_ptr<DeviceConditions> device_conditions_;
31 }; 36 };
32 37
33 bool RegisterBackgroundSchedulerBridge(JNIEnv* env); 38 bool RegisterBackgroundSchedulerBridge(JNIEnv* env);
34 39
35 } // namespace android 40 } // namespace android
36 } // namespace offline_pages 41 } // namespace offline_pages
37 42
38 #endif // CHROME_BROWSER_ANDROID_OFFLINE_PAGES_BACKGROUND_SCHEDULER_BRIDGE_H_ 43 #endif // CHROME_BROWSER_ANDROID_OFFLINE_PAGES_BACKGROUND_SCHEDULER_BRIDGE_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698