Chromium Code Reviews| Index: chrome/android/java/src/org/chromium/chrome/browser/payments/ServiceWorkerPaymentAppBridge.java |
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/payments/ServiceWorkerPaymentAppBridge.java b/chrome/android/java/src/org/chromium/chrome/browser/payments/ServiceWorkerPaymentAppBridge.java |
| index 72dbc39e940e23d1f44b4f3042afa6b1981a7bff..e9abb29e3b582ab188f1ac9a4301460fcaa0c586 100644 |
| --- a/chrome/android/java/src/org/chromium/chrome/browser/payments/ServiceWorkerPaymentAppBridge.java |
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/payments/ServiceWorkerPaymentAppBridge.java |
| @@ -10,6 +10,8 @@ import android.graphics.drawable.Drawable; |
| import org.chromium.base.annotations.CalledByNative; |
| import org.chromium.base.annotations.SuppressFBWarnings; |
| import org.chromium.content_public.browser.WebContents; |
| +import org.chromium.payments.mojom.PaymentDetailsModifier; |
| +import org.chromium.payments.mojom.PaymentItem; |
| import org.chromium.payments.mojom.PaymentMethodData; |
| import java.util.ArrayList; |
| @@ -67,13 +69,17 @@ public class ServiceWorkerPaymentAppBridge implements PaymentAppFactory.PaymentA |
| * @param webContents The web contents that invoked PaymentRequest. |
| * @param registrationId The service worker registration ID of the Payment App. |
| * @param optionId The ID of the PaymentOption that was selected by the user. |
| - * @param methodDataSet The PaymentMethodData objects that are relevant for this payment |
| + * @param methodData The PaymentMethodData objects that are relevant for this payment |
| * app. |
|
please use gerrit instead
2017/01/19 16:45:04
Please align indentation of "app" with "The" above
tommyt
2017/01/20 09:33:29
Done.
|
| + * @param total The PaymentItem that represents the total cost of the payment. |
| + * @param modifiers Payment method specific modifiers to the payment items and the total. |
| */ |
| public static void invokePaymentApp(WebContents webContents, long registrationId, |
| - String optionId, Set<PaymentMethodData> methodDataSet) { |
| + String optionId, Set<PaymentMethodData> methodData, PaymentItem total, |
| + List<PaymentItem> displayItems, Set<PaymentDetailsModifier> modifiers) { |
| nativeInvokePaymentApp(webContents, registrationId, optionId, |
| - methodDataSet.toArray(new PaymentMethodData[methodDataSet.size()])); |
| + methodData.toArray(new PaymentMethodData[0]), total, |
| + modifiers.toArray(new PaymentDetailsModifier[0])); |
| } |
| @CalledByNative |
| @@ -104,6 +110,41 @@ public class ServiceWorkerPaymentAppBridge implements PaymentAppFactory.PaymentA |
| } |
| @CalledByNative |
| + private static String[] getSupportedMethodsFromMethodData(PaymentMethodData data) { |
| + return data.supportedMethods; |
| + } |
| + |
| + @CalledByNative |
| + private static String getStringifiedDataFromMethodData(PaymentMethodData data) { |
| + return data.stringifiedData; |
| + } |
| + |
| + @CalledByNative |
| + private static PaymentMethodData getMethodDataFromModifier(PaymentDetailsModifier modifier) { |
| + return modifier.methodData; |
| + } |
| + |
| + @CalledByNative |
| + private static PaymentItem getTotalFromModifier(PaymentDetailsModifier modifier) { |
| + return modifier.total; |
| + } |
| + |
| + @CalledByNative |
| + private static String getLabelFromPaymentItem(PaymentItem item) { |
| + return item.label; |
| + } |
| + |
| + @CalledByNative |
| + private static String getCurrencyFromPaymentItem(PaymentItem item) { |
| + return item.amount.currency; |
| + } |
| + |
| + @CalledByNative |
| + private static String getValueFromPaymentItem(PaymentItem item) { |
| + return item.amount.value; |
| + } |
| + |
| + @CalledByNative |
| private static void onGotManifest(Manifest manifest, WebContents webContents, Object callback) { |
| assert callback instanceof PaymentAppFactory.PaymentAppCreatedCallback; |
| ((PaymentAppFactory.PaymentAppCreatedCallback) callback) |
| @@ -124,5 +165,6 @@ public class ServiceWorkerPaymentAppBridge implements PaymentAppFactory.PaymentA |
| private static native void nativeGetAllAppManifests(WebContents webContents, Object callback); |
| private static native void nativeInvokePaymentApp(WebContents webContents, long registrationId, |
| - String optionId, PaymentMethodData[] methodData); |
| + String optionId, PaymentMethodData[] methodData, PaymentItem total, |
| + PaymentDetailsModifier[] modifiers); |
| } |