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

Unified Diff: chrome/browser/password_manager/password_store_proxy_mac.h

Issue 2909283002: Delete PasswordStoreMac and SimplePasswordStoreMac. (Closed)
Patch Set: test Created 3 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/password_manager/password_store_proxy_mac.h
diff --git a/chrome/browser/password_manager/password_store_proxy_mac.h b/chrome/browser/password_manager/password_store_proxy_mac.h
index 801f81316b58301788f48133e0286b4f5dff9e58..23460eaec914ed546024e7d09212d363b051d8ae 100644
--- a/chrome/browser/password_manager/password_store_proxy_mac.h
+++ b/chrome/browser/password_manager/password_store_proxy_mac.h
@@ -5,39 +5,27 @@
#ifndef CHROME_BROWSER_PASSWORD_MANAGER_PASSWORD_STORE_PROXY_MAC_H_
#define CHROME_BROWSER_PASSWORD_MANAGER_PASSWORD_STORE_PROXY_MAC_H_
-#include <string>
-#include <vector>
+#include <memory>
#include "base/macros.h"
-#include "base/single_thread_task_runner.h"
#include "base/threading/thread.h"
#include "components/password_manager/core/browser/keychain_migration_status_mac.h"
-#include "components/password_manager/core/browser/password_store.h"
-#include "components/password_manager/core/common/password_manager_pref_names.h"
+#include "components/password_manager/core/browser/password_store_default.h"
#include "components/prefs/pref_member.h"
-namespace crypto {
-class AppleKeychain;
-}
-
namespace password_manager {
class LoginDatabase;
}
-class SimplePasswordStoreMac;
-
-// The class is a proxy for either PasswordStoreMac or SimplePasswordStoreMac.
-// It is responsible for performing migration from PasswordStoreMac to
-// SimplePasswordStoreMac and instantiating a correct backend according to the
-// user's state.
-class PasswordStoreProxyMac : public password_manager::PasswordStore {
+// Password store for Mac. It creates a dedicated background thread
+class PasswordStoreProxyMac : public password_manager::PasswordStoreDefault {
public:
PasswordStoreProxyMac(
scoped_refptr<base::SingleThreadTaskRunner> main_thread_runner,
- std::unique_ptr<crypto::AppleKeychain> keychain,
std::unique_ptr<password_manager::LoginDatabase> login_db,
PrefService* prefs);
+ // PasswordStore:
bool Init(const syncer::SyncableService::StartSyncFlare& flare,
PrefService* prefs) override;
void ShutdownOnUIThread() override;
@@ -45,94 +33,23 @@ class PasswordStoreProxyMac : public password_manager::PasswordStore {
override;
#if defined(UNIT_TEST)
- password_manager::LoginDatabase* login_metadata_db() {
- return login_metadata_db_.get();
- }
-
- crypto::AppleKeychain* keychain() {
- return keychain_.get();
- }
+ password_manager::LoginDatabase* login_metadata_db() { return login_db(); }
#endif
private:
~PasswordStoreProxyMac() override;
- password_manager::PasswordStore* GetBackend() const;
-
- // Opens LoginDatabase on the background |thread_|.
void InitOnBackgroundThread(password_manager::MigrationStatus status);
// Writes status to the prefs.
void UpdateStatusPref(password_manager::MigrationStatus status);
- // Executes |pending_ui_tasks_| on the UI thread.
- void FlushPendingTasks();
-
- // PasswordStore:
- void ReportMetricsImpl(const std::string& sync_username,
- bool custom_passphrase_sync_enabled) override;
- password_manager::PasswordStoreChangeList AddLoginImpl(
- const autofill::PasswordForm& form) override;
- password_manager::PasswordStoreChangeList UpdateLoginImpl(
- const autofill::PasswordForm& form) override;
- password_manager::PasswordStoreChangeList RemoveLoginImpl(
- const autofill::PasswordForm& form) override;
- password_manager::PasswordStoreChangeList RemoveLoginsByURLAndTimeImpl(
- const base::Callback<bool(const GURL&)>& url_filter,
- base::Time delete_begin,
- base::Time delete_end) override;
- password_manager::PasswordStoreChangeList RemoveLoginsCreatedBetweenImpl(
- base::Time delete_begin,
- base::Time delete_end) override;
- password_manager::PasswordStoreChangeList RemoveLoginsSyncedBetweenImpl(
- base::Time delete_begin,
- base::Time delete_end) override;
- password_manager::PasswordStoreChangeList DisableAutoSignInForOriginsImpl(
- const base::Callback<bool(const GURL&)>& origin_filter) override;
- bool RemoveStatisticsByOriginAndTimeImpl(
- const base::Callback<bool(const GURL&)>& origin_filter,
- base::Time delete_begin,
- base::Time delete_end) override;
- std::vector<std::unique_ptr<autofill::PasswordForm>> FillMatchingLogins(
- const FormDigest& form) override;
- std::vector<std::unique_ptr<autofill::PasswordForm>>
- FillLoginsForSameOrganizationName(const std::string& signon_realm) override;
- bool FillAutofillableLogins(
- std::vector<std::unique_ptr<autofill::PasswordForm>>* forms) override;
- bool FillBlacklistLogins(
- std::vector<std::unique_ptr<autofill::PasswordForm>>* forms) override;
- void AddSiteStatsImpl(
- const password_manager::InteractionsStats& stats) override;
- void RemoveSiteStatsImpl(const GURL& origin_domain) override;
- std::vector<password_manager::InteractionsStats> GetAllSiteStatsImpl()
- override;
- std::vector<password_manager::InteractionsStats> GetSiteStatsImpl(
- const GURL& origin_domain) override;
-
- scoped_refptr<SimplePasswordStoreMac> password_store_simple_;
-
- // The login metadata SQL database. If opening the DB on |thread_| fails,
- // |login_metadata_db_| will be reset to NULL for the lifetime of |this|.
- // The ownership may be transferred to |password_store_simple_|.
- std::unique_ptr<password_manager::LoginDatabase> login_metadata_db_;
-
- // Keychain wrapper.
- const std::unique_ptr<crypto::AppleKeychain> keychain_;
-
// Thread that the synchronous methods are run on.
std::unique_ptr<base::Thread> thread_;
// Current migration status for the profile.
IntegerPrefMember migration_status_;
- // List of tasks filled by InitOnBackgroundThread. They can't be just posted
- // to the UI thread because the message loop can shut down before executing
- // them. If this is the case then Shutdown() flushes the tasks after stopping
- // the background thread.
- // After InitOnBackgroundThread is run once, the queue may not be modified on
- // the background thread any more.
- std::vector<base::Closure> pending_ui_tasks_;
-
DISALLOW_COPY_AND_ASSIGN(PasswordStoreProxyMac);
};

Powered by Google App Engine
This is Rietveld 408576698