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

Side by Side Diff: components/autofill/core/browser/webdata/autofill_table.h

Issue 967453005: Delete unmasked credit cards when clearing data. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 9 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 | « no previous file | components/autofill/core/browser/webdata/autofill_table.cc » ('j') | 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 #ifndef COMPONENTS_AUTOFILL_CORE_BROWSER_WEBDATA_AUTOFILL_TABLE_H_ 5 #ifndef COMPONENTS_AUTOFILL_CORE_BROWSER_WEBDATA_AUTOFILL_TABLE_H_
6 #define COMPONENTS_AUTOFILL_CORE_BROWSER_WEBDATA_AUTOFILL_TABLE_H_ 6 #define COMPONENTS_AUTOFILL_CORE_BROWSER_WEBDATA_AUTOFILL_TABLE_H_
7 7
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/compiler_specific.h" 10 #include "base/compiler_specific.h"
(...skipping 149 matching lines...) Expand 10 before | Expand all | Expand 10 after
160 // full number is downloaded, it will be stored here. 160 // full number is downloaded, it will be stored here.
161 // 161 //
162 // id Server ID. This can be joined with the id in the 162 // id Server ID. This can be joined with the id in the
163 // masked_credit_cards table to get the rest of the data. 163 // masked_credit_cards table to get the rest of the data.
164 // card_number_encrypted 164 // card_number_encrypted
165 // Full card number, encrypted. 165 // Full card number, encrypted.
166 // use_count The number of times this card has been used to fill 166 // use_count The number of times this card has been used to fill
167 // a form. Added in version 62. 167 // a form. Added in version 62.
168 // use_date The date this card was last used to fill a form, in 168 // use_date The date this card was last used to fill a form, in
169 // internal time format (NOT time_t). Added in version 62. 169 // internal time format (NOT time_t). Added in version 62.
170 // unmask_date The date this card was unmasked in units of
171 // Time::ToInternalValue. Added in version 64.
170 // 172 //
171 // server_addresses This table contains Autofill address data synced from 173 // server_addresses This table contains Autofill address data synced from
172 // the wallet server. It's basically the same as the 174 // the wallet server. It's basically the same as the
173 // autofill_profiles table but locally immutable. 175 // autofill_profiles table but locally immutable.
174 // 176 //
175 // id String assigned by the server to identify this address. 177 // id String assigned by the server to identify this address.
176 // This is opaque to the client. 178 // This is opaque to the client.
177 // recipient_name Added in v63. 179 // recipient_name Added in v63.
178 // company_name 180 // company_name
179 // street_address The combined lines of the street address. 181 // street_address The combined lines of the street address.
180 // address_1 Also known as "administrative area". This is normally 182 // address_1 Also known as "administrative area". This is normally
181 // the state or province in most countries. 183 // the state or province in most countries.
182 // address_2 Also known as "locality". In the US this is the city. 184 // address_2 Also known as "locality". In the US this is the city.
183 // address_3 A sub-classification beneath the city, e.g. an 185 // address_3 A sub-classification beneath the city, e.g. an
184 // inner-city district or suburb. Also known as 186 // inner-city district or suburb. Also known as
185 // "dependent_locality". 187 // "dependent_locality".
186 // address_4 Used in certain countries. Also known as 188 // address_4 Used in certain countries. Also known as
187 // "sub_dependent_locality". 189 // "sub_dependent_locality".
188 // postal_code 190 // postal_code
189 // sorting_code Similar to the zipcode column, but used for businesses 191 // sorting_code Similar to the zipcode column, but used for businesses
190 // or organizations that might not be geographically 192 // or organizations that might not be geographically
191 // contiguous. The canonical example is CEDEX in France. 193 // contiguous. The canonical example is CEDEX in France.
192 // country_code 194 // country_code
193 // language_code The BCP 47 language code used to format the address for 195 // language_code The BCP 47 language code used to format the address for
194 // display. For example, a JP address with "ja" language 196 // display. For example, a JP address with "ja" language
195 // code starts with the postal code, but a JP address with 197 // code starts with the postal code, but a JP address with
196 // "ja-latn" language code starts with the recipient name. 198 // "ja-latn" language code starts with the recipient name.
197 // 199 // phone_number Phone number. This is a string and has no formatting
200 // constraints. Added in version 64.
198 class AutofillTable : public WebDatabaseTable { 201 class AutofillTable : public WebDatabaseTable {
199 public: 202 public:
200 explicit AutofillTable(const std::string& app_locale); 203 explicit AutofillTable(const std::string& app_locale);
201 ~AutofillTable() override; 204 ~AutofillTable() override;
202 205
203 // Retrieves the AutofillTable* owned by |database|. 206 // Retrieves the AutofillTable* owned by |database|.
204 static AutofillTable* FromWebDatabase(WebDatabase* db); 207 static AutofillTable* FromWebDatabase(WebDatabase* db);
205 208
206 WebDatabaseTable::TypeKey GetTypeKey() const override; 209 WebDatabaseTable::TypeKey GetTypeKey() const override;
207 bool CreateTablesIfNecessary() override; 210 bool CreateTablesIfNecessary() override;
(...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after
359 362
360 // Table migration functions. 363 // Table migration functions.
361 bool MigrateToVersion54AddI18nFieldsAndRemoveDeprecatedFields(); 364 bool MigrateToVersion54AddI18nFieldsAndRemoveDeprecatedFields();
362 bool MigrateToVersion55MergeAutofillDatesTable(); 365 bool MigrateToVersion55MergeAutofillDatesTable();
363 bool MigrateToVersion56AddProfileLanguageCodeForFormatting(); 366 bool MigrateToVersion56AddProfileLanguageCodeForFormatting();
364 bool MigrateToVersion57AddFullNameField(); 367 bool MigrateToVersion57AddFullNameField();
365 bool MigrateToVersion60AddServerCards(); 368 bool MigrateToVersion60AddServerCards();
366 bool MigrateToVersion61AddUsageStats(); 369 bool MigrateToVersion61AddUsageStats();
367 bool MigrateToVersion62AddUsageStatsForUnmaskedCards(); 370 bool MigrateToVersion62AddUsageStatsForUnmaskedCards();
368 bool MigrateToVersion63AddServerRecipientName(); 371 bool MigrateToVersion63AddServerRecipientName();
372 bool MigrateToVersion64AddUnmaskDate();
369 373
370 // Max data length saved in the table; 374 // Max data length saved in the table;
371 static const size_t kMaxDataLength; 375 static const size_t kMaxDataLength;
372 376
373 private: 377 private:
374 FRIEND_TEST_ALL_PREFIXES(AutofillTableTest, Autofill); 378 FRIEND_TEST_ALL_PREFIXES(AutofillTableTest, Autofill);
375 FRIEND_TEST_ALL_PREFIXES(AutofillTableTest, Autofill_AddChanges); 379 FRIEND_TEST_ALL_PREFIXES(AutofillTableTest, Autofill_AddChanges);
376 FRIEND_TEST_ALL_PREFIXES(AutofillTableTest, Autofill_RemoveBetweenChanges); 380 FRIEND_TEST_ALL_PREFIXES(AutofillTableTest, Autofill_RemoveBetweenChanges);
377 FRIEND_TEST_ALL_PREFIXES(AutofillTableTest, Autofill_UpdateDontReplace); 381 FRIEND_TEST_ALL_PREFIXES(AutofillTableTest, Autofill_UpdateDontReplace);
378 FRIEND_TEST_ALL_PREFIXES( 382 FRIEND_TEST_ALL_PREFIXES(
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after
442 // created (on the UI thread), and cached here so that it can be used for 446 // created (on the UI thread), and cached here so that it can be used for
443 // migrations (on the DB thread). 447 // migrations (on the DB thread).
444 std::string app_locale_; 448 std::string app_locale_;
445 449
446 DISALLOW_COPY_AND_ASSIGN(AutofillTable); 450 DISALLOW_COPY_AND_ASSIGN(AutofillTable);
447 }; 451 };
448 452
449 } // namespace autofill 453 } // namespace autofill
450 454
451 #endif // COMPONENTS_AUTOFILL_CORE_BROWSER_WEBDATA_AUTOFILL_TABLE_H_ 455 #endif // COMPONENTS_AUTOFILL_CORE_BROWSER_WEBDATA_AUTOFILL_TABLE_H_
OLDNEW
« no previous file with comments | « no previous file | components/autofill/core/browser/webdata/autofill_table.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698