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

Side by Side Diff: chrome/browser/autofill/android/personal_data_manager_android.cc

Issue 2126213002: [Payments] Record use of profiles and credit cards in Payment Request. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Addressed comments 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 unified diff | Download patch
« no previous file with comments | « chrome/browser/autofill/android/personal_data_manager_android.h ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 474 matching lines...) Expand 10 before | Expand all | Expand 10 after
485 485
486 Java_PersonalDataManager_personalDataChanged(env, 486 Java_PersonalDataManager_personalDataChanged(env,
487 weak_java_obj_.get(env).obj()); 487 weak_java_obj_.get(env).obj());
488 } 488 }
489 489
490 // static 490 // static
491 bool PersonalDataManagerAndroid::Register(JNIEnv* env) { 491 bool PersonalDataManagerAndroid::Register(JNIEnv* env) {
492 return RegisterNativesImpl(env); 492 return RegisterNativesImpl(env);
493 } 493 }
494 494
495 void PersonalDataManagerAndroid::RecordAndLogProfileUse(
496 JNIEnv* env,
497 const JavaParamRef<jobject>& unused_obj,
498 const JavaParamRef<jstring>& jguid) {
499 AutofillProfile* profile = personal_data_manager_->GetProfileByGUID(
500 ConvertJavaStringToUTF8(env, jguid));
501 if (profile)
502 profile->RecordAndLogUse();
503 }
504
495 void PersonalDataManagerAndroid::SetProfileUseStatsForTesting( 505 void PersonalDataManagerAndroid::SetProfileUseStatsForTesting(
496 JNIEnv* env, 506 JNIEnv* env,
497 const JavaParamRef<jobject>& unused_obj, 507 const JavaParamRef<jobject>& unused_obj,
498 const JavaParamRef<jstring>& jguid, 508 const JavaParamRef<jstring>& jguid,
499 jint count, 509 jint count,
500 jint date) { 510 jint date) {
501 DCHECK(count >= 0 && date >= 0); 511 DCHECK(count >= 0 && date >= 0);
502 512
503 AutofillProfile* profile = personal_data_manager_->GetProfileByGUID( 513 AutofillProfile* profile = personal_data_manager_->GetProfileByGUID(
504 ConvertJavaStringToUTF8(env, jguid)); 514 ConvertJavaStringToUTF8(env, jguid));
505 if (!profile) 515 if (!profile)
506 return; 516 return;
507 517
508 profile->set_use_count(static_cast<size_t>(count)); 518 profile->set_use_count(static_cast<size_t>(count));
509 profile->set_use_date(base::Time::FromTimeT(date)); 519 profile->set_use_date(base::Time::FromTimeT(date));
510 } 520 }
511 521
522 jint PersonalDataManagerAndroid::GetProfileUseCountForTesting(
523 JNIEnv* env,
524 const base::android::JavaParamRef<jobject>& unused_obj,
525 const base::android::JavaParamRef<jstring>& jguid) {
526 AutofillProfile* profile = personal_data_manager_->GetProfileByGUID(
527 ConvertJavaStringToUTF8(env, jguid));
528
please use gerrit instead 2016/07/13 18:55:26 nit: remove extra newline.
sebsg 2016/07/13 19:18:59 Done.
529 return profile ? profile->use_count() : -1;
530 }
531
532 jlong PersonalDataManagerAndroid::GetProfileUseDateForTesting(
533 JNIEnv* env,
534 const base::android::JavaParamRef<jobject>& unused_obj,
535 const base::android::JavaParamRef<jstring>& jguid) {
536 AutofillProfile* profile = personal_data_manager_->GetProfileByGUID(
537 ConvertJavaStringToUTF8(env, jguid));
538
please use gerrit instead 2016/07/13 18:55:26 Ditto
sebsg 2016/07/13 19:18:59 Done.
539 return profile ? profile->use_date().ToTimeT() : -1;
540 }
541
542 void PersonalDataManagerAndroid::RecordAndLogCreditCardUse(
543 JNIEnv* env,
544 const JavaParamRef<jobject>& unused_obj,
545 const JavaParamRef<jstring>& jguid) {
546 CreditCard* card = personal_data_manager_->GetCreditCardByGUID(
547 ConvertJavaStringToUTF8(env, jguid));
548 if (card)
549 card->RecordAndLogUse();
550 }
551
512 void PersonalDataManagerAndroid::SetCreditCardUseStatsForTesting( 552 void PersonalDataManagerAndroid::SetCreditCardUseStatsForTesting(
513 JNIEnv* env, 553 JNIEnv* env,
514 const JavaParamRef<jobject>& unused_obj, 554 const JavaParamRef<jobject>& unused_obj,
515 const JavaParamRef<jstring>& jguid, 555 const JavaParamRef<jstring>& jguid,
516 jint count, 556 jint count,
517 jint date) { 557 jint date) {
518 DCHECK(count >= 0 && date >= 0); 558 DCHECK(count >= 0 && date >= 0);
519 559
520 CreditCard* card = personal_data_manager_->GetCreditCardByGUID( 560 CreditCard* card = personal_data_manager_->GetCreditCardByGUID(
521 ConvertJavaStringToUTF8(env, jguid)); 561 ConvertJavaStringToUTF8(env, jguid));
522 if (!card) 562 if (!card)
523 return; 563 return;
524 564
525 card->set_use_count(static_cast<size_t>(count)); 565 card->set_use_count(static_cast<size_t>(count));
526 card->set_use_date(base::Time::FromTimeT(date)); 566 card->set_use_date(base::Time::FromTimeT(date));
527 } 567 }
528 568
569 jint PersonalDataManagerAndroid::GetCreditCardUseCountForTesting(
570 JNIEnv* env,
571 const base::android::JavaParamRef<jobject>& unused_obj,
572 const base::android::JavaParamRef<jstring>& jguid) {
573 CreditCard* card = personal_data_manager_->GetCreditCardByGUID(
574 ConvertJavaStringToUTF8(env, jguid));
575
please use gerrit instead 2016/07/13 18:55:27 Ditto
sebsg 2016/07/13 19:18:59 Done.
576 return card ? card->use_count() : -1;
577 }
578
579 jlong PersonalDataManagerAndroid::GetCreditCardUseDateForTesting(
580 JNIEnv* env,
581 const base::android::JavaParamRef<jobject>& unused_obj,
582 const base::android::JavaParamRef<jstring>& jguid){
583 CreditCard* card = personal_data_manager_->GetCreditCardByGUID(
584 ConvertJavaStringToUTF8(env, jguid));
585
please use gerrit instead 2016/07/13 18:55:27 Ditto
sebsg 2016/07/13 19:18:59 Done.
586 return card ? card->use_date().ToTimeT() : -1;
587 }
588
589 jlong PersonalDataManagerAndroid::GetCurrentDateForTesting(
590 JNIEnv* env,
591 const base::android::JavaParamRef<jobject>& unused_obj) {
592 return base::Time::Now().ToTimeT();
593 }
594
529 ScopedJavaLocalRef<jobjectArray> PersonalDataManagerAndroid::GetProfileGUIDs( 595 ScopedJavaLocalRef<jobjectArray> PersonalDataManagerAndroid::GetProfileGUIDs(
530 JNIEnv* env, 596 JNIEnv* env,
531 const std::vector<AutofillProfile*>& profiles) { 597 const std::vector<AutofillProfile*>& profiles) {
532 std::vector<base::string16> guids; 598 std::vector<base::string16> guids;
533 for (AutofillProfile* profile : profiles) 599 for (AutofillProfile* profile : profiles)
534 guids.push_back(base::UTF8ToUTF16(profile->guid())); 600 guids.push_back(base::UTF8ToUTF16(profile->guid()));
535 601
536 return base::android::ToJavaArrayOfStrings(env, guids); 602 return base::android::ToJavaArrayOfStrings(env, guids);
537 } 603 }
538 604
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
619 base::android::ConvertJavaStringToUTF16(env, jcountry_name))); 685 base::android::ConvertJavaStringToUTF16(env, jcountry_name)));
620 } 686 }
621 687
622 static jlong Init(JNIEnv* env, const JavaParamRef<jobject>& obj) { 688 static jlong Init(JNIEnv* env, const JavaParamRef<jobject>& obj) {
623 PersonalDataManagerAndroid* personal_data_manager_android = 689 PersonalDataManagerAndroid* personal_data_manager_android =
624 new PersonalDataManagerAndroid(env, obj); 690 new PersonalDataManagerAndroid(env, obj);
625 return reinterpret_cast<intptr_t>(personal_data_manager_android); 691 return reinterpret_cast<intptr_t>(personal_data_manager_android);
626 } 692 }
627 693
628 } // namespace autofill 694 } // namespace autofill
OLDNEW
« no previous file with comments | « chrome/browser/autofill/android/personal_data_manager_android.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698