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

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

Issue 2403773002: Remove stl_util's STLDeleteContainerPointers from autofill. (Closed)
Patch Set: rebase Created 4 years, 2 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 #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 <vector> 11 #include <vector>
12 12
13 #include "base/gtest_prod_util.h" 13 #include "base/gtest_prod_util.h"
14 #include "base/macros.h" 14 #include "base/macros.h"
15 #include "base/memory/scoped_vector.h"
16 #include "base/strings/string16.h" 15 #include "base/strings/string16.h"
17 #include "components/webdata/common/web_database_table.h" 16 #include "components/webdata/common/web_database_table.h"
18 17
19 class WebDatabase; 18 class WebDatabase;
20 19
21 namespace base { 20 namespace base {
22 class Time; 21 class Time;
23 } 22 }
24 23
25 namespace autofill { 24 namespace autofill {
(...skipping 284 matching lines...) Expand 10 before | Expand all | Expand 10 after
310 // Updates the database values for the specified profile. Mulit-value aware. 309 // Updates the database values for the specified profile. Mulit-value aware.
311 virtual bool UpdateAutofillProfile(const AutofillProfile& profile); 310 virtual bool UpdateAutofillProfile(const AutofillProfile& profile);
312 311
313 // Removes a row from the autofill_profiles table. |guid| is the identifier 312 // Removes a row from the autofill_profiles table. |guid| is the identifier
314 // of the profile to remove. 313 // of the profile to remove.
315 virtual bool RemoveAutofillProfile(const std::string& guid); 314 virtual bool RemoveAutofillProfile(const std::string& guid);
316 315
317 // Retrieves a profile with guid |guid|. 316 // Retrieves a profile with guid |guid|.
318 std::unique_ptr<AutofillProfile> GetAutofillProfile(const std::string& guid); 317 std::unique_ptr<AutofillProfile> GetAutofillProfile(const std::string& guid);
319 318
320 // Retrieves local/server profiles in the database. Caller owns the returned 319 // Retrieves local/server profiles in the database.
321 // profiles. 320 virtual bool GetAutofillProfiles(
322 // TODO(thestig): Convert to scopers. 321 std::vector<std::unique_ptr<AutofillProfile>>* profiles);
323 virtual bool GetAutofillProfiles(std::vector<AutofillProfile*>* profiles); 322 virtual bool GetServerProfiles(
324 virtual bool GetServerProfiles(std::vector<AutofillProfile*>* profiles); 323 std::vector<std::unique_ptr<AutofillProfile>>* profiles);
325 324
326 // Sets the server profiles. All old profiles are deleted and replaced with 325 // Sets the server profiles. All old profiles are deleted and replaced with
327 // the given ones. 326 // the given ones.
328 void SetServerProfiles(const std::vector<AutofillProfile>& profiles); 327 void SetServerProfiles(const std::vector<AutofillProfile>& profiles);
329 328
330 // Records a single credit card in the credit_cards table. 329 // Records a single credit card in the credit_cards table.
331 bool AddCreditCard(const CreditCard& credit_card); 330 bool AddCreditCard(const CreditCard& credit_card);
332 331
333 // Updates the database values for the specified credit card. 332 // Updates the database values for the specified credit card.
334 bool UpdateCreditCard(const CreditCard& credit_card); 333 bool UpdateCreditCard(const CreditCard& credit_card);
335 334
336 // Removes a row from the credit_cards table. |guid| is the identifer of the 335 // Removes a row from the credit_cards table. |guid| is the identifier of the
337 // credit card to remove. 336 // credit card to remove.
338 bool RemoveCreditCard(const std::string& guid); 337 bool RemoveCreditCard(const std::string& guid);
339 338
340 // Retrieves a credit card with guid |guid|. 339 // Retrieves a credit card with guid |guid|.
341 std::unique_ptr<CreditCard> GetCreditCard(const std::string& guid); 340 std::unique_ptr<CreditCard> GetCreditCard(const std::string& guid);
342 341
343 // Retrieves the local/server credit cards in the database. Caller owns the 342 // Retrieves the local/server credit cards in the database.
344 // returned credit cards. 343 virtual bool GetCreditCards(
345 // TODO(thestig): Convert to scopers. 344 std::vector<std::unique_ptr<CreditCard>>* credit_cards);
346 virtual bool GetCreditCards(std::vector<CreditCard*>* credit_cards); 345 virtual bool GetServerCreditCards(
347 virtual bool GetServerCreditCards(std::vector<CreditCard*>* credit_cards); 346 std::vector<std::unique_ptr<CreditCard>>* credit_cards);
348 347
349 // Replaces all server credit cards with the given vector. Unmasked cards 348 // Replaces all server credit cards with the given vector. Unmasked cards
350 // present in the new list will be preserved (even if the input is MASKED). 349 // present in the new list will be preserved (even if the input is MASKED).
351 void SetServerCreditCards(const std::vector<CreditCard>& credit_cards); 350 void SetServerCreditCards(const std::vector<CreditCard>& credit_cards);
352 351
353 // Cards synced from the server may be "masked" (only last 4 digits 352 // Cards synced from the server may be "masked" (only last 4 digits
354 // available) or "unmasked" (everything is available). These functions set 353 // available) or "unmasked" (everything is available). These functions set
355 // that state. 354 // that state.
356 bool UnmaskServerCreditCard(const CreditCard& masked, 355 bool UnmaskServerCreditCard(const CreditCard& masked,
357 const base::string16& full_number); 356 const base::string16& full_number);
(...skipping 23 matching lines...) Expand all
381 380
382 // Removes origin URLs from the autofill_profiles and credit_cards tables if 381 // Removes origin URLs from the autofill_profiles and credit_cards tables if
383 // they were written on or after |delete_begin| and strictly before 382 // they were written on or after |delete_begin| and strictly before
384 // |delete_end|. Returns the list of modified profiles in |profiles|. Return 383 // |delete_end|. Returns the list of modified profiles in |profiles|. Return
385 // value is true if all rows were successfully updated. Returns false on 384 // value is true if all rows were successfully updated. Returns false on
386 // database error. In that case, the output vector state is undefined, and 385 // database error. In that case, the output vector state is undefined, and
387 // may be partially filled. 386 // may be partially filled.
388 bool RemoveOriginURLsModifiedBetween( 387 bool RemoveOriginURLsModifiedBetween(
389 const base::Time& delete_begin, 388 const base::Time& delete_begin,
390 const base::Time& delete_end, 389 const base::Time& delete_end,
391 ScopedVector<AutofillProfile>* profiles); 390 std::vector<std::unique_ptr<AutofillProfile>>* profiles);
392 391
393 // Retrieves all profiles in the database that have been deleted since last 392 // Retrieves all profiles in the database that have been deleted since last
394 // "empty" of the trash. 393 // "empty" of the trash.
395 bool GetAutofillProfilesInTrash(std::vector<std::string>* guids); 394 bool GetAutofillProfilesInTrash(std::vector<std::string>* guids);
396 395
397 // Empties the Autofill profiles "trash can". 396 // Empties the Autofill profiles "trash can".
398 bool EmptyAutofillProfilesTrash(); 397 bool EmptyAutofillProfilesTrash();
399 398
400 // Retrieves all profiles in the database that have been deleted since last 399 // Retrieves all profiles in the database that have been deleted since last
401 // "empty" of the trash. 400 // "empty" of the trash.
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after
497 bool InitServerCardMetadataTable(); 496 bool InitServerCardMetadataTable();
498 bool InitServerAddressesTable(); 497 bool InitServerAddressesTable();
499 bool InitServerAddressMetadataTable(); 498 bool InitServerAddressMetadataTable();
500 499
501 DISALLOW_COPY_AND_ASSIGN(AutofillTable); 500 DISALLOW_COPY_AND_ASSIGN(AutofillTable);
502 }; 501 };
503 502
504 } // namespace autofill 503 } // namespace autofill
505 504
506 #endif // COMPONENTS_AUTOFILL_CORE_BROWSER_WEBDATA_AUTOFILL_TABLE_H_ 505 #endif // COMPONENTS_AUTOFILL_CORE_BROWSER_WEBDATA_AUTOFILL_TABLE_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698