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

Side by Side Diff: components/payments/content/android/currency_formatter_android.cc

Issue 2750103005: [Payments] Move journey logger to native. (Closed)
Patch Set: Add the component_jni_registrar files 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
OLDNEW
1 // Copyright 2017 The Chromium Authors. All rights reserved. 1 // Copyright 2017 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 "components/payments/content/android/currency_formatter_android.h" 5 #include "components/payments/content/android/currency_formatter_android.h"
6 6
7 #include "base/android/jni_string.h" 7 #include "base/android/jni_string.h"
8 #include "base/strings/string16.h" 8 #include "base/strings/string16.h"
9 #include "components/payments/core/currency_formatter.h" 9 #include "components/payments/core/currency_formatter.h"
10 #include "jni/CurrencyFormatter_jni.h" 10 #include "jni/CurrencyFormatter_jni.h"
11 11
12 namespace payments { 12 namespace payments {
13 namespace { 13 namespace {
14 14
15 using ::base::android::JavaParamRef; 15 using ::base::android::JavaParamRef;
16 using ::base::android::ConvertJavaStringToUTF8; 16 using ::base::android::ConvertJavaStringToUTF8;
17 17
18 } // namespace 18 } // namespace
19 19
20 CurrencyFormatterAndroid::CurrencyFormatterAndroid( 20 CurrencyFormatterAndroid::CurrencyFormatterAndroid(
21 JNIEnv* env, 21 JNIEnv* env,
22 jobject unused_obj, 22 jobject jcaller,
23 const JavaParamRef<jstring>& currency_code, 23 const JavaParamRef<jstring>& currency_code,
24 const JavaParamRef<jstring>& currency_system, 24 const JavaParamRef<jstring>& currency_system,
25 const JavaParamRef<jstring>& locale_name) { 25 const JavaParamRef<jstring>& locale_name) {
26 std::string currency_system_str = 26 std::string currency_system_str =
27 ConvertJavaStringToUTF8(env, currency_system); 27 ConvertJavaStringToUTF8(env, currency_system);
28 28
29 currency_formatter_.reset(new CurrencyFormatter( 29 currency_formatter_.reset(new CurrencyFormatter(
30 ConvertJavaStringToUTF8(env, currency_code), currency_system_str, 30 ConvertJavaStringToUTF8(env, currency_code), currency_system_str,
31 ConvertJavaStringToUTF8(env, locale_name))); 31 ConvertJavaStringToUTF8(env, locale_name)));
32 } 32 }
33 33
34 CurrencyFormatterAndroid::~CurrencyFormatterAndroid() {} 34 CurrencyFormatterAndroid::~CurrencyFormatterAndroid() {}
35 35
36 void CurrencyFormatterAndroid::Destroy(JNIEnv* env, 36 void CurrencyFormatterAndroid::Destroy(JNIEnv* env,
37 const JavaParamRef<jobject>& obj) { 37 const JavaParamRef<jobject>& jcaller) {
38 delete this; 38 delete this;
39 } 39 }
40 40
41 base::android::ScopedJavaLocalRef<jstring> CurrencyFormatterAndroid::Format( 41 base::android::ScopedJavaLocalRef<jstring> CurrencyFormatterAndroid::Format(
42 JNIEnv* env, 42 JNIEnv* env,
43 const JavaParamRef<jobject>& unused_obj, 43 const JavaParamRef<jobject>& jcaller,
44 const JavaParamRef<jstring>& amount) { 44 const JavaParamRef<jstring>& amount) {
45 base::string16 result = 45 base::string16 result =
46 currency_formatter_->Format(ConvertJavaStringToUTF8(env, amount)); 46 currency_formatter_->Format(ConvertJavaStringToUTF8(env, amount));
47 return base::android::ConvertUTF16ToJavaString(env, result); 47 return base::android::ConvertUTF16ToJavaString(env, result);
48 } 48 }
49 49
50 base::android::ScopedJavaLocalRef<jstring> 50 base::android::ScopedJavaLocalRef<jstring>
51 CurrencyFormatterAndroid::GetFormattedCurrencyCode( 51 CurrencyFormatterAndroid::GetFormattedCurrencyCode(
52 JNIEnv* env, 52 JNIEnv* env,
53 const JavaParamRef<jobject>& unused_obj) { 53 const JavaParamRef<jobject>& unused_obj) {
(...skipping 12 matching lines...) Expand all
66 const JavaParamRef<jstring>& currency_code, 66 const JavaParamRef<jstring>& currency_code,
67 const JavaParamRef<jstring>& currency_system, 67 const JavaParamRef<jstring>& currency_system,
68 const JavaParamRef<jstring>& locale_name) { 68 const JavaParamRef<jstring>& locale_name) {
69 CurrencyFormatterAndroid* currency_formatter_android = 69 CurrencyFormatterAndroid* currency_formatter_android =
70 new CurrencyFormatterAndroid(env, obj, currency_code, currency_system, 70 new CurrencyFormatterAndroid(env, obj, currency_code, currency_system,
71 locale_name); 71 locale_name);
72 return reinterpret_cast<intptr_t>(currency_formatter_android); 72 return reinterpret_cast<intptr_t>(currency_formatter_android);
73 } 73 }
74 74
75 } // namespace payments 75 } // namespace payments
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698