OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 #include "chrome/browser/autofill/android/personal_data_manager_android.h" | 5 #include "chrome/browser/autofill/android/personal_data_manager_android.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 #include <algorithm> | 8 #include <algorithm> |
9 #include <memory> | 9 #include <memory> |
10 #include <utility> | 10 #include <utility> |
(...skipping 478 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
489 const JavaParamRef<jstring>& jcard_server_id, | 489 const JavaParamRef<jstring>& jcard_server_id, |
490 const JavaParamRef<jstring>& jbilling_address_id) { | 490 const JavaParamRef<jstring>& jbilling_address_id) { |
491 CreditCard card("", kSettingsOrigin); | 491 CreditCard card("", kSettingsOrigin); |
492 card.set_record_type(CreditCard::MASKED_SERVER_CARD); | 492 card.set_record_type(CreditCard::MASKED_SERVER_CARD); |
493 card.set_server_id(ConvertJavaStringToUTF8(env, jcard_server_id)); | 493 card.set_server_id(ConvertJavaStringToUTF8(env, jcard_server_id)); |
494 card.set_billing_address_id(ConvertJavaStringToUTF8(env, | 494 card.set_billing_address_id(ConvertJavaStringToUTF8(env, |
495 jbilling_address_id)); | 495 jbilling_address_id)); |
496 personal_data_manager_->UpdateServerCardBillingAddress(card); | 496 personal_data_manager_->UpdateServerCardBillingAddress(card); |
497 } | 497 } |
498 | 498 |
499 ScopedJavaLocalRef<jstring> | 499 ScopedJavaLocalRef<jstring> PersonalDataManagerAndroid::GetBasicCardPaymentType( |
500 PersonalDataManagerAndroid::GetBasicCardPaymentTypeIfValid( | |
501 JNIEnv* env, | 500 JNIEnv* env, |
502 const JavaParamRef<jobject>& unused_obj, | 501 const JavaParamRef<jobject>& unused_obj, |
503 const JavaParamRef<jstring>& jcard_number) { | 502 const JavaParamRef<jstring>& jcard_number, |
| 503 const jboolean jempty_if_invalid) { |
504 base::string16 card_number = ConvertJavaStringToUTF16(env, jcard_number); | 504 base::string16 card_number = ConvertJavaStringToUTF16(env, jcard_number); |
505 return ConvertUTF8ToJavaString( | 505 |
506 env, IsValidCreditCardNumber(card_number) | 506 if (static_cast<bool>(jempty_if_invalid) && |
507 ? data_util::GetPaymentRequestData( | 507 !IsValidCreditCardNumber(card_number)) { |
508 CreditCard::GetCreditCardType(card_number)) | 508 return ConvertUTF8ToJavaString(env, ""); |
509 .basic_card_payment_type | 509 } |
510 : ""); | 510 return ConvertUTF8ToJavaString(env, |
| 511 data_util::GetPaymentRequestData( |
| 512 CreditCard::GetCreditCardType(card_number)) |
| 513 .basic_card_payment_type); |
511 } | 514 } |
512 | 515 |
513 void PersonalDataManagerAndroid::AddServerCreditCardForTest( | 516 void PersonalDataManagerAndroid::AddServerCreditCardForTest( |
514 JNIEnv* env, | 517 JNIEnv* env, |
515 const base::android::JavaParamRef<jobject>& unused_obj, | 518 const base::android::JavaParamRef<jobject>& unused_obj, |
516 const base::android::JavaParamRef<jobject>& jcard) { | 519 const base::android::JavaParamRef<jobject>& jcard) { |
517 std::unique_ptr<CreditCard> card(new CreditCard); | 520 std::unique_ptr<CreditCard> card(new CreditCard); |
518 PopulateNativeCreditCardFromJava(jcard, env, card.get()); | 521 PopulateNativeCreditCardFromJava(jcard, env, card.get()); |
519 card->set_record_type(CreditCard::MASKED_SERVER_CARD); | 522 card->set_record_type(CreditCard::MASKED_SERVER_CARD); |
520 personal_data_manager_->AddServerCreditCardForTest(std::move(card)); | 523 personal_data_manager_->AddServerCreditCardForTest(std::move(card)); |
(...skipping 325 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
846 base::android::ConvertJavaStringToUTF16(env, jcountry_name))); | 849 base::android::ConvertJavaStringToUTF16(env, jcountry_name))); |
847 } | 850 } |
848 | 851 |
849 static jlong Init(JNIEnv* env, const JavaParamRef<jobject>& obj) { | 852 static jlong Init(JNIEnv* env, const JavaParamRef<jobject>& obj) { |
850 PersonalDataManagerAndroid* personal_data_manager_android = | 853 PersonalDataManagerAndroid* personal_data_manager_android = |
851 new PersonalDataManagerAndroid(env, obj); | 854 new PersonalDataManagerAndroid(env, obj); |
852 return reinterpret_cast<intptr_t>(personal_data_manager_android); | 855 return reinterpret_cast<intptr_t>(personal_data_manager_android); |
853 } | 856 } |
854 | 857 |
855 } // namespace autofill | 858 } // namespace autofill |
OLD | NEW |