OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 CHROME_BROWSER_PASSWORD_MANAGER_PASSWORD_STORE_MAC_H_ | 5 #ifndef CHROME_BROWSER_PASSWORD_MANAGER_PASSWORD_STORE_MAC_H_ |
6 #define CHROME_BROWSER_PASSWORD_MANAGER_PASSWORD_STORE_MAC_H_ | 6 #define CHROME_BROWSER_PASSWORD_MANAGER_PASSWORD_STORE_MAC_H_ |
7 | 7 |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "base/callback_forward.h" | 10 #include "base/callback_forward.h" |
(...skipping 19 matching lines...) Expand all Loading... |
30 public: | 30 public: |
31 // Takes ownership of |keychain| and |login_db|, both of which must be | 31 // Takes ownership of |keychain| and |login_db|, both of which must be |
32 // non-NULL. | 32 // non-NULL. |
33 PasswordStoreMac( | 33 PasswordStoreMac( |
34 scoped_refptr<base::SingleThreadTaskRunner> main_thread_runner, | 34 scoped_refptr<base::SingleThreadTaskRunner> main_thread_runner, |
35 scoped_refptr<base::SingleThreadTaskRunner> db_thread_runner, | 35 scoped_refptr<base::SingleThreadTaskRunner> db_thread_runner, |
36 crypto::AppleKeychain* keychain, | 36 crypto::AppleKeychain* keychain, |
37 password_manager::LoginDatabase* login_db); | 37 password_manager::LoginDatabase* login_db); |
38 | 38 |
39 // Initializes |thread_|. | 39 // Initializes |thread_|. |
40 virtual bool Init( | 40 bool Init(const syncer::SyncableService::StartSyncFlare& flare, |
41 const syncer::SyncableService::StartSyncFlare& flare, | 41 const std::string& sync_username) override; |
42 const std::string& sync_username) override; | |
43 | 42 |
44 // Stops |thread_|. | 43 // Stops |thread_|. |
45 virtual void Shutdown() override; | 44 void Shutdown() override; |
46 | 45 |
47 protected: | 46 protected: |
48 virtual ~PasswordStoreMac(); | 47 ~PasswordStoreMac() override; |
49 | 48 |
50 virtual scoped_refptr<base::SingleThreadTaskRunner> | 49 scoped_refptr<base::SingleThreadTaskRunner> GetBackgroundTaskRunner() |
51 GetBackgroundTaskRunner() override; | 50 override; |
52 | 51 |
53 private: | 52 private: |
54 virtual void ReportMetricsImpl(const std::string& sync_username) override; | 53 void ReportMetricsImpl(const std::string& sync_username) override; |
55 virtual password_manager::PasswordStoreChangeList AddLoginImpl( | 54 password_manager::PasswordStoreChangeList AddLoginImpl( |
56 const autofill::PasswordForm& form) override; | 55 const autofill::PasswordForm& form) override; |
57 virtual password_manager::PasswordStoreChangeList UpdateLoginImpl( | 56 password_manager::PasswordStoreChangeList UpdateLoginImpl( |
58 const autofill::PasswordForm& form) override; | 57 const autofill::PasswordForm& form) override; |
59 virtual password_manager::PasswordStoreChangeList RemoveLoginImpl( | 58 password_manager::PasswordStoreChangeList RemoveLoginImpl( |
60 const autofill::PasswordForm& form) override; | 59 const autofill::PasswordForm& form) override; |
61 virtual password_manager::PasswordStoreChangeList | 60 password_manager::PasswordStoreChangeList RemoveLoginsCreatedBetweenImpl( |
62 RemoveLoginsCreatedBetweenImpl(base::Time delete_begin, | 61 base::Time delete_begin, |
63 base::Time delete_end) override; | 62 base::Time delete_end) override; |
64 virtual password_manager::PasswordStoreChangeList | 63 password_manager::PasswordStoreChangeList RemoveLoginsSyncedBetweenImpl( |
65 RemoveLoginsSyncedBetweenImpl(base::Time delete_begin, | 64 base::Time delete_begin, |
66 base::Time delete_end) override; | 65 base::Time delete_end) override; |
67 virtual void GetLoginsImpl( | 66 void GetLoginsImpl(const autofill::PasswordForm& form, |
68 const autofill::PasswordForm& form, | 67 AuthorizationPromptPolicy prompt_policy, |
69 AuthorizationPromptPolicy prompt_policy, | 68 const ConsumerCallbackRunner& callback_runner) override; |
70 const ConsumerCallbackRunner& callback_runner) override; | 69 void GetAutofillableLoginsImpl(GetLoginsRequest* request) override; |
71 virtual void GetAutofillableLoginsImpl(GetLoginsRequest* request) override; | 70 void GetBlacklistLoginsImpl(GetLoginsRequest* request) override; |
72 virtual void GetBlacklistLoginsImpl(GetLoginsRequest* request) override; | 71 bool FillAutofillableLogins( |
73 virtual bool FillAutofillableLogins( | |
74 std::vector<autofill::PasswordForm*>* forms) override; | 72 std::vector<autofill::PasswordForm*>* forms) override; |
75 virtual bool FillBlacklistLogins( | 73 bool FillBlacklistLogins( |
76 std::vector<autofill::PasswordForm*>* forms) override; | 74 std::vector<autofill::PasswordForm*>* forms) override; |
77 | 75 |
78 // Adds the given form to the Keychain if it's something we want to store | 76 // Adds the given form to the Keychain if it's something we want to store |
79 // there (i.e., not a blacklist entry). Returns true if the operation | 77 // there (i.e., not a blacklist entry). Returns true if the operation |
80 // succeeded (either we added successfully, or we didn't need to). | 78 // succeeded (either we added successfully, or we didn't need to). |
81 bool AddToKeychainIfNecessary(const autofill::PasswordForm& form); | 79 bool AddToKeychainIfNecessary(const autofill::PasswordForm& form); |
82 | 80 |
83 // Returns true if our database contains a form that exactly matches the given | 81 // Returns true if our database contains a form that exactly matches the given |
84 // keychain form. | 82 // keychain form. |
85 bool DatabaseHasFormMatchingKeychainForm( | 83 bool DatabaseHasFormMatchingKeychainForm( |
(...skipping 15 matching lines...) Expand all Loading... |
101 scoped_ptr<crypto::AppleKeychain> keychain_; | 99 scoped_ptr<crypto::AppleKeychain> keychain_; |
102 scoped_ptr<password_manager::LoginDatabase> login_metadata_db_; | 100 scoped_ptr<password_manager::LoginDatabase> login_metadata_db_; |
103 | 101 |
104 // Thread that the synchronous methods are run on. | 102 // Thread that the synchronous methods are run on. |
105 scoped_ptr<base::Thread> thread_; | 103 scoped_ptr<base::Thread> thread_; |
106 | 104 |
107 DISALLOW_COPY_AND_ASSIGN(PasswordStoreMac); | 105 DISALLOW_COPY_AND_ASSIGN(PasswordStoreMac); |
108 }; | 106 }; |
109 | 107 |
110 #endif // CHROME_BROWSER_PASSWORD_MANAGER_PASSWORD_STORE_MAC_H_ | 108 #endif // CHROME_BROWSER_PASSWORD_MANAGER_PASSWORD_STORE_MAC_H_ |
OLD | NEW |