| 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 120 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 131 JNIEnv* env = base::android::AttachCurrentThread(); | 131 JNIEnv* env = base::android::AttachCurrentThread(); |
| 132 ScopedJavaLocalRef<jobject> j_result; | 132 ScopedJavaLocalRef<jobject> j_result; |
| 133 | 133 |
| 134 if (result) | 134 if (result) |
| 135 j_result = ToJavaOfflinePageItem(env, *result); | 135 j_result = ToJavaOfflinePageItem(env, *result); |
| 136 base::android::RunCallbackAndroid(j_callback_obj, j_result); | 136 base::android::RunCallbackAndroid(j_callback_obj, j_result); |
| 137 } | 137 } |
| 138 | 138 |
| 139 ScopedJavaLocalRef<jobjectArray> CreateJavaSavePageRequests( | 139 ScopedJavaLocalRef<jobjectArray> CreateJavaSavePageRequests( |
| 140 JNIEnv* env, | 140 JNIEnv* env, |
| 141 const std::vector<SavePageRequest>& requests) { | 141 std::vector<std::unique_ptr<SavePageRequest>> requests) { |
| 142 ScopedJavaLocalRef<jclass> save_page_request_clazz = base::android::GetClass( | 142 ScopedJavaLocalRef<jclass> save_page_request_clazz = base::android::GetClass( |
| 143 env, "org/chromium/chrome/browser/offlinepages/SavePageRequest"); | 143 env, "org/chromium/chrome/browser/offlinepages/SavePageRequest"); |
| 144 jobjectArray joa = env->NewObjectArray( | 144 jobjectArray joa = env->NewObjectArray( |
| 145 requests.size(), save_page_request_clazz.obj(), nullptr); | 145 requests.size(), save_page_request_clazz.obj(), nullptr); |
| 146 base::android::CheckException(env); | 146 base::android::CheckException(env); |
| 147 | 147 |
| 148 for (size_t i = 0; i < requests.size(); ++i) { | 148 for (size_t i = 0; i < requests.size(); ++i) { |
| 149 SavePageRequest request = requests[i]; | 149 SavePageRequest request = *(requests[i]); |
| 150 ScopedJavaLocalRef<jstring> name_space = | 150 ScopedJavaLocalRef<jstring> name_space = |
| 151 ConvertUTF8ToJavaString(env, request.client_id().name_space); | 151 ConvertUTF8ToJavaString(env, request.client_id().name_space); |
| 152 ScopedJavaLocalRef<jstring> id = | 152 ScopedJavaLocalRef<jstring> id = |
| 153 ConvertUTF8ToJavaString(env, request.client_id().id); | 153 ConvertUTF8ToJavaString(env, request.client_id().id); |
| 154 ScopedJavaLocalRef<jstring> url = | 154 ScopedJavaLocalRef<jstring> url = |
| 155 ConvertUTF8ToJavaString(env, request.url().spec()); | 155 ConvertUTF8ToJavaString(env, request.url().spec()); |
| 156 | 156 |
| 157 ScopedJavaLocalRef<jobject> j_save_page_request = | 157 ScopedJavaLocalRef<jobject> j_save_page_request = |
| 158 Java_SavePageRequest_create(env, (int)request.request_state(), | 158 Java_SavePageRequest_create(env, (int)request.request_state(), |
| 159 request.request_id(), url, name_space, id); | 159 request.request_id(), url, name_space, id); |
| 160 env->SetObjectArrayElement(joa, i, j_save_page_request.obj()); | 160 env->SetObjectArrayElement(joa, i, j_save_page_request.obj()); |
| 161 } | 161 } |
| 162 | 162 |
| 163 return ScopedJavaLocalRef<jobjectArray>(env, joa); | 163 return ScopedJavaLocalRef<jobjectArray>(env, joa); |
| 164 } | 164 } |
| 165 | 165 |
| 166 void OnGetAllRequestsDone(const ScopedJavaGlobalRef<jobject>& j_callback_obj, | 166 void OnGetAllRequestsDone( |
| 167 const std::vector<SavePageRequest>& all_requests) { | 167 const ScopedJavaGlobalRef<jobject>& j_callback_obj, |
| 168 std::vector<std::unique_ptr<SavePageRequest>> all_requests) { |
| 168 JNIEnv* env = base::android::AttachCurrentThread(); | 169 JNIEnv* env = base::android::AttachCurrentThread(); |
| 169 | 170 |
| 170 ScopedJavaLocalRef<jobjectArray> j_result_obj = | 171 ScopedJavaLocalRef<jobjectArray> j_result_obj = |
| 171 CreateJavaSavePageRequests(env, all_requests); | 172 CreateJavaSavePageRequests(env, std::move(all_requests)); |
| 172 base::android::RunCallbackAndroid(j_callback_obj, j_result_obj); | 173 base::android::RunCallbackAndroid(j_callback_obj, j_result_obj); |
| 173 } | 174 } |
| 174 | 175 |
| 175 void OnRemoveRequestsDone( | 176 void OnRemoveRequestsDone( |
| 176 const ScopedJavaGlobalRef<jobject>& j_callback_obj, | 177 const ScopedJavaGlobalRef<jobject>& j_callback_obj, |
| 177 const RequestQueue::UpdateMultipleRequestResults& removed_request_results) { | 178 const RequestQueue::UpdateMultipleRequestResults& removed_request_results) { |
| 178 JNIEnv* env = base::android::AttachCurrentThread(); | 179 JNIEnv* env = base::android::AttachCurrentThread(); |
| 179 | 180 |
| 180 std::vector<int> update_request_results; | 181 std::vector<int> update_request_results; |
| 181 std::vector<int64_t> update_request_ids; | 182 std::vector<int64_t> update_request_ids; |
| (...skipping 352 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 534 env, ConvertUTF8ToJavaString(env, client_id.name_space), | 535 env, ConvertUTF8ToJavaString(env, client_id.name_space), |
| 535 ConvertUTF8ToJavaString(env, client_id.id)); | 536 ConvertUTF8ToJavaString(env, client_id.id)); |
| 536 } | 537 } |
| 537 | 538 |
| 538 bool RegisterOfflinePageBridge(JNIEnv* env) { | 539 bool RegisterOfflinePageBridge(JNIEnv* env) { |
| 539 return RegisterNativesImpl(env); | 540 return RegisterNativesImpl(env); |
| 540 } | 541 } |
| 541 | 542 |
| 542 } // namespace android | 543 } // namespace android |
| 543 } // namespace offline_pages | 544 } // namespace offline_pages |
| OLD | NEW |