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#include "content/browser/time_zone_monitor_android.h" 6 7#include "base/android/jni_android.h" 8#include "jni/TimeZoneMonitor_jni.h" 9 10namespace content { 11 12TimeZoneMonitorAndroid::TimeZoneMonitorAndroid() : TimeZoneMonitor() { 13 impl_.Reset(Java_TimeZoneMonitor_getInstance( 14 base::android::AttachCurrentThread(), 15 base::android::GetApplicationContext(), 16 reinterpret_cast<intptr_t>(this))); 17} 18 19TimeZoneMonitorAndroid::~TimeZoneMonitorAndroid() { 20 Java_TimeZoneMonitor_stop(base::android::AttachCurrentThread(), impl_.obj()); 21} 22 23// static 24bool TimeZoneMonitorAndroid::Register(JNIEnv* env) { 25 return RegisterNativesImpl(env); 26} 27 28void TimeZoneMonitorAndroid::TimeZoneChangedFromJava(JNIEnv* env, 29 jobject caller) { 30 NotifyRenderers(); 31} 32 33// static 34scoped_ptr<TimeZoneMonitor> TimeZoneMonitor::Create() { 35 return scoped_ptr<TimeZoneMonitor>(new TimeZoneMonitorAndroid()); 36} 37 38} // namespace content 39