| Index: components/offline_items_collection/core/android/offline_content_aggregator_bridge.cc
|
| diff --git a/components/offline_items_collection/core/android/offline_content_aggregator_bridge.cc b/components/offline_items_collection/core/android/offline_content_aggregator_bridge.cc
|
| index 6088531256a9d000140833927ffaec9916779210..892a0b7fbaf631cc4d01273d07eb75c8bd0cf50d 100644
|
| --- a/components/offline_items_collection/core/android/offline_content_aggregator_bridge.cc
|
| +++ b/components/offline_items_collection/core/android/offline_content_aggregator_bridge.cc
|
| @@ -6,9 +6,11 @@
|
|
|
| #include "base/android/jni_string.h"
|
| #include "base/bind.h"
|
| +#include "base/memory/ptr_util.h"
|
| #include "components/offline_items_collection/core/android/offline_item_bridge.h"
|
| #include "components/offline_items_collection/core/android/offline_item_visuals_bridge.h"
|
| #include "components/offline_items_collection/core/offline_item.h"
|
| +#include "components/offline_items_collection/core/throttled_offline_content_provider.h"
|
| #include "jni/OfflineContentAggregatorBridge_jni.h"
|
|
|
| using base::android::AttachCurrentThread;
|
| @@ -65,18 +67,18 @@ OfflineContentAggregatorBridge::GetBridgeForOfflineContentAggregator(
|
|
|
| OfflineContentAggregatorBridge::OfflineContentAggregatorBridge(
|
| OfflineContentAggregator* aggregator)
|
| - : aggregator_(aggregator) {
|
| + : provider_(base::MakeUnique<ThrottledOfflineContentProvider>(aggregator)) {
|
| JNIEnv* env = AttachCurrentThread();
|
| java_ref_.Reset(Java_OfflineContentAggregatorBridge_create(
|
| env, reinterpret_cast<intptr_t>(this)));
|
|
|
| - aggregator_->AddObserver(this);
|
| + provider_->AddObserver(this);
|
| }
|
|
|
| OfflineContentAggregatorBridge::~OfflineContentAggregatorBridge() {
|
| // TODO(dtrainor): Do not need to unregister because in the destructor of the
|
| // base class of OfflineContentAggregator. Is |observers_| already dead?
|
| - aggregator_->RemoveObserver(this);
|
| + provider_->RemoveObserver(this);
|
|
|
| Java_OfflineContentAggregatorBridge_onNativeDestroyed(AttachCurrentThread(),
|
| java_ref_.obj());
|
| @@ -85,7 +87,7 @@ OfflineContentAggregatorBridge::~OfflineContentAggregatorBridge() {
|
| jboolean OfflineContentAggregatorBridge::AreItemsAvailable(
|
| JNIEnv* env,
|
| const JavaParamRef<jobject>& jobj) {
|
| - return aggregator_->AreItemsAvailable();
|
| + return provider_->AreItemsAvailable();
|
| }
|
|
|
| void OfflineContentAggregatorBridge::OpenItem(
|
| @@ -93,7 +95,7 @@ void OfflineContentAggregatorBridge::OpenItem(
|
| const JavaParamRef<jobject>& jobj,
|
| const JavaParamRef<jstring>& j_namespace,
|
| const JavaParamRef<jstring>& j_id) {
|
| - aggregator_->OpenItem(CreateContentId(env, j_namespace, j_id));
|
| + provider_->OpenItem(CreateContentId(env, j_namespace, j_id));
|
| }
|
|
|
| void OfflineContentAggregatorBridge::RemoveItem(
|
| @@ -101,7 +103,7 @@ void OfflineContentAggregatorBridge::RemoveItem(
|
| const JavaParamRef<jobject>& jobj,
|
| const JavaParamRef<jstring>& j_namespace,
|
| const JavaParamRef<jstring>& j_id) {
|
| - aggregator_->RemoveItem(CreateContentId(env, j_namespace, j_id));
|
| + provider_->RemoveItem(CreateContentId(env, j_namespace, j_id));
|
| }
|
|
|
| void OfflineContentAggregatorBridge::CancelDownload(
|
| @@ -109,7 +111,7 @@ void OfflineContentAggregatorBridge::CancelDownload(
|
| const JavaParamRef<jobject>& jobj,
|
| const JavaParamRef<jstring>& j_namespace,
|
| const JavaParamRef<jstring>& j_id) {
|
| - aggregator_->CancelDownload(CreateContentId(env, j_namespace, j_id));
|
| + provider_->CancelDownload(CreateContentId(env, j_namespace, j_id));
|
| }
|
|
|
| void OfflineContentAggregatorBridge::PauseDownload(
|
| @@ -117,7 +119,7 @@ void OfflineContentAggregatorBridge::PauseDownload(
|
| const JavaParamRef<jobject>& jobj,
|
| const JavaParamRef<jstring>& j_namespace,
|
| const JavaParamRef<jstring>& j_guid) {
|
| - aggregator_->PauseDownload(CreateContentId(env, j_namespace, j_guid));
|
| + provider_->PauseDownload(CreateContentId(env, j_namespace, j_guid));
|
| }
|
|
|
| void OfflineContentAggregatorBridge::ResumeDownload(
|
| @@ -125,7 +127,7 @@ void OfflineContentAggregatorBridge::ResumeDownload(
|
| const JavaParamRef<jobject>& jobj,
|
| const JavaParamRef<jstring>& j_namespace,
|
| const JavaParamRef<jstring>& j_id) {
|
| - aggregator_->ResumeDownload(CreateContentId(env, j_namespace, j_id));
|
| + provider_->ResumeDownload(CreateContentId(env, j_namespace, j_id));
|
| }
|
|
|
| ScopedJavaLocalRef<jobject> OfflineContentAggregatorBridge::GetItemById(
|
| @@ -134,7 +136,7 @@ ScopedJavaLocalRef<jobject> OfflineContentAggregatorBridge::GetItemById(
|
| const JavaParamRef<jstring>& j_namespace,
|
| const JavaParamRef<jstring>& j_id) {
|
| const OfflineItem* item =
|
| - aggregator_->GetItemById(CreateContentId(env, j_namespace, j_id));
|
| + provider_->GetItemById(CreateContentId(env, j_namespace, j_id));
|
|
|
| return OfflineItemBridge::CreateOfflineItem(env, item);
|
| }
|
| @@ -143,7 +145,7 @@ ScopedJavaLocalRef<jobject> OfflineContentAggregatorBridge::GetAllItems(
|
| JNIEnv* env,
|
| const JavaParamRef<jobject>& jobj) {
|
| return OfflineItemBridge::CreateOfflineItemList(env,
|
| - aggregator_->GetAllItems());
|
| + provider_->GetAllItems());
|
| }
|
|
|
| void OfflineContentAggregatorBridge::GetVisualsForItem(
|
| @@ -152,7 +154,7 @@ void OfflineContentAggregatorBridge::GetVisualsForItem(
|
| const JavaParamRef<jstring>& j_namespace,
|
| const JavaParamRef<jstring>& j_id,
|
| const JavaParamRef<jobject>& j_callback) {
|
| - aggregator_->GetVisualsForItem(
|
| + provider_->GetVisualsForItem(
|
| CreateContentId(env, j_namespace, j_id),
|
| base::Bind(&GetVisualsForItemHelperCallback,
|
| ScopedJavaGlobalRef<jobject>(env, j_callback)));
|
|
|