1 // Copyright 2014 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef CONTENT_BROWSER_TIME_ZONE_MONITOR_ANDROID_H_ 6 #define CONTENT_BROWSER_TIME_ZONE_MONITOR_ANDROID_H_ 7 8 #include "content/browser/time_zone_monitor.h" 9 10 #include <jni.h> 11 12 #include "base/android/scoped_java_ref.h" 13 #include "base/basictypes.h" 14 15 namespace content { 16 17 class TimeZoneMonitorAndroid : public TimeZoneMonitor { 18 public: 19 TimeZoneMonitorAndroid(); 20 virtual ~TimeZoneMonitorAndroid(); 21 22 // Must be called at startup. 23 static bool Register(JNIEnv* env); 24 25 // Called by the Java implementation when the system time zone changes. 26 void TimeZoneChangedFromJava(JNIEnv* env, jobject caller); 27 28 private: 29 // Java provider of system time zone change notifications. 30 base::android::ScopedJavaGlobalRef<jobject> impl_; 31 32 DISALLOW_COPY_AND_ASSIGN(TimeZoneMonitorAndroid); 33 }; 34 35 } // namespace content 36 37 #endif // CONTENT_BROWSER_TIME_ZONE_MONITOR_ANDROID_H_ 38