Commit b7394408 authored by gogerald's avatar gogerald Committed by Commit Bot

[Payments] Remove "total" from IS_READY_TO_PAY

Bug: 740257
Change-Id: Ib4b52311d30a663695f18ca6140b74531cb0d583
Reviewed-on: https://chromium-review.googlesource.com/581734Reviewed-by: default avatarRouslan Solomakhin <rouslan@chromium.org>
Commit-Queue: Ganggui Tang <gogerald@chromium.org>
Cr-Commit-Position: refs/heads/master@{#488700}
parent e82b3a54
...@@ -140,7 +140,7 @@ public class AndroidPaymentApp ...@@ -140,7 +140,7 @@ public class AndroidPaymentApp
@Override @Override
public void getInstruments(Map<String, PaymentMethodData> methodDataMap, String origin, public void getInstruments(Map<String, PaymentMethodData> methodDataMap, String origin,
String iframeOrigin, @Nullable byte[][] certificateChain, PaymentItem total, String iframeOrigin, @Nullable byte[][] certificateChain,
InstrumentsCallback callback) { InstrumentsCallback callback) {
assert mMethodNames.containsAll(methodDataMap.keySet()); assert mMethodNames.containsAll(methodDataMap.keySet());
assert mInstrumentsCallback assert mInstrumentsCallback
...@@ -171,7 +171,7 @@ public class AndroidPaymentApp ...@@ -171,7 +171,7 @@ public class AndroidPaymentApp
mIsReadyToPayIntent.putExtras(buildExtras(null /* id */, null /* merchantName */, mIsReadyToPayIntent.putExtras(buildExtras(null /* id */, null /* merchantName */,
removeUrlScheme(origin), removeUrlScheme(iframeOrigin), certificateChain, removeUrlScheme(origin), removeUrlScheme(iframeOrigin), certificateChain,
methodDataMap, total, null /* displayItems */, null /* modifiers */)); methodDataMap, null /* total */, null /* displayItems */, null /* modifiers */));
try { try {
if (!ContextUtils.getApplicationContext().bindService( if (!ContextUtils.getApplicationContext().bindService(
mIsReadyToPayIntent, mServiceConnection, Context.BIND_AUTO_CREATE)) { mIsReadyToPayIntent, mServiceConnection, Context.BIND_AUTO_CREATE)) {
...@@ -353,7 +353,7 @@ public class AndroidPaymentApp ...@@ -353,7 +353,7 @@ public class AndroidPaymentApp
private static Bundle buildExtras(@Nullable String id, @Nullable String merchantName, private static Bundle buildExtras(@Nullable String id, @Nullable String merchantName,
String origin, String iframeOrigin, @Nullable byte[][] certificateChain, String origin, String iframeOrigin, @Nullable byte[][] certificateChain,
Map<String, PaymentMethodData> methodDataMap, PaymentItem total, Map<String, PaymentMethodData> methodDataMap, @Nullable PaymentItem total,
@Nullable List<PaymentItem> displayItems, @Nullable List<PaymentItem> displayItems,
@Nullable Map<String, PaymentDetailsModifier> modifiers) { @Nullable Map<String, PaymentDetailsModifier> modifiers) {
Bundle extras = new Bundle(); Bundle extras = new Bundle();
...@@ -387,9 +387,11 @@ public class AndroidPaymentApp ...@@ -387,9 +387,11 @@ public class AndroidPaymentApp
extras.putString(EXTRA_MODIFIERS, serializeModifiers(modifiers.values())); extras.putString(EXTRA_MODIFIERS, serializeModifiers(modifiers.values()));
} }
String serializedTotalAmount = serializeTotalAmount(total.amount); if (total != null) {
extras.putString(EXTRA_TOTAL, String serializedTotalAmount = serializeTotalAmount(total.amount);
serializedTotalAmount == null ? EMPTY_JSON_DATA : serializedTotalAmount); extras.putString(EXTRA_TOTAL,
serializedTotalAmount == null ? EMPTY_JSON_DATA : serializedTotalAmount);
}
return addDeprecatedExtras(id, origin, iframeOrigin, serializedCertificateChain, return addDeprecatedExtras(id, origin, iframeOrigin, serializedCertificateChain,
methodDataMap, methodDataBundle, total, displayItems, extras); methodDataMap, methodDataBundle, total, displayItems, extras);
...@@ -398,7 +400,7 @@ public class AndroidPaymentApp ...@@ -398,7 +400,7 @@ public class AndroidPaymentApp
private static Bundle addDeprecatedExtras(@Nullable String id, String origin, private static Bundle addDeprecatedExtras(@Nullable String id, String origin,
String iframeOrigin, @Nullable Parcelable[] serializedCertificateChain, String iframeOrigin, @Nullable Parcelable[] serializedCertificateChain,
Map<String, PaymentMethodData> methodDataMap, Bundle methodDataBundle, Map<String, PaymentMethodData> methodDataMap, Bundle methodDataBundle,
PaymentItem total, @Nullable List<PaymentItem> displayItems, Bundle extras) { @Nullable PaymentItem total, @Nullable List<PaymentItem> displayItems, Bundle extras) {
if (id != null) extras.putString(EXTRA_DEPRECATED_ID, id); if (id != null) extras.putString(EXTRA_DEPRECATED_ID, id);
extras.putString(EXTRA_DEPRECATED_ORIGIN, origin); extras.putString(EXTRA_DEPRECATED_ORIGIN, origin);
...@@ -445,17 +447,19 @@ public class AndroidPaymentApp ...@@ -445,17 +447,19 @@ public class AndroidPaymentApp
} }
private static String serializeDetails( private static String serializeDetails(
PaymentItem total, @Nullable List<PaymentItem> displayItems) { @Nullable PaymentItem total, @Nullable List<PaymentItem> displayItems) {
StringWriter stringWriter = new StringWriter(); StringWriter stringWriter = new StringWriter();
JsonWriter json = new JsonWriter(stringWriter); JsonWriter json = new JsonWriter(stringWriter);
try { try {
// details {{{ // details {{{
json.beginObject(); json.beginObject();
// total {{{ if (total != null) {
json.name("total"); // total {{{
serializePaymentItem(total, json); json.name("total");
// }}} total serializePaymentItem(total, json);
// }}} total
}
// displayitems {{{ // displayitems {{{
if (displayItems != null) { if (displayItems != null) {
......
...@@ -15,7 +15,6 @@ import org.chromium.chrome.browser.autofill.PersonalDataManager.CreditCard; ...@@ -15,7 +15,6 @@ import org.chromium.chrome.browser.autofill.PersonalDataManager.CreditCard;
import org.chromium.content_public.browser.WebContents; import org.chromium.content_public.browser.WebContents;
import org.chromium.payments.mojom.BasicCardNetwork; import org.chromium.payments.mojom.BasicCardNetwork;
import org.chromium.payments.mojom.BasicCardType; import org.chromium.payments.mojom.BasicCardType;
import org.chromium.payments.mojom.PaymentItem;
import org.chromium.payments.mojom.PaymentMethodData; import org.chromium.payments.mojom.PaymentMethodData;
import java.util.ArrayList; import java.util.ArrayList;
...@@ -49,7 +48,7 @@ public class AutofillPaymentApp implements PaymentApp { ...@@ -49,7 +48,7 @@ public class AutofillPaymentApp implements PaymentApp {
@Override @Override
public void getInstruments(Map<String, PaymentMethodData> methodDataMap, String unusedOrigin, public void getInstruments(Map<String, PaymentMethodData> methodDataMap, String unusedOrigin,
String unusedIFRameOrigin, byte[][] unusedCertificateChain, PaymentItem unusedTotal, String unusedIFRameOrigin, byte[][] unusedCertificateChain,
final InstrumentsCallback callback) { final InstrumentsCallback callback) {
PersonalDataManager pdm = PersonalDataManager.getInstance(); PersonalDataManager pdm = PersonalDataManager.getInstance();
List<CreditCard> cards = pdm.getCreditCardsToSuggest(); List<CreditCard> cards = pdm.getCreditCardsToSuggest();
......
...@@ -4,7 +4,6 @@ ...@@ -4,7 +4,6 @@
package org.chromium.chrome.browser.payments; package org.chromium.chrome.browser.payments;
import org.chromium.payments.mojom.PaymentItem;
import org.chromium.payments.mojom.PaymentMethodData; import org.chromium.payments.mojom.PaymentMethodData;
import java.util.List; import java.util.List;
...@@ -44,13 +43,10 @@ public interface PaymentApp { ...@@ -44,13 +43,10 @@ public interface PaymentApp {
* if PaymentRequest was not invoked from inside an iframe. * if PaymentRequest was not invoked from inside an iframe.
* @param certificateChain The site certificate chain of the merchant. Null for localhost and * @param certificateChain The site certificate chain of the merchant. Null for localhost and
* file on disk, which are secure origins without SSL. * file on disk, which are secure origins without SSL.
* @param total The total amount that can be used to filter out instruments with
* insufficient funds.
* @param callback The object that will receive the list of instruments. * @param callback The object that will receive the list of instruments.
*/ */
void getInstruments(Map<String, PaymentMethodData> methodDataMap, String origin, void getInstruments(Map<String, PaymentMethodData> methodDataMap, String origin,
String iframeOrigin, @Nullable byte[][] certificateChain, PaymentItem total, String iframeOrigin, @Nullable byte[][] certificateChain, InstrumentsCallback callback);
InstrumentsCallback callback);
/** /**
* Returns a list of all payment method names that this app supports. For example, ["visa", * Returns a list of all payment method names that this app supports. For example, ["visa",
......
...@@ -738,8 +738,8 @@ public class PaymentRequestImpl implements PaymentRequest, PaymentRequestUI.Clie ...@@ -738,8 +738,8 @@ public class PaymentRequestImpl implements PaymentRequest, PaymentRequestUI.Clie
if (disconnectIfNoPaymentMethodsSupported()) return; if (disconnectIfNoPaymentMethodsSupported()) return;
for (Map.Entry<PaymentApp, Map<String, PaymentMethodData>> q : queryApps.entrySet()) { for (Map.Entry<PaymentApp, Map<String, PaymentMethodData>> q : queryApps.entrySet()) {
q.getKey().getInstruments(q.getValue(), mTopLevelOrigin, mPaymentRequestOrigin, q.getKey().getInstruments(
mCertificateChain, mRawTotal, this); q.getValue(), mTopLevelOrigin, mPaymentRequestOrigin, mCertificateChain, this);
} }
} }
......
...@@ -69,7 +69,7 @@ public class ServiceWorkerPaymentApp extends PaymentInstrument implements Paymen ...@@ -69,7 +69,7 @@ public class ServiceWorkerPaymentApp extends PaymentInstrument implements Paymen
@Override @Override
public void getInstruments(Map<String, PaymentMethodData> unusedMethodDataMap, public void getInstruments(Map<String, PaymentMethodData> unusedMethodDataMap,
String unusedOrigin, String unusedIFrameOrigin, byte[][] unusedCertificateChain, String unusedOrigin, String unusedIFrameOrigin, byte[][] unusedCertificateChain,
PaymentItem unusedItem, final InstrumentsCallback callback) { final InstrumentsCallback callback) {
new Handler().post(new Runnable() { new Handler().post(new Runnable() {
@Override @Override
public void run() { public void run() {
......
...@@ -954,7 +954,7 @@ final class PaymentRequestTestCommon implements PaymentRequestObserverForTest, ...@@ -954,7 +954,7 @@ final class PaymentRequestTestCommon implements PaymentRequestObserverForTest,
@Override @Override
public void getInstruments(Map<String, PaymentMethodData> methodData, String origin, public void getInstruments(Map<String, PaymentMethodData> methodData, String origin,
String iframeOrigin, byte[][] certificateChain, PaymentItem total, String iframeOrigin, byte[][] certificateChain,
InstrumentsCallback instrumentsCallback) { InstrumentsCallback instrumentsCallback) {
mCallback = instrumentsCallback; mCallback = instrumentsCallback;
respond(); respond();
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment