| 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 "components/autofill/core/browser/autofill_profile.h" | 5 #include "components/autofill/core/browser/autofill_profile.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 #include <functional> | 8 #include <functional> |
| 9 #include <map> | 9 #include <map> |
| 10 #include <memory> | 10 #include <memory> |
| (...skipping 177 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 188 } | 188 } |
| 189 } | 189 } |
| 190 } | 190 } |
| 191 } | 191 } |
| 192 | 192 |
| 193 } // namespace | 193 } // namespace |
| 194 | 194 |
| 195 AutofillProfile::AutofillProfile(const std::string& guid, | 195 AutofillProfile::AutofillProfile(const std::string& guid, |
| 196 const std::string& origin) | 196 const std::string& origin) |
| 197 : AutofillDataModel(guid, origin), | 197 : AutofillDataModel(guid, origin), |
| 198 phone_number_(this), |
| 198 record_type_(LOCAL_PROFILE), | 199 record_type_(LOCAL_PROFILE), |
| 199 phone_number_(this), | |
| 200 has_converted_(false) {} | 200 has_converted_(false) {} |
| 201 | 201 |
| 202 AutofillProfile::AutofillProfile(RecordType type, const std::string& server_id) | 202 AutofillProfile::AutofillProfile(RecordType type, const std::string& server_id) |
| 203 : AutofillDataModel(base::GenerateGUID(), std::string()), | 203 : AutofillDataModel(base::GenerateGUID(), std::string()), |
| 204 record_type_(type), | |
| 205 phone_number_(this), | 204 phone_number_(this), |
| 206 server_id_(server_id), | 205 server_id_(server_id), |
| 206 record_type_(type), |
| 207 has_converted_(false) { | 207 has_converted_(false) { |
| 208 DCHECK(type == SERVER_PROFILE); | 208 DCHECK(type == SERVER_PROFILE); |
| 209 } | 209 } |
| 210 | 210 |
| 211 AutofillProfile::AutofillProfile() | 211 AutofillProfile::AutofillProfile() |
| 212 : AutofillDataModel(base::GenerateGUID(), std::string()), | 212 : AutofillDataModel(base::GenerateGUID(), std::string()), |
| 213 phone_number_(this), |
| 213 record_type_(LOCAL_PROFILE), | 214 record_type_(LOCAL_PROFILE), |
| 214 phone_number_(this), | |
| 215 has_converted_(false) {} | 215 has_converted_(false) {} |
| 216 | 216 |
| 217 AutofillProfile::AutofillProfile(const AutofillProfile& profile) | 217 AutofillProfile::AutofillProfile(const AutofillProfile& profile) |
| 218 : AutofillDataModel(std::string(), std::string()), phone_number_(this) { | 218 : AutofillDataModel(std::string(), std::string()), phone_number_(this) { |
| 219 operator=(profile); | 219 operator=(profile); |
| 220 } | 220 } |
| 221 | 221 |
| 222 AutofillProfile::~AutofillProfile() { | 222 AutofillProfile::~AutofillProfile() { |
| 223 } | 223 } |
| 224 | 224 |
| 225 AutofillProfile& AutofillProfile::operator=(const AutofillProfile& profile) { | 225 AutofillProfile& AutofillProfile::operator=(const AutofillProfile& profile) { |
| 226 set_use_count(profile.use_count()); | 226 set_use_count(profile.use_count()); |
| 227 set_use_date(profile.use_date()); | 227 set_use_date(profile.use_date()); |
| 228 set_previous_use_date(profile.previous_use_date()); |
| 228 set_modification_date(profile.modification_date()); | 229 set_modification_date(profile.modification_date()); |
| 229 | 230 |
| 230 if (this == &profile) | 231 if (this == &profile) |
| 231 return *this; | 232 return *this; |
| 232 | 233 |
| 233 set_guid(profile.guid()); | 234 set_guid(profile.guid()); |
| 234 set_origin(profile.origin()); | 235 set_origin(profile.origin()); |
| 235 | 236 |
| 236 record_type_ = profile.record_type_; | 237 record_type_ = profile.record_type_; |
| 237 | 238 |
| (...skipping 457 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 695 contents.append(GetRawInfo(ADDRESS_HOME_ZIP)); | 696 contents.append(GetRawInfo(ADDRESS_HOME_ZIP)); |
| 696 contents.append(GetRawInfo(ADDRESS_HOME_SORTING_CODE)); | 697 contents.append(GetRawInfo(ADDRESS_HOME_SORTING_CODE)); |
| 697 contents.append(GetRawInfo(ADDRESS_HOME_COUNTRY)); | 698 contents.append(GetRawInfo(ADDRESS_HOME_COUNTRY)); |
| 698 contents.append(GetRawInfo(PHONE_HOME_WHOLE_NUMBER)); | 699 contents.append(GetRawInfo(PHONE_HOME_WHOLE_NUMBER)); |
| 699 std::string contents_utf8 = UTF16ToUTF8(contents); | 700 std::string contents_utf8 = UTF16ToUTF8(contents); |
| 700 contents_utf8.append(language_code()); | 701 contents_utf8.append(language_code()); |
| 701 server_id_ = base::SHA1HashString(contents_utf8); | 702 server_id_ = base::SHA1HashString(contents_utf8); |
| 702 } | 703 } |
| 703 | 704 |
| 704 void AutofillProfile::RecordAndLogUse() { | 705 void AutofillProfile::RecordAndLogUse() { |
| 706 previous_use_date_ = use_date(); |
| 705 UMA_HISTOGRAM_COUNTS_1000("Autofill.DaysSinceLastUse.Profile", | 707 UMA_HISTOGRAM_COUNTS_1000("Autofill.DaysSinceLastUse.Profile", |
| 706 (AutofillClock::Now() - use_date()).InDays()); | 708 (AutofillClock::Now() - use_date()).InDays()); |
| 707 RecordUse(); | 709 RecordUse(); |
| 708 } | 710 } |
| 709 | 711 |
| 710 void AutofillProfile::GetSupportedTypes( | 712 void AutofillProfile::GetSupportedTypes( |
| 711 ServerFieldTypeSet* supported_types) const { | 713 ServerFieldTypeSet* supported_types) const { |
| 712 FormGroupList info = FormGroups(); | 714 FormGroupList info = FormGroups(); |
| 713 for (const auto* form_group : info) { | 715 for (const auto* form_group : info) { |
| 714 form_group->GetSupportedTypes(supported_types); | 716 form_group->GetSupportedTypes(supported_types); |
| (...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 858 << " " << UTF16ToUTF8(profile.GetRawInfo(ADDRESS_HOME_CITY)) << " " | 860 << " " << UTF16ToUTF8(profile.GetRawInfo(ADDRESS_HOME_CITY)) << " " |
| 859 << UTF16ToUTF8(profile.GetRawInfo(ADDRESS_HOME_STATE)) << " " | 861 << UTF16ToUTF8(profile.GetRawInfo(ADDRESS_HOME_STATE)) << " " |
| 860 << UTF16ToUTF8(profile.GetRawInfo(ADDRESS_HOME_ZIP)) << " " | 862 << UTF16ToUTF8(profile.GetRawInfo(ADDRESS_HOME_ZIP)) << " " |
| 861 << UTF16ToUTF8(profile.GetRawInfo(ADDRESS_HOME_SORTING_CODE)) << " " | 863 << UTF16ToUTF8(profile.GetRawInfo(ADDRESS_HOME_SORTING_CODE)) << " " |
| 862 << UTF16ToUTF8(profile.GetRawInfo(ADDRESS_HOME_COUNTRY)) << " " | 864 << UTF16ToUTF8(profile.GetRawInfo(ADDRESS_HOME_COUNTRY)) << " " |
| 863 << profile.language_code() << " " | 865 << profile.language_code() << " " |
| 864 << UTF16ToUTF8(profile.GetRawInfo(PHONE_HOME_WHOLE_NUMBER)); | 866 << UTF16ToUTF8(profile.GetRawInfo(PHONE_HOME_WHOLE_NUMBER)); |
| 865 } | 867 } |
| 866 | 868 |
| 867 } // namespace autofill | 869 } // namespace autofill |
| OLD | NEW |