| 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 #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 <stddef.h> | 8 #include <stddef.h> |
| 9 | 9 |
| 10 #include <memory> | 10 #include <memory> |
| 11 #include <string> | 11 #include <string> |
| 12 #include <vector> | 12 #include <vector> |
| 13 | 13 |
| 14 #include "base/gtest_prod_util.h" | 14 #include "base/gtest_prod_util.h" |
| 15 #include "base/macros.h" | 15 #include "base/macros.h" |
| 16 #include "base/strings/string16.h" | 16 #include "base/strings/string16.h" |
| 17 #include "components/sync/base/model_type.h" | 17 #include "components/sync/base/model_type.h" |
| 18 #include "components/sync/model/metadata_batch.h" | 18 #include "components/sync/model/metadata_batch.h" |
| 19 #include "components/sync/model/sync_metadata_store.h" |
| 19 #include "components/webdata/common/web_database_table.h" | 20 #include "components/webdata/common/web_database_table.h" |
| 20 | 21 |
| 21 class WebDatabase; | 22 class WebDatabase; |
| 22 | 23 |
| 23 namespace base { | 24 namespace base { |
| 24 class Time; | 25 class Time; |
| 25 } | 26 } |
| 26 | 27 |
| 27 namespace autofill { | 28 namespace autofill { |
| 28 | 29 |
| (...skipping 213 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 242 // storage_key A string that uniquely identifies the metadata record | 243 // storage_key A string that uniquely identifies the metadata record |
| 243 // as well as the corresponding autofill record. | 244 // as well as the corresponding autofill record. |
| 244 // value The serialized EntityMetadata record. | 245 // value The serialized EntityMetadata record. |
| 245 // | 246 // |
| 246 // autofill_model_type_state | 247 // autofill_model_type_state |
| 247 // Single row table that contains the sync ModelTypeState | 248 // Single row table that contains the sync ModelTypeState |
| 248 // for the autofill model type. | 249 // for the autofill model type. |
| 249 // | 250 // |
| 250 // value The serialized ModelTypeState record. | 251 // value The serialized ModelTypeState record. |
| 251 | 252 |
| 252 class AutofillTable : public WebDatabaseTable { | 253 class AutofillTable : public WebDatabaseTable, |
| 254 public syncer::SyncMetadataStore { |
| 253 public: | 255 public: |
| 254 AutofillTable(); | 256 AutofillTable(); |
| 255 ~AutofillTable() override; | 257 ~AutofillTable() override; |
| 256 | 258 |
| 257 // Retrieves the AutofillTable* owned by |db|. | 259 // Retrieves the AutofillTable* owned by |db|. |
| 258 static AutofillTable* FromWebDatabase(WebDatabase* db); | 260 static AutofillTable* FromWebDatabase(WebDatabase* db); |
| 259 | 261 |
| 260 // WebDatabaseTable: | 262 // WebDatabaseTable: |
| 261 WebDatabaseTable::TypeKey GetTypeKey() const override; | 263 WebDatabaseTable::TypeKey GetTypeKey() const override; |
| 262 bool CreateTablesIfNecessary() override; | 264 bool CreateTablesIfNecessary() override; |
| (...skipping 156 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 419 bool AddAutofillGUIDToTrash(const std::string& guid); | 421 bool AddAutofillGUIDToTrash(const std::string& guid); |
| 420 | 422 |
| 421 // Clear all profiles. | 423 // Clear all profiles. |
| 422 bool ClearAutofillProfiles(); | 424 bool ClearAutofillProfiles(); |
| 423 | 425 |
| 424 // Read all the stored metadata for |model_type| and fill |metadata_batch| | 426 // Read all the stored metadata for |model_type| and fill |metadata_batch| |
| 425 // with it. | 427 // with it. |
| 426 bool GetAllSyncMetadata(syncer::ModelType model_type, | 428 bool GetAllSyncMetadata(syncer::ModelType model_type, |
| 427 syncer::MetadataBatch* metadata_batch); | 429 syncer::MetadataBatch* metadata_batch); |
| 428 | 430 |
| 429 // Update the metadata row for |model_type|, keyed by |storage_key|, to | 431 // syncer::SyncMetadataStore implementation. |
| 430 // contain the contents of |metadata|. | |
| 431 bool UpdateSyncMetadata(syncer::ModelType model_type, | 432 bool UpdateSyncMetadata(syncer::ModelType model_type, |
| 432 const std::string& storage_key, | 433 const std::string& storage_key, |
| 433 const sync_pb::EntityMetadata& metadata); | 434 const sync_pb::EntityMetadata& metadata) override; |
| 434 | |
| 435 // Remove the metadata row of type |model_type| keyed by |storage|key|. | |
| 436 bool ClearSyncMetadata(syncer::ModelType model_type, | 435 bool ClearSyncMetadata(syncer::ModelType model_type, |
| 437 const std::string& storage_key); | 436 const std::string& storage_key) override; |
| 438 | 437 bool UpdateModelTypeState( |
| 439 // Update the stored sync state for the |model_type|. | 438 syncer::ModelType model_type, |
| 440 bool UpdateModelTypeState(syncer::ModelType model_type, | 439 const sync_pb::ModelTypeState& model_type_state) override; |
| 441 const sync_pb::ModelTypeState& model_type_state); | 440 bool ClearModelTypeState(syncer::ModelType model_type) override; |
| 442 | |
| 443 // Clear the stored sync state for |model_type|. | |
| 444 bool ClearModelTypeState(syncer::ModelType model_type); | |
| 445 | 441 |
| 446 // Table migration functions. NB: These do not and should not rely on other | 442 // Table migration functions. NB: These do not and should not rely on other |
| 447 // functions in this class. The implementation of a function such as | 443 // functions in this class. The implementation of a function such as |
| 448 // GetCreditCard may change over time, but MigrateToVersionXX should never | 444 // GetCreditCard may change over time, but MigrateToVersionXX should never |
| 449 // change. | 445 // change. |
| 450 bool MigrateToVersion54AddI18nFieldsAndRemoveDeprecatedFields(); | 446 bool MigrateToVersion54AddI18nFieldsAndRemoveDeprecatedFields(); |
| 451 bool MigrateToVersion55MergeAutofillDatesTable(); | 447 bool MigrateToVersion55MergeAutofillDatesTable(); |
| 452 bool MigrateToVersion56AddProfileLanguageCodeForFormatting(); | 448 bool MigrateToVersion56AddProfileLanguageCodeForFormatting(); |
| 453 bool MigrateToVersion57AddFullNameField(); | 449 bool MigrateToVersion57AddFullNameField(); |
| 454 bool MigrateToVersion60AddServerCards(); | 450 bool MigrateToVersion60AddServerCards(); |
| (...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 548 bool InitModelTypeStateTable(); | 544 bool InitModelTypeStateTable(); |
| 549 | 545 |
| 550 std::unique_ptr<AutofillTableEncryptor> autofill_table_encryptor_; | 546 std::unique_ptr<AutofillTableEncryptor> autofill_table_encryptor_; |
| 551 | 547 |
| 552 DISALLOW_COPY_AND_ASSIGN(AutofillTable); | 548 DISALLOW_COPY_AND_ASSIGN(AutofillTable); |
| 553 }; | 549 }; |
| 554 | 550 |
| 555 } // namespace autofill | 551 } // namespace autofill |
| 556 | 552 |
| 557 #endif // COMPONENTS_AUTOFILL_CORE_BROWSER_WEBDATA_AUTOFILL_TABLE_H_ | 553 #endif // COMPONENTS_AUTOFILL_CORE_BROWSER_WEBDATA_AUTOFILL_TABLE_H_ |
| OLD | NEW |