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

Side by Side Diff: components/password_manager/core/browser/affiliated_match_helper.h

Issue 2657013002: Introduce ThreadTaskRunnerHandle::OverrideForTesting and TestMockTimeTaskRunner::ScopedContext. (Closed)
Patch Set: fix RecentTabHelperTest crash? Created 3 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
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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_PASSWORD_MANAGER_CORE_BROWSER_AFFILIATED_MATCH_HELPER_H_ 5 #ifndef COMPONENTS_PASSWORD_MANAGER_CORE_BROWSER_AFFILIATED_MATCH_HELPER_H_
6 #define COMPONENTS_PASSWORD_MANAGER_CORE_BROWSER_AFFILIATED_MATCH_HELPER_H_ 6 #define COMPONENTS_PASSWORD_MANAGER_CORE_BROWSER_AFFILIATED_MATCH_HELPER_H_
7 7
8 #include <stdint.h>
9
10 #include <memory> 8 #include <memory>
11 #include <string> 9 #include <string>
12 #include <vector> 10 #include <vector>
13 11
14 #include "base/callback_forward.h" 12 #include "base/callback_forward.h"
15 #include "base/macros.h" 13 #include "base/macros.h"
16 #include "base/memory/ref_counted.h" 14 #include "base/memory/ref_counted.h"
15 #include "base/time/time.h"
17 #include "components/password_manager/core/browser/affiliation_utils.h" 16 #include "components/password_manager/core/browser/affiliation_utils.h"
18 #include "components/password_manager/core/browser/password_store.h" 17 #include "components/password_manager/core/browser/password_store.h"
19 #include "components/password_manager/core/browser/password_store_consumer.h" 18 #include "components/password_manager/core/browser/password_store_consumer.h"
20 19
21 namespace autofill { 20 namespace autofill {
22 struct PasswordForm; 21 struct PasswordForm;
23 } // namespace autofill 22 } // namespace autofill
24 23
25 namespace password_manager { 24 namespace password_manager {
26 25
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
93 // Removes cached affiliation data that is no longer needed. 92 // Removes cached affiliation data that is no longer needed.
94 void TrimAffiliationCache(); 93 void TrimAffiliationCache();
95 94
96 // Returns whether or not |form| represents an Android credential. 95 // Returns whether or not |form| represents an Android credential.
97 static bool IsValidAndroidCredential(const PasswordStore::FormDigest& form); 96 static bool IsValidAndroidCredential(const PasswordStore::FormDigest& form);
98 97
99 // Returns whether or not |form| represents a valid Web credential for the 98 // Returns whether or not |form| represents a valid Web credential for the
100 // purposes of affiliation-based matching. 99 // purposes of affiliation-based matching.
101 static bool IsValidWebCredential(const PasswordStore::FormDigest& form); 100 static bool IsValidWebCredential(const PasswordStore::FormDigest& form);
102 101
103 // Sets the task runner to be used to delay I/O heavy initialization. Should
104 // be called before Initialize(). Used only for testing.
105 void SetTaskRunnerUsedForWaitingForTesting(
106 const scoped_refptr<base::SingleThreadTaskRunner> task_runner);
107
108 // I/O heavy initialization on start-up will be delayed by this long. 102 // I/O heavy initialization on start-up will be delayed by this long.
109 // This should be high enough not to exacerbate start-up I/O contention too 103 // This should be high enough not to exacerbate start-up I/O contention too
110 // much, but also low enough that the user be able log-in shortly after 104 // much, but also low enough that the user be able log-in shortly after
111 // browser start-up into web sites using Android credentials. 105 // browser start-up into web sites using Android credentials.
112 // TODO(engedy): See if we can tie this instead to some meaningful event. 106 // TODO(engedy): See if we can tie this instead to some meaningful event.
113 static const int64_t kInitializationDelayOnStartupInSeconds = 8; 107 static constexpr base::TimeDelta kInitializationDelayOnStartup =
108 base::TimeDelta::FromSeconds(8);
114 109
115 private: 110 private:
116 // Reads all autofillable credentials from the password store and starts 111 // Reads all autofillable credentials from the password store and starts
117 // observing the store for future changes. 112 // observing the store for future changes.
118 void DoDeferredInitialization(); 113 void DoDeferredInitialization();
119 114
120 // Called back by AffiliationService to supply the list of facets affiliated 115 // Called back by AffiliationService to supply the list of facets affiliated
121 // with |original_facet_uri| so that a GetAffiliatedAndroidRealms() call can 116 // with |original_facet_uri| so that a GetAffiliatedAndroidRealms() call can
122 // be completed. 117 // be completed.
123 void CompleteGetAffiliatedAndroidRealms( 118 void CompleteGetAffiliatedAndroidRealms(
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
156 std::unique_ptr<AffiliationService> affiliation_service_; 151 std::unique_ptr<AffiliationService> affiliation_service_;
157 152
158 base::WeakPtrFactory<AffiliatedMatchHelper> weak_ptr_factory_; 153 base::WeakPtrFactory<AffiliatedMatchHelper> weak_ptr_factory_;
159 154
160 DISALLOW_COPY_AND_ASSIGN(AffiliatedMatchHelper); 155 DISALLOW_COPY_AND_ASSIGN(AffiliatedMatchHelper);
161 }; 156 };
162 157
163 } // namespace password_manager 158 } // namespace password_manager
164 159
165 #endif // COMPONENTS_PASSWORD_MANAGER_CORE_BROWSER_AFFILIATED_MATCH_HELPER_H_ 160 #endif // COMPONENTS_PASSWORD_MANAGER_CORE_BROWSER_AFFILIATED_MATCH_HELPER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698