OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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/payments/service_worker_payment_app_bridge.h" | 5 #include "chrome/browser/android/payments/service_worker_payment_app_bridge.h" |
6 | 6 |
7 #include <utility> | 7 #include <utility> |
8 | 8 |
9 #include "base/android/jni_array.h" | 9 #include "base/android/jni_array.h" |
10 #include "base/android/jni_string.h" | 10 #include "base/android/jni_string.h" |
(...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
102 const JavaParamRef<jstring>& jorigin, | 102 const JavaParamRef<jstring>& jorigin, |
103 const JavaParamRef<jobjectArray>& jmethod_data, | 103 const JavaParamRef<jobjectArray>& jmethod_data, |
104 const JavaParamRef<jobject>& jtotal, | 104 const JavaParamRef<jobject>& jtotal, |
105 const JavaParamRef<jobjectArray>& jmodifiers, | 105 const JavaParamRef<jobjectArray>& jmodifiers, |
106 const JavaParamRef<jobject>& jcallback) { | 106 const JavaParamRef<jobject>& jcallback) { |
107 content::WebContents* web_contents = | 107 content::WebContents* web_contents = |
108 content::WebContents::FromJavaWebContents(jweb_contents); | 108 content::WebContents::FromJavaWebContents(jweb_contents); |
109 | 109 |
110 PaymentAppRequestPtr app_request = PaymentAppRequest::New(); | 110 PaymentAppRequestPtr app_request = PaymentAppRequest::New(); |
111 | 111 |
112 app_request->optionId = ConvertJavaStringToUTF8(env, joption_id); | 112 app_request->option_id = ConvertJavaStringToUTF8(env, joption_id); |
113 app_request->origin = GURL(ConvertJavaStringToUTF8(env, jorigin)); | 113 app_request->origin = GURL(ConvertJavaStringToUTF8(env, jorigin)); |
114 | 114 |
115 for (jsize i = 0; i < env->GetArrayLength(jmethod_data); i++) { | 115 for (jsize i = 0; i < env->GetArrayLength(jmethod_data); i++) { |
116 ScopedJavaLocalRef<jobject> element( | 116 ScopedJavaLocalRef<jobject> element( |
117 env, env->GetObjectArrayElement(jmethod_data, i)); | 117 env, env->GetObjectArrayElement(jmethod_data, i)); |
118 PaymentMethodDataPtr methodData = PaymentMethodData::New(); | 118 PaymentMethodDataPtr methodData = PaymentMethodData::New(); |
119 base::android::AppendJavaStringArrayToStringVector( | 119 base::android::AppendJavaStringArrayToStringVector( |
120 env, | 120 env, |
121 Java_ServiceWorkerPaymentAppBridge_getSupportedMethodsFromMethodData( | 121 Java_ServiceWorkerPaymentAppBridge_getSupportedMethodsFromMethodData( |
122 env, element) | 122 env, element) |
123 .obj(), | 123 .obj(), |
124 &methodData->supported_methods); | 124 &methodData->supported_methods); |
125 methodData->stringified_data = ConvertJavaStringToUTF8( | 125 methodData->stringified_data = ConvertJavaStringToUTF8( |
126 env, | 126 env, |
127 Java_ServiceWorkerPaymentAppBridge_getStringifiedDataFromMethodData( | 127 Java_ServiceWorkerPaymentAppBridge_getStringifiedDataFromMethodData( |
128 env, element)); | 128 env, element)); |
129 app_request->methodData.push_back(std::move(methodData)); | 129 app_request->method_data.push_back(std::move(methodData)); |
130 } | 130 } |
131 | 131 |
132 app_request->total = PaymentItem::New(); | 132 app_request->total = PaymentItem::New(); |
133 app_request->total->label = ConvertJavaStringToUTF8( | 133 app_request->total->label = ConvertJavaStringToUTF8( |
134 env, | 134 env, |
135 Java_ServiceWorkerPaymentAppBridge_getLabelFromPaymentItem(env, jtotal)); | 135 Java_ServiceWorkerPaymentAppBridge_getLabelFromPaymentItem(env, jtotal)); |
136 app_request->total->amount = PaymentCurrencyAmount::New(); | 136 app_request->total->amount = PaymentCurrencyAmount::New(); |
137 app_request->total->amount->currency = ConvertJavaStringToUTF8( | 137 app_request->total->amount->currency = ConvertJavaStringToUTF8( |
138 env, Java_ServiceWorkerPaymentAppBridge_getCurrencyFromPaymentItem( | 138 env, Java_ServiceWorkerPaymentAppBridge_getCurrencyFromPaymentItem( |
139 env, jtotal)); | 139 env, jtotal)); |
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
182 web_contents->GetBrowserContext(), registration_id, | 182 web_contents->GetBrowserContext(), registration_id, |
183 std::move(app_request), | 183 std::move(app_request), |
184 base::Bind(&OnPaymentAppInvoked, | 184 base::Bind(&OnPaymentAppInvoked, |
185 ScopedJavaGlobalRef<jobject>(env, jweb_contents), | 185 ScopedJavaGlobalRef<jobject>(env, jweb_contents), |
186 ScopedJavaGlobalRef<jobject>(env, jcallback))); | 186 ScopedJavaGlobalRef<jobject>(env, jcallback))); |
187 } | 187 } |
188 | 188 |
189 bool RegisterServiceWorkerPaymentAppBridge(JNIEnv* env) { | 189 bool RegisterServiceWorkerPaymentAppBridge(JNIEnv* env) { |
190 return RegisterNativesImpl(env); | 190 return RegisterNativesImpl(env); |
191 } | 191 } |
OLD | NEW |