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

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/autofill/PersonalDataManager.java

Issue 2163693002: [Merge M-53] Credit card editor for PaymentRequest UI. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@2785
Patch Set: Created 4 years, 5 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 side-by-side diff with in-line comments
Download patch
Index: chrome/android/java/src/org/chromium/chrome/browser/autofill/PersonalDataManager.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/autofill/PersonalDataManager.java b/chrome/android/java/src/org/chromium/chrome/browser/autofill/PersonalDataManager.java
index 85dec0b2e464130597040576d761f3520b07866e..8fae08fd55c4afe2661b27d80848810ec2778320 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/autofill/PersonalDataManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/autofill/PersonalDataManager.java
@@ -115,26 +115,15 @@ public class PersonalDataManager {
/**
* Builds an empty local profile with "settings" origin and country code from the default
- * locale. All other fields are empty strings, because JNI does not handle nulls.
+ * locale. All other fields are empty strings, because JNI does not handle null strings.
*/
public AutofillProfile() {
- mOrigin = AutofillPreferences.SETTINGS_ORIGIN;
- mIsLocal = true;
- mCountryCode = Locale.getDefault().getCountry();
-
- mGUID = "";
- mFullName = "";
- mCompanyName = "";
- mStreetAddress = "";
- mRegion = "";
- mLocality = "";
- mDependentLocality = "";
- mPostalCode = "";
- mSortingCode = "";
- mPhoneNumber = "";
- mEmailAddress = "";
- mLabel = "";
- mLanguageCode = "";
+ this("" /* guid */, AutofillPreferences.SETTINGS_ORIGIN /* origin */,
+ true /* isLocal */, "" /* fullName */, "" /* companyName */,
+ "" /* streetAddress */, "" /* region */, "" /* locality */,
+ "" /* dependentLocality */, "" /* postalCode */, "" /* sortingCode */,
+ Locale.getDefault().getCountry() /* country */, "" /* phoneNumber */,
+ "" /* emailAddress */, "" /* languageCode */);
}
/** TODO(estade): remove this constructor. */
@@ -143,21 +132,9 @@ public class PersonalDataManager {
String streetAddress, String region, String locality, String dependentLocality,
String postalCode, String sortingCode, String countryCode, String phoneNumber,
String emailAddress, String languageCode) {
- mGUID = guid;
- mOrigin = origin;
- mIsLocal = true;
- mFullName = fullName;
- mCompanyName = companyName;
- mStreetAddress = streetAddress;
- mRegion = region;
- mLocality = locality;
- mDependentLocality = dependentLocality;
- mPostalCode = postalCode;
- mSortingCode = sortingCode;
- mCountryCode = countryCode;
- mPhoneNumber = phoneNumber;
- mEmailAddress = emailAddress;
- mLanguageCode = languageCode;
+ this(guid, origin, true /* isLocal */, fullName, companyName, streetAddress, region,
+ locality, dependentLocality, postalCode, sortingCode, countryCode, phoneNumber,
+ emailAddress, languageCode);
}
@CalledByNative("AutofillProfile")
@@ -355,20 +332,20 @@ public class PersonalDataManager {
mBillingAddressId = billingAddressId;
}
+ public CreditCard() {
+ this("" /* guid */, AutofillPreferences.SETTINGS_ORIGIN /*origin */, true /* isLocal */,
+ false /* isCached */, "" /* name */, "" /* number */, "" /* obfuscatedNumber */,
+ "" /* month */, "" /* year */, "" /* basicCardPaymentType */,
+ 0 /* issuerIconDrawableId */, "" /* billingAddressId */);
+ }
+
/** TODO(estade): remove this constructor. */
@VisibleForTesting
public CreditCard(String guid, String origin, String name, String number,
String obfuscatedNumber, String month, String year) {
- mGUID = guid;
- mOrigin = origin;
- mIsLocal = true;
- mIsCached = false;
- mName = name;
- mNumber = number;
- mObfuscatedNumber = obfuscatedNumber;
- mMonth = month;
- mYear = year;
- mBillingAddressId = "";
+ this(guid, origin, true /* isLocal */, false /* isCached */, name, number,
+ obfuscatedNumber, month, year, "" /* basicCardPaymentType */,
+ 0 /* issuerIconDrawableId */, "" /* billingAddressId */);
}
@CalledByNative("CreditCard")
@@ -463,6 +440,14 @@ public class PersonalDataManager {
mYear = year;
}
+ public void setBasicCardPaymentType(String type) {
+ mBasicCardPaymentType = type;
+ }
+
+ public void setIssuerIconDrawableId(int id) {
+ mIssuerIconDrawableId = id;
+ }
+
public void setBillingAddressId(String id) {
mBillingAddressId = id;
}
@@ -599,6 +584,11 @@ public class PersonalDataManager {
return nativeGetCreditCardByGUID(mPersonalDataManagerAndroid, guid);
}
+ public CreditCard getCreditCardForNumber(String cardNumber) {
+ ThreadUtils.assertOnUiThread();
+ return nativeGetCreditCardForNumber(mPersonalDataManagerAndroid, cardNumber);
+ }
+
public String setCreditCard(CreditCard card) {
ThreadUtils.assertOnUiThread();
assert card.getIsLocal();
@@ -610,6 +600,11 @@ public class PersonalDataManager {
nativeUpdateServerCardBillingAddress(mPersonalDataManagerAndroid, guid, billingAddressId);
}
+ public String getBasicCardPaymentTypeIfValid(String cardNumber) {
+ ThreadUtils.assertOnUiThread();
+ return nativeGetBasicCardPaymentTypeIfValid(mPersonalDataManagerAndroid, cardNumber);
+ }
+
@VisibleForTesting
public void addServerCreditCardForTest(CreditCard card) {
ThreadUtils.assertOnUiThread();
@@ -626,7 +621,7 @@ public class PersonalDataManager {
nativeClearUnmaskedCache(mPersonalDataManagerAndroid, guid);
}
- public String getGetAddressLabelForPaymentRequest(AutofillProfile profile) {
+ public String getAddressLabelForPaymentRequest(AutofillProfile profile) {
return nativeGetAddressLabelForPaymentRequest(mPersonalDataManagerAndroid, profile);
}
@@ -636,6 +631,12 @@ public class PersonalDataManager {
mPersonalDataManagerAndroid, webContents, guid, delegate);
}
+ public void getFullTemporaryCard(WebContents webContents, String cardNumber, String nameOnCard,
+ String expirationMonth, String expirationYear, FullCardRequestDelegate delegate) {
+ nativeGetFullTemporaryCardForPaymentRequest(mPersonalDataManagerAndroid, webContents,
+ cardNumber, nameOnCard, expirationMonth, expirationYear, delegate);
+ }
+
@VisibleForTesting
protected void setProfileUseStatsForTesting(String guid, int count, long date) {
ThreadUtils.assertOnUiThread();
@@ -703,10 +704,14 @@ public class PersonalDataManager {
long nativePersonalDataManagerAndroid);
private native CreditCard nativeGetCreditCardByGUID(long nativePersonalDataManagerAndroid,
String guid);
+ private native CreditCard nativeGetCreditCardForNumber(long nativePersonalDataManagerAndroid,
+ String cardNumber);
private native String nativeSetCreditCard(long nativePersonalDataManagerAndroid,
CreditCard card);
private native void nativeUpdateServerCardBillingAddress(long nativePersonalDataManagerAndroid,
String guid, String billingAddressId);
+ private native String nativeGetBasicCardPaymentTypeIfValid(
+ long nativePersonalDataManagerAndroid, String cardNumber);
private native void nativeAddServerCreditCardForTest(long nativePersonalDataManagerAndroid,
CreditCard card);
private native void nativeRemoveByGUID(long nativePersonalDataManagerAndroid, String guid);
@@ -718,6 +723,10 @@ public class PersonalDataManager {
long nativePersonalDataManagerAndroid, String guid);
private native void nativeGetFullCardForPaymentRequest(long nativePersonalDataManagerAndroid,
WebContents webContents, String guid, FullCardRequestDelegate delegate);
+ private native void nativeGetFullTemporaryCardForPaymentRequest(
+ long nativePersonalDataManagerAndroid, WebContents webContents, String cardNumber,
+ String nameOnCard, String expirationMonth, String expirationYear,
+ FullCardRequestDelegate delegate);
private static native boolean nativeIsAutofillEnabled();
private static native void nativeSetAutofillEnabled(boolean enable);
private static native boolean nativeIsAutofillManaged();

Powered by Google App Engine
This is Rietveld 408576698