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

Side by Side Diff: components/autofill/core/browser/credit_card.cc

Issue 1110833002: [autofill] Sync server card and address metadata. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Work Created 5 years, 7 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 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 "components/autofill/core/browser/credit_card.h" 5 #include "components/autofill/core/browser/credit_card.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include <algorithm> 9 #include <algorithm>
10 #include <ostream> 10 #include <ostream>
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after
95 SetExpirationMonth(expiration_month); 95 SetExpirationMonth(expiration_month);
96 SetExpirationYear(expiration_year); 96 SetExpirationYear(expiration_year);
97 } 97 }
98 98
99 CreditCard::CreditCard(RecordType type, const std::string& server_id) 99 CreditCard::CreditCard(RecordType type, const std::string& server_id)
100 : AutofillDataModel(base::GenerateGUID(), std::string()), 100 : AutofillDataModel(base::GenerateGUID(), std::string()),
101 record_type_(type), 101 record_type_(type),
102 type_(kGenericCard), 102 type_(kGenericCard),
103 expiration_month_(0), 103 expiration_month_(0),
104 expiration_year_(0), 104 expiration_year_(0),
105 server_id_(server_id),
106 server_status_(OK) { 105 server_status_(OK) {
107 DCHECK(type == MASKED_SERVER_CARD || type == FULL_SERVER_CARD); 106 DCHECK(type == MASKED_SERVER_CARD || type == FULL_SERVER_CARD);
107 DCHECK(!server_id.empty());
108 set_server_id(server_id);
108 } 109 }
109 110
110 CreditCard::CreditCard() 111 CreditCard::CreditCard()
111 : AutofillDataModel(base::GenerateGUID(), std::string()), 112 : AutofillDataModel(base::GenerateGUID(), std::string()),
112 record_type_(LOCAL_CARD), 113 record_type_(LOCAL_CARD),
113 type_(kGenericCard), 114 type_(kGenericCard),
114 expiration_month_(0), 115 expiration_month_(0),
115 expiration_year_(0), 116 expiration_year_(0),
116 server_status_(OK) { 117 server_status_(OK) {
117 } 118 }
(...skipping 377 matching lines...) Expand 10 before | Expand all | Expand 10 after
495 if (digits.empty()) 496 if (digits.empty())
496 return type; 497 return type;
497 498
498 // The separator character is a non breaking space and a horizontal midline 499 // The separator character is a non breaking space and a horizontal midline
499 // ellipsis. 500 // ellipsis.
500 // TODO(estade): i18n? 501 // TODO(estade): i18n?
501 return type + base::UTF8ToUTF16("\xC2\xA0\xE2\x8B\xAF") + digits; 502 return type + base::UTF8ToUTF16("\xC2\xA0\xE2\x8B\xAF") + digits;
502 } 503 }
503 504
504 void CreditCard::operator=(const CreditCard& credit_card) { 505 void CreditCard::operator=(const CreditCard& credit_card) {
506 set_server_id(credit_card.server_id());
505 set_use_count(credit_card.use_count()); 507 set_use_count(credit_card.use_count());
506 set_use_date(credit_card.use_date()); 508 set_use_date(credit_card.use_date());
507 set_modification_date(credit_card.modification_date()); 509 set_modification_date(credit_card.modification_date());
508 510
509 if (this == &credit_card) 511 if (this == &credit_card)
510 return; 512 return;
511 513
512 record_type_ = credit_card.record_type_; 514 record_type_ = credit_card.record_type_;
513 number_ = credit_card.number_; 515 number_ = credit_card.number_;
514 name_on_card_ = credit_card.name_on_card_; 516 name_on_card_ = credit_card.name_on_card_;
515 type_ = credit_card.type_; 517 type_ = credit_card.type_;
516 expiration_month_ = credit_card.expiration_month_; 518 expiration_month_ = credit_card.expiration_month_;
517 expiration_year_ = credit_card.expiration_year_; 519 expiration_year_ = credit_card.expiration_year_;
518 server_id_ = credit_card.server_id_;
519 server_status_ = credit_card.server_status_; 520 server_status_ = credit_card.server_status_;
520 521
521 set_guid(credit_card.guid()); 522 set_guid(credit_card.guid());
522 set_origin(credit_card.origin()); 523 set_origin(credit_card.origin());
523 } 524 }
524 525
525 bool CreditCard::UpdateFromImportedCard(const CreditCard& imported_card, 526 bool CreditCard::UpdateFromImportedCard(const CreditCard& imported_card,
526 const std::string& app_locale) { 527 const std::string& app_locale) {
527 if (this->GetInfo(AutofillType(CREDIT_CARD_NUMBER), app_locale) != 528 if (this->GetInfo(AutofillType(CREDIT_CARD_NUMBER), app_locale) !=
528 imported_card.GetInfo(AutofillType(CREDIT_CARD_NUMBER), app_locale)) { 529 imported_card.GetInfo(AutofillType(CREDIT_CARD_NUMBER), app_locale)) {
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
560 CREDIT_CARD_NUMBER, 561 CREDIT_CARD_NUMBER,
561 CREDIT_CARD_EXP_MONTH, 562 CREDIT_CARD_EXP_MONTH,
562 CREDIT_CARD_EXP_4_DIGIT_YEAR }; 563 CREDIT_CARD_EXP_4_DIGIT_YEAR };
563 for (size_t i = 0; i < arraysize(types); ++i) { 564 for (size_t i = 0; i < arraysize(types); ++i) {
564 int comparison = 565 int comparison =
565 GetRawInfo(types[i]).compare(credit_card.GetRawInfo(types[i])); 566 GetRawInfo(types[i]).compare(credit_card.GetRawInfo(types[i]));
566 if (comparison != 0) 567 if (comparison != 0)
567 return comparison; 568 return comparison;
568 } 569 }
569 570
570 int comparison = server_id_.compare(credit_card.server_id_); 571 int comparison = server_id().compare(credit_card.server_id());
571 if (comparison != 0) 572 if (comparison != 0)
572 return comparison; 573 return comparison;
573 574
574 if (static_cast<int>(server_status_) < 575 if (static_cast<int>(server_status_) <
575 static_cast<int>(credit_card.server_status_)) 576 static_cast<int>(credit_card.server_status_))
576 return -1; 577 return -1;
577 if (static_cast<int>(server_status_) > 578 if (static_cast<int>(server_status_) >
578 static_cast<int>(credit_card.server_status_)) 579 static_cast<int>(credit_card.server_status_))
579 return 1; 580 return 1;
580 if (static_cast<int>(record_type_) < 581 if (static_cast<int>(record_type_) <
(...skipping 202 matching lines...) Expand 10 before | Expand all | Expand 10 after
783 const char* const kAmericanExpressCard = "americanExpressCC"; 784 const char* const kAmericanExpressCard = "americanExpressCC";
784 const char* const kDinersCard = "dinersCC"; 785 const char* const kDinersCard = "dinersCC";
785 const char* const kDiscoverCard = "discoverCC"; 786 const char* const kDiscoverCard = "discoverCC";
786 const char* const kGenericCard = "genericCC"; 787 const char* const kGenericCard = "genericCC";
787 const char* const kJCBCard = "jcbCC"; 788 const char* const kJCBCard = "jcbCC";
788 const char* const kMasterCard = "masterCardCC"; 789 const char* const kMasterCard = "masterCardCC";
789 const char* const kUnionPay = "unionPayCC"; 790 const char* const kUnionPay = "unionPayCC";
790 const char* const kVisaCard = "visaCC"; 791 const char* const kVisaCard = "visaCC";
791 792
792 } // namespace autofill 793 } // namespace autofill
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698