| 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/ui/android/autofill/autofill_dialog_result.h" | 5 #include "chrome/browser/ui/android/autofill/autofill_dialog_result.h" |
| 6 | 6 |
| 7 #include "base/android/jni_android.h" | 7 #include "base/android/jni_android.h" |
| 8 #include "base/android/jni_array.h" | 8 #include "base/android/jni_array.h" |
| 9 #include "base/android/jni_string.h" | 9 #include "base/android/jni_string.h" |
| 10 #include "base/android/scoped_java_ref.h" | 10 #include "base/android/scoped_java_ref.h" |
| (...skipping 27 matching lines...) Expand all Loading... |
| 38 (ConvertNullOrJavaStringTo##utf( \ | 38 (ConvertNullOrJavaStringTo##utf( \ |
| 39 (env), FETCH_JFIELD((env), (jobj), cls, getter).obj())) | 39 (env), FETCH_JFIELD((env), (jobj), cls, getter).obj())) |
| 40 | 40 |
| 41 scoped_ptr<wallet::Address> ParseJavaWalletAddress( | 41 scoped_ptr<wallet::Address> ParseJavaWalletAddress( |
| 42 JNIEnv* env, jobject address) { | 42 JNIEnv* env, jobject address) { |
| 43 if (!address) | 43 if (!address) |
| 44 return scoped_ptr<wallet::Address>(); | 44 return scoped_ptr<wallet::Address>(); |
| 45 | 45 |
| 46 const base::string16 recipient_name = | 46 const base::string16 recipient_name = |
| 47 FETCH_JSTRING(UTF16, env, address, ResultAddress, Name); | 47 FETCH_JSTRING(UTF16, env, address, ResultAddress, Name); |
| 48 const base::string16 address_line_1 = | 48 std::vector<base::string16> address_lines; |
| 49 FETCH_JSTRING(UTF16, env, address, ResultAddress, Address1); | 49 address_lines.push_back( |
| 50 const base::string16 address_line_2 = | 50 FETCH_JSTRING(UTF16, env, address, ResultAddress, Address1)); |
| 51 FETCH_JSTRING(UTF16, env, address, ResultAddress, Address2); | 51 address_lines.push_back( |
| 52 FETCH_JSTRING(UTF16, env, address, ResultAddress, Address2)); |
| 52 const base::string16 locality_name = | 53 const base::string16 locality_name = |
| 53 FETCH_JSTRING(UTF16, env, address, ResultAddress, City); | 54 FETCH_JSTRING(UTF16, env, address, ResultAddress, City); |
| 54 const base::string16 administrative_area_name = | 55 const base::string16 administrative_area_name = |
| 55 FETCH_JSTRING(UTF16, env, address, ResultAddress, State); | 56 FETCH_JSTRING(UTF16, env, address, ResultAddress, State); |
| 56 const base::string16 postal_code_number = | 57 const base::string16 postal_code_number = |
| 57 FETCH_JSTRING(UTF16, env, address, ResultAddress, PostalCode); | 58 FETCH_JSTRING(UTF16, env, address, ResultAddress, PostalCode); |
| 58 const base::string16 phone_number = | 59 const base::string16 phone_number = |
| 59 FETCH_JSTRING(UTF16, env, address, ResultAddress, PhoneNumber); | 60 FETCH_JSTRING(UTF16, env, address, ResultAddress, PhoneNumber); |
| 60 const std::string country_name_code = | 61 const std::string country_name_code = |
| 61 FETCH_JSTRING(UTF8, env, address, ResultAddress, CountryCode); | 62 FETCH_JSTRING(UTF8, env, address, ResultAddress, CountryCode); |
| 62 DCHECK(!country_name_code.empty()); | 63 DCHECK(!country_name_code.empty()); |
| 63 | 64 |
| 65 // TODO(aruslan): get these from the JavaWalletAddress. |
| 66 const base::string16 dependent_locality_name; |
| 67 const base::string16 sorting_code; |
| 68 |
| 64 return scoped_ptr<wallet::Address>(new wallet::Address( | 69 return scoped_ptr<wallet::Address>(new wallet::Address( |
| 65 country_name_code, | 70 country_name_code, |
| 66 recipient_name, | 71 recipient_name, |
| 67 address_line_1, | 72 address_lines, |
| 68 address_line_2, | |
| 69 locality_name, | 73 locality_name, |
| 74 dependent_locality_name, |
| 70 administrative_area_name, | 75 administrative_area_name, |
| 71 postal_code_number, | 76 postal_code_number, |
| 77 sorting_code, |
| 72 phone_number, | 78 phone_number, |
| 73 std::string())); | 79 std::string())); |
| 74 } | 80 } |
| 75 | 81 |
| 76 scoped_ptr<wallet::FullWallet> ParseJavaWallet(JNIEnv* env, jobject wallet) { | 82 scoped_ptr<wallet::FullWallet> ParseJavaWallet(JNIEnv* env, jobject wallet) { |
| 77 const ScopedJavaLocalRef<jobject> billing_address( | 83 const ScopedJavaLocalRef<jobject> billing_address( |
| 78 FETCH_JFIELD(env, wallet, ResultWallet, BillingAddress)); | 84 FETCH_JFIELD(env, wallet, ResultWallet, BillingAddress)); |
| 79 const ScopedJavaLocalRef<jobject> shipping_address( | 85 const ScopedJavaLocalRef<jobject> shipping_address( |
| 80 FETCH_JFIELD(env, wallet, ResultWallet, ShippingAddress)); | 86 FETCH_JFIELD(env, wallet, ResultWallet, ShippingAddress)); |
| 81 const ScopedJavaLocalRef<jobject> card( | 87 const ScopedJavaLocalRef<jobject> card( |
| (...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 129 JNIEnv* env, jobject wallet) { | 135 JNIEnv* env, jobject wallet) { |
| 130 return ParseGoogleTransactionId(env, wallet); | 136 return ParseGoogleTransactionId(env, wallet); |
| 131 } | 137 } |
| 132 | 138 |
| 133 // static | 139 // static |
| 134 bool AutofillDialogResult::RegisterAutofillDialogResult(JNIEnv* env) { | 140 bool AutofillDialogResult::RegisterAutofillDialogResult(JNIEnv* env) { |
| 135 return RegisterNativesImpl(env); | 141 return RegisterNativesImpl(env); |
| 136 } | 142 } |
| 137 | 143 |
| 138 } // namespace autofill | 144 } // namespace autofill |
| OLD | NEW |