Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1381)

Side by Side Diff: chrome/android/java/src/org/chromium/chrome/browser/payments/PaymentRequestImpl.java

Issue 2779013002: Revert of PaymentRequest: Introduce PaymentDetailsInit and PaymentDetailsUpdate. (Closed)
Patch Set: Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | components/payments/content/payment_details_validation.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 package org.chromium.chrome.browser.payments; 5 package org.chromium.chrome.browser.payments;
6 6
7 import android.app.Activity; 7 import android.app.Activity;
8 import android.content.Context; 8 import android.content.Context;
9 import android.content.Intent; 9 import android.content.Intent;
10 import android.graphics.Bitmap; 10 import android.graphics.Bitmap;
(...skipping 402 matching lines...) Expand 10 before | Expand all | Expand 10 after
413 mMethodData = getValidatedMethodData(methodData, mCardEditor); 413 mMethodData = getValidatedMethodData(methodData, mCardEditor);
414 if (mMethodData == null) { 414 if (mMethodData == null) {
415 disconnectFromClientWithDebugMessage("Invalid payment methods or dat a"); 415 disconnectFromClientWithDebugMessage("Invalid payment methods or dat a");
416 recordAbortReasonHistogram( 416 recordAbortReasonHistogram(
417 PaymentRequestMetrics.ABORT_REASON_INVALID_DATA_FROM_RENDERE R); 417 PaymentRequestMetrics.ABORT_REASON_INVALID_DATA_FROM_RENDERE R);
418 return; 418 return;
419 } 419 }
420 420
421 if (!parseAndValidateDetailsOrDisconnectFromClient(details)) return; 421 if (!parseAndValidateDetailsOrDisconnectFromClient(details)) return;
422 422
423 if (mRawTotal == null) {
424 disconnectFromClientWithDebugMessage("Missing total");
425 recordAbortReasonHistogram(
426 PaymentRequestMetrics.ABORT_REASON_INVALID_DATA_FROM_RENDERE R);
427 return;
428 }
429
430 PaymentAppFactory.getInstance().create(mWebContents, 423 PaymentAppFactory.getInstance().create(mWebContents,
431 Collections.unmodifiableSet(mMethodData.keySet()), this /* callb ack */); 424 Collections.unmodifiableSet(mMethodData.keySet()), this /* callb ack */);
432 425
433 mRequestShipping = options != null && options.requestShipping; 426 mRequestShipping = options != null && options.requestShipping;
434 mRequestPayerName = options != null && options.requestPayerName; 427 mRequestPayerName = options != null && options.requestPayerName;
435 mRequestPayerPhone = options != null && options.requestPayerPhone; 428 mRequestPayerPhone = options != null && options.requestPayerPhone;
436 mRequestPayerEmail = options != null && options.requestPayerEmail; 429 mRequestPayerEmail = options != null && options.requestPayerEmail;
437 mShippingType = options == null ? PaymentShippingType.SHIPPING : options .shippingType; 430 mShippingType = options == null ? PaymentShippingType.SHIPPING : options .shippingType;
438 431
439 // If there is a single payment method and the merchant has not requeste d any other 432 // If there is a single payment method and the merchant has not requeste d any other
(...skipping 295 matching lines...) Expand 10 before | Expand all | Expand 10 after
735 recordAbortReasonHistogram( 728 recordAbortReasonHistogram(
736 PaymentRequestMetrics.ABORT_REASON_INVALID_DATA_FROM_RENDERE R); 729 PaymentRequestMetrics.ABORT_REASON_INVALID_DATA_FROM_RENDERE R);
737 return false; 730 return false;
738 } 731 }
739 732
740 if (mCurrencyFormatter == null) { 733 if (mCurrencyFormatter == null) {
741 mCurrencyFormatter = new CurrencyFormatter(details.total.amount.curr ency, 734 mCurrencyFormatter = new CurrencyFormatter(details.total.amount.curr ency,
742 details.total.amount.currencySystem, Locale.getDefault()); 735 details.total.amount.currencySystem, Locale.getDefault());
743 } 736 }
744 737
745 if (details.total != null) { 738 // Total is never pending.
746 mRawTotal = details.total; 739 LineItem uiTotal = new LineItem(details.total.label,
747 } 740 mCurrencyFormatter.getFormattedCurrencyCode(),
741 mCurrencyFormatter.format(details.total.amount.value), /* isPend ing */ false);
748 742
749 if (mRawTotal != null) { 743 List<LineItem> uiLineItems = getLineItems(details.displayItems, mCurrenc yFormatter);
750 // Total is never pending.
751 LineItem uiTotal = new LineItem(mRawTotal.label,
752 mCurrencyFormatter.getFormattedCurrencyCode(),
753 mCurrencyFormatter.format(mRawTotal.amount.value), /* isPend ing */ false);
754 744
755 List<LineItem> uiLineItems = getLineItems(details.displayItems, mCur rencyFormatter); 745 mUiShoppingCart = new ShoppingCart(uiTotal, uiLineItems);
756 746 mRawTotal = details.total;
757 mUiShoppingCart = new ShoppingCart(uiTotal, uiLineItems);
758 }
759 mRawLineItems = Collections.unmodifiableList(Arrays.asList(details.displ ayItems)); 747 mRawLineItems = Collections.unmodifiableList(Arrays.asList(details.displ ayItems));
760 748
761 mUiShippingOptions = getShippingOptions(details.shippingOptions, mCurren cyFormatter); 749 mUiShippingOptions = getShippingOptions(details.shippingOptions, mCurren cyFormatter);
762 750
763 for (int i = 0; i < details.modifiers.length; i++) { 751 for (int i = 0; i < details.modifiers.length; i++) {
764 PaymentDetailsModifier modifier = details.modifiers[i]; 752 PaymentDetailsModifier modifier = details.modifiers[i];
765 String[] methods = modifier.methodData.supportedMethods; 753 String[] methods = modifier.methodData.supportedMethods;
766 for (int j = 0; j < methods.length; j++) { 754 for (int j = 0; j < methods.length; j++) {
767 if (mModifiers == null) mModifiers = new ArrayMap<>(); 755 if (mModifiers == null) mModifiers = new ArrayMap<>();
768 mModifiers.put(methods[j], modifier); 756 mModifiers.put(methods[j], modifier);
(...skipping 921 matching lines...) Expand 10 before | Expand all | Expand 10 after
1690 1678
1691 /** 1679 /**
1692 * The frecency score is calculated according to use count and last use date . The formula is 1680 * The frecency score is calculated according to use count and last use date . The formula is
1693 * the same as the one used in GetFrecencyScore in autofill_data_model.cc. 1681 * the same as the one used in GetFrecencyScore in autofill_data_model.cc.
1694 */ 1682 */
1695 private static final double getFrecencyScore(int count, long date) { 1683 private static final double getFrecencyScore(int count, long date) {
1696 long currentTime = System.currentTimeMillis(); 1684 long currentTime = System.currentTimeMillis();
1697 return -Math.log((currentTime - date) / (24 * 60 * 60 * 1000) + 2) / Mat h.log(count + 2); 1685 return -Math.log((currentTime - date) / (24 * 60 * 60 * 1000) + 2) / Mat h.log(count + 2);
1698 } 1686 }
1699 } 1687 }
OLDNEW
« no previous file with comments | « no previous file | components/payments/content/payment_details_validation.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698