| Index: chrome/android/java/src/org/chromium/chrome/browser/payments/ServiceWorkerPaymentApp.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/payments/ServiceWorkerPaymentApp.java b/chrome/android/java/src/org/chromium/chrome/browser/payments/ServiceWorkerPaymentApp.java
|
| index 93b007b9ceb0eb1ab43031b95dd456ae643af101..76ddc6e203eb54e50c1acaf52d560ced30c18daf 100644
|
| --- a/chrome/android/java/src/org/chromium/chrome/browser/payments/ServiceWorkerPaymentApp.java
|
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/payments/ServiceWorkerPaymentApp.java
|
| @@ -9,7 +9,6 @@ import android.os.Handler;
|
| import org.chromium.content_public.browser.WebContents;
|
| import org.chromium.payments.mojom.PaymentMethodData;
|
|
|
| -import java.util.ArrayList;
|
| import java.util.Collections;
|
| import java.util.HashSet;
|
| import java.util.List;
|
| @@ -26,7 +25,7 @@ import java.util.Set;
|
| */
|
| public class ServiceWorkerPaymentApp implements PaymentApp {
|
| private final WebContents mWebContents;
|
| - private final ServiceWorkerPaymentAppBridge.Manifest mManifest;
|
| + private final List<PaymentInstrument> mInstruments;
|
| private final Set<String> mMethodNames;
|
|
|
| /**
|
| @@ -37,14 +36,13 @@ public class ServiceWorkerPaymentApp implements PaymentApp {
|
| * @param webContents The web contents where PaymentRequest was invoked.
|
| * @param manifest A manifest that describes this payment app.
|
| */
|
| - public ServiceWorkerPaymentApp(
|
| - WebContents webContents, ServiceWorkerPaymentAppBridge.Manifest manifest) {
|
| + public ServiceWorkerPaymentApp(WebContents webContents, List<PaymentInstrument> instruments) {
|
| mWebContents = webContents;
|
| - mManifest = manifest;
|
| + mInstruments = instruments;
|
|
|
| mMethodNames = new HashSet<>();
|
| - for (ServiceWorkerPaymentAppBridge.Option option : manifest.options) {
|
| - mMethodNames.addAll(option.enabledMethods);
|
| + for (PaymentInstrument instrument : instruments) {
|
| + mMethodNames.addAll(instrument.getInstrumentMethodNames());
|
| }
|
| }
|
|
|
| @@ -52,18 +50,10 @@ public class ServiceWorkerPaymentApp implements PaymentApp {
|
| public void getInstruments(Map<String, PaymentMethodData> unusedMethodDataMap,
|
| String unusedOrigin, String unusedIFrameOrigin, byte[][] unusedCertificateChain,
|
| final InstrumentsCallback callback) {
|
| - final List<PaymentInstrument> instruments =
|
| - new ArrayList<PaymentInstrument>();
|
| -
|
| - for (ServiceWorkerPaymentAppBridge.Option option : mManifest.options) {
|
| - instruments.add(new ServiceWorkerPaymentInstrument(
|
| - mWebContents, mManifest.registrationId, option));
|
| - }
|
| -
|
| new Handler().post(new Runnable() {
|
| @Override
|
| public void run() {
|
| - callback.onInstrumentsReady(ServiceWorkerPaymentApp.this, instruments);
|
| + callback.onInstrumentsReady(ServiceWorkerPaymentApp.this, mInstruments);
|
| }
|
| });
|
| }
|
|
|