| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 #include "chrome/browser/android/offline_pages/offline_page_bridge.h" | 5 #include "chrome/browser/android/offline_pages/offline_page_bridge.h" |
| 6 | 6 |
| 7 #include <memory> | 7 #include <memory> |
| 8 #include <set> | 8 #include <set> |
| 9 #include <string> | 9 #include <string> |
| 10 #include <utility> | 10 #include <utility> |
| (...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 97 | 97 |
| 98 void GetAllPagesCallback( | 98 void GetAllPagesCallback( |
| 99 const ScopedJavaGlobalRef<jobject>& j_result_obj, | 99 const ScopedJavaGlobalRef<jobject>& j_result_obj, |
| 100 const ScopedJavaGlobalRef<jobject>& j_callback_obj, | 100 const ScopedJavaGlobalRef<jobject>& j_callback_obj, |
| 101 const OfflinePageModel::MultipleOfflinePageItemResult& result) { | 101 const OfflinePageModel::MultipleOfflinePageItemResult& result) { |
| 102 JNIEnv* env = base::android::AttachCurrentThread(); | 102 JNIEnv* env = base::android::AttachCurrentThread(); |
| 103 ToJavaOfflinePageList(env, j_result_obj.obj(), result); | 103 ToJavaOfflinePageList(env, j_result_obj.obj(), result); |
| 104 base::android::RunCallbackAndroid(j_callback_obj, j_result_obj); | 104 base::android::RunCallbackAndroid(j_callback_obj, j_result_obj); |
| 105 } | 105 } |
| 106 | 106 |
| 107 void HasPagesCallback(const ScopedJavaGlobalRef<jobject>& j_callback_obj, | |
| 108 bool result) { | |
| 109 base::android::RunCallbackAndroid(j_callback_obj, result); | |
| 110 } | |
| 111 | |
| 112 void SavePageCallback(const ScopedJavaGlobalRef<jobject>& j_callback_obj, | 107 void SavePageCallback(const ScopedJavaGlobalRef<jobject>& j_callback_obj, |
| 113 const GURL& url, | 108 const GURL& url, |
| 114 OfflinePageModel::SavePageResult result, | 109 OfflinePageModel::SavePageResult result, |
| 115 int64_t offline_id) { | 110 int64_t offline_id) { |
| 116 JNIEnv* env = base::android::AttachCurrentThread(); | 111 JNIEnv* env = base::android::AttachCurrentThread(); |
| 117 | 112 |
| 118 Java_SavePageCallback_onSavePageDone( | 113 Java_SavePageCallback_onSavePageDone( |
| 119 env, j_callback_obj, static_cast<int>(result), | 114 env, j_callback_obj, static_cast<int>(result), |
| 120 ConvertUTF8ToJavaString(env, url.spec()), offline_id); | 115 ConvertUTF8ToJavaString(env, url.spec()), offline_id); |
| 121 } | 116 } |
| (...skipping 159 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 281 Java_OfflinePageBridge_offlinePageModelChanged(env, java_ref_); | 276 Java_OfflinePageBridge_offlinePageModelChanged(env, java_ref_); |
| 282 } | 277 } |
| 283 | 278 |
| 284 void OfflinePageBridge::OfflinePageDeleted(int64_t offline_id, | 279 void OfflinePageBridge::OfflinePageDeleted(int64_t offline_id, |
| 285 const ClientId& client_id) { | 280 const ClientId& client_id) { |
| 286 JNIEnv* env = base::android::AttachCurrentThread(); | 281 JNIEnv* env = base::android::AttachCurrentThread(); |
| 287 Java_OfflinePageBridge_offlinePageDeleted(env, java_ref_, offline_id, | 282 Java_OfflinePageBridge_offlinePageDeleted(env, java_ref_, offline_id, |
| 288 CreateClientId(env, client_id)); | 283 CreateClientId(env, client_id)); |
| 289 } | 284 } |
| 290 | 285 |
| 291 void OfflinePageBridge::HasPages(JNIEnv* env, | |
| 292 const JavaParamRef<jobject>& obj, | |
| 293 const JavaParamRef<jstring>& j_namespace, | |
| 294 const JavaParamRef<jobject>& j_callback_obj) { | |
| 295 std::string name_space = ConvertJavaStringToUTF8(env, j_namespace); | |
| 296 | |
| 297 ScopedJavaGlobalRef<jobject> j_callback_ref; | |
| 298 j_callback_ref.Reset(env, j_callback_obj); | |
| 299 | |
| 300 return offline_page_model_->HasPages( | |
| 301 name_space, base::Bind(&HasPagesCallback, j_callback_ref)); | |
| 302 } | |
| 303 | |
| 304 void OfflinePageBridge::CheckPagesExistOffline( | 286 void OfflinePageBridge::CheckPagesExistOffline( |
| 305 JNIEnv* env, | 287 JNIEnv* env, |
| 306 const JavaParamRef<jobject>& obj, | 288 const JavaParamRef<jobject>& obj, |
| 307 const JavaParamRef<jobjectArray>& j_urls_array, | 289 const JavaParamRef<jobjectArray>& j_urls_array, |
| 308 const JavaParamRef<jobject>& j_callback_obj) { | 290 const JavaParamRef<jobject>& j_callback_obj) { |
| 309 DCHECK(j_urls_array); | 291 DCHECK(j_urls_array); |
| 310 DCHECK(j_callback_obj); | 292 DCHECK(j_callback_obj); |
| 311 | 293 |
| 312 std::vector<std::string> urls; | 294 std::vector<std::string> urls; |
| 313 base::android::AppendJavaStringArrayToStringVector(env, j_urls_array.obj(), | 295 base::android::AppendJavaStringArrayToStringVector(env, j_urls_array.obj(), |
| (...skipping 221 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 535 env, ConvertUTF8ToJavaString(env, client_id.name_space), | 517 env, ConvertUTF8ToJavaString(env, client_id.name_space), |
| 536 ConvertUTF8ToJavaString(env, client_id.id)); | 518 ConvertUTF8ToJavaString(env, client_id.id)); |
| 537 } | 519 } |
| 538 | 520 |
| 539 bool RegisterOfflinePageBridge(JNIEnv* env) { | 521 bool RegisterOfflinePageBridge(JNIEnv* env) { |
| 540 return RegisterNativesImpl(env); | 522 return RegisterNativesImpl(env); |
| 541 } | 523 } |
| 542 | 524 |
| 543 } // namespace android | 525 } // namespace android |
| 544 } // namespace offline_pages | 526 } // namespace offline_pages |
| OLD | NEW |