Index: chrome/browser/autofill/android/auxiliary_profile_loader_android.cc |
diff --git a/chrome/browser/autofill/android/auxiliary_profile_loader_android.cc b/chrome/browser/autofill/android/auxiliary_profile_loader_android.cc |
new file mode 100644 |
index 0000000000000000000000000000000000000000..8dfeb437e9b8a3720a7323b6ba9b50b2ada866b1 |
--- /dev/null |
+++ b/chrome/browser/autofill/android/auxiliary_profile_loader_android.cc |
@@ -0,0 +1,100 @@ |
+// Copyright (c) 2013 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+// |
+// |
Ilya Sherman
2013/03/09 01:42:58
nit: Replaces lines 4 and 5 with a single blank li
apiccion
2013/03/09 03:43:17
Done.
apiccion
2013/03/09 03:43:17
Done.
|
+#include "chrome/browser/autofill/android/auxiliary_profile_loader_android.h" |
+ |
+#include <vector> |
+ |
+#include "base/android/jni_android.h" |
+#include "base/android/jni_array.h" |
+#include "base/android/jni_local_ref_extensions.h" |
+#include "base/android/jni_string.h" |
+#include "jni/PersonalAutofillPopulator_jni.h" |
+ |
+#define JAVA_METHOD(__jmethod__) Java_PersonalAutofillPopulator_##__jmethod__(\ |
+ env_,\ |
+ populator_.obj()) |
Ilya Sherman
2013/03/09 01:42:58
nit: Please fix the indentation here.
apiccion
2013/03/09 03:43:17
Done.
|
+ |
+using base::android::SafeJavaStringToUTF16; |
+ |
+namespace autofill { |
+ |
+bool RegisterAuxiliaryProfileLoader(JNIEnv* env) { |
+ return RegisterNativesImpl(env); |
+} |
+ |
+AuxiliaryProfileLoaderAndroid::AuxiliaryProfileLoaderAndroid() {} |
+ |
+AuxiliaryProfileLoaderAndroid::~AuxiliaryProfileLoaderAndroid() { |
+} |
+ |
+void AuxiliaryProfileLoaderAndroid::Init(JNIEnv* env, const jobject& context) { |
+ env_ = env; |
+ populator_ = Java_PersonalAutofillPopulator_create(env_, context); |
+} |
+ |
+// Address info |
+string16 AuxiliaryProfileLoaderAndroid::GetStreet() const { |
+ return SafeJavaStringToUTF16(JAVA_METHOD(getStreet)); |
+} |
+ |
+string16 AuxiliaryProfileLoaderAndroid::GetPostOfficeBox() const { |
+ return SafeJavaStringToUTF16(JAVA_METHOD(getPobox)); |
+} |
+ |
+string16 AuxiliaryProfileLoaderAndroid::GetNeighborhood() const { |
+ return SafeJavaStringToUTF16(JAVA_METHOD(getNeighborhood)); |
+} |
+ |
+string16 AuxiliaryProfileLoaderAndroid::GetRegion() const { |
+ return SafeJavaStringToUTF16(JAVA_METHOD(getRegion)); |
+} |
+ |
+string16 AuxiliaryProfileLoaderAndroid::GetCity() const { |
+ return SafeJavaStringToUTF16(JAVA_METHOD(getCity)); |
+} |
+ |
+string16 AuxiliaryProfileLoaderAndroid::GetPostalCode() const { |
+ return SafeJavaStringToUTF16(JAVA_METHOD(getPostalCode)); |
+} |
+ |
+string16 AuxiliaryProfileLoaderAndroid::GetCountry() const { |
+ return SafeJavaStringToUTF16(JAVA_METHOD(getCountry)); |
+} |
+ |
+// Name info |
+string16 AuxiliaryProfileLoaderAndroid::GetFirstName() const { |
+ return SafeJavaStringToUTF16(JAVA_METHOD(getFirstName)); |
+} |
+ |
+string16 AuxiliaryProfileLoaderAndroid::GetMiddleName() const { |
+ return SafeJavaStringToUTF16(JAVA_METHOD(getMiddleName)); |
+} |
+ |
+string16 AuxiliaryProfileLoaderAndroid::GetLastName() const { |
+ return SafeJavaStringToUTF16(JAVA_METHOD(getLastName)); |
+} |
+ |
+string16 AuxiliaryProfileLoaderAndroid::GetSuffix() const { |
+ return SafeJavaStringToUTF16(JAVA_METHOD(getSuffix)); |
+} |
+ |
+// Email info |
+void AuxiliaryProfileLoaderAndroid::GetEmailAddresses( |
+ std::vector<string16>* emails) const { |
+ SafeJavaStringArrayToStringVector(JAVA_METHOD(getEmailAddresses), |
+ env_, |
+ emails); |
+} |
+ |
+// Phone info |
+void AuxiliaryProfileLoaderAndroid::GetPhoneNumbers( |
+ std::vector<string16>* phone_numbers) const { |
+ SafeJavaStringArrayToStringVector(JAVA_METHOD(getPhoneNumbers), |
+ env_, |
+ phone_numbers); |
+} |
+ |
+} // namespace |