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 |