| Index: content/browser/media/android/media_throttler.cc
|
| diff --git a/content/browser/media/android/media_throttler.cc b/content/browser/media/android/media_throttler.cc
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..04c8030ff5be2a6163b9a71e7f03f3ed5a9230ac
|
| --- /dev/null
|
| +++ b/content/browser/media/android/media_throttler.cc
|
| @@ -0,0 +1,48 @@
|
| +// Copyright 2015 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +#include "content/browser/media/android/media_throttler.h"
|
| +
|
| +#include "base/android/jni_android.h"
|
| +#include "jni/MediaThrottler_jni.h"
|
| +
|
| +namespace content {
|
| +
|
| +// static
|
| +MediaThrottler* MediaThrottler::GetInstance() {
|
| + return base::Singleton<MediaThrottler>::get();
|
| +}
|
| +
|
| +// static
|
| +bool MediaThrottler::RegisterMediaThrottler(JNIEnv* env) {
|
| + return RegisterNativesImpl(env);
|
| +}
|
| +
|
| +MediaThrottler::~MediaThrottler() {}
|
| +
|
| +bool MediaThrottler::RequestDecoderResources() {
|
| + JNIEnv* env = base::android::AttachCurrentThread();
|
| + return Java_MediaThrottler_requestDecoderResources(
|
| + env, j_media_throttler_.obj());
|
| +}
|
| +
|
| +void MediaThrottler::OnDecodeRequestFinished() {
|
| + JNIEnv* env = base::android::AttachCurrentThread();
|
| + Java_MediaThrottler_onDecodeRequestFinished(env, j_media_throttler_.obj());
|
| +}
|
| +
|
| +void MediaThrottler::Reset() {
|
| + JNIEnv* env = base::android::AttachCurrentThread();
|
| + Java_MediaThrottler_reset(env, j_media_throttler_.obj());
|
| +}
|
| +
|
| +MediaThrottler::MediaThrottler() {
|
| + JNIEnv* env = base::android::AttachCurrentThread();
|
| + CHECK(env);
|
| +
|
| + j_media_throttler_.Reset(Java_MediaThrottler_create(
|
| + env, base::android::GetApplicationContext()));
|
| +}
|
| +
|
| +} // namespace content
|
|
|