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 CHROME_BROWSER_CHROMEOS_ATTESTATION_PLATFORM_VERIFICATION_FLOW_H_ | 5 #ifndef CHROME_BROWSER_CHROMEOS_ATTESTATION_PLATFORM_VERIFICATION_FLOW_H_ |
6 #define CHROME_BROWSER_CHROMEOS_ATTESTATION_PLATFORM_VERIFICATION_FLOW_H_ | 6 #define CHROME_BROWSER_CHROMEOS_ATTESTATION_PLATFORM_VERIFICATION_FLOW_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
11 #include "base/callback.h" | 11 #include "base/callback.h" |
12 #include "base/memory/ref_counted.h" | 12 #include "base/memory/ref_counted.h" |
13 #include "base/memory/scoped_ptr.h" | 13 #include "base/memory/scoped_ptr.h" |
14 #include "base/time/time.h" | 14 #include "base/time/time.h" |
15 #include "base/timer/timer.h" | 15 #include "base/timer/timer.h" |
16 #include "url/gurl.h" | 16 #include "url/gurl.h" |
17 | 17 |
18 class HostContentSettingsMap; | 18 class HostContentSettingsMap; |
19 class PrefService; | 19 class PrefService; |
20 | 20 |
21 namespace content { | 21 namespace content { |
22 class WebContents; | 22 class WebContents; |
23 } | 23 } |
24 | 24 |
25 namespace cryptohome { | 25 namespace cryptohome { |
26 class AsyncMethodCaller; | 26 class AsyncMethodCaller; |
27 } | 27 } |
28 | 28 |
| 29 namespace user_manager { |
| 30 class User; |
| 31 } |
| 32 |
29 namespace user_prefs { | 33 namespace user_prefs { |
30 class PrefRegistrySyncable; | 34 class PrefRegistrySyncable; |
31 } | 35 } |
32 | 36 |
33 namespace chromeos { | 37 namespace chromeos { |
34 | 38 |
35 class CryptohomeClient; | 39 class CryptohomeClient; |
36 class UserManager; | 40 class UserManager; |
37 class User; | |
38 | 41 |
39 namespace attestation { | 42 namespace attestation { |
40 | 43 |
41 class AttestationFlow; | 44 class AttestationFlow; |
42 class PlatformVerificationFlowTest; | 45 class PlatformVerificationFlowTest; |
43 | 46 |
44 // This class allows platform verification for the content protection use case. | 47 // This class allows platform verification for the content protection use case. |
45 // All methods must only be called on the UI thread. Example: | 48 // All methods must only be called on the UI thread. Example: |
46 // scoped_refptr<PlatformVerificationFlow> verifier = | 49 // scoped_refptr<PlatformVerificationFlow> verifier = |
47 // new PlatformVerificationFlow(); | 50 // new PlatformVerificationFlow(); |
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
97 | 100 |
98 // Gets prefs associated with the given |web_contents|. If no prefs are | 101 // Gets prefs associated with the given |web_contents|. If no prefs are |
99 // associated with |web_contents| then NULL is returned. | 102 // associated with |web_contents| then NULL is returned. |
100 virtual PrefService* GetPrefs(content::WebContents* web_contents) = 0; | 103 virtual PrefService* GetPrefs(content::WebContents* web_contents) = 0; |
101 | 104 |
102 // Gets the URL associated with the given |web_contents|. | 105 // Gets the URL associated with the given |web_contents|. |
103 virtual const GURL& GetURL(content::WebContents* web_contents) = 0; | 106 virtual const GURL& GetURL(content::WebContents* web_contents) = 0; |
104 | 107 |
105 // Gets the user associated with the given |web_contents|. NULL may be | 108 // Gets the user associated with the given |web_contents|. NULL may be |
106 // returned. | 109 // returned. |
107 virtual User* GetUser(content::WebContents* web_contents) = 0; | 110 virtual user_manager::User* GetUser(content::WebContents* web_contents) = 0; |
108 | 111 |
109 // Gets the content settings map associated with the given |web_contents|. | 112 // Gets the content settings map associated with the given |web_contents|. |
110 virtual HostContentSettingsMap* GetContentSettings( | 113 virtual HostContentSettingsMap* GetContentSettings( |
111 content::WebContents* web_contents) = 0; | 114 content::WebContents* web_contents) = 0; |
112 | 115 |
113 // Returns true iff |web_contents| belongs to a guest or incognito session. | 116 // Returns true iff |web_contents| belongs to a guest or incognito session. |
114 virtual bool IsGuestOrIncognito(content::WebContents* web_contents) = 0; | 117 virtual bool IsGuestOrIncognito(content::WebContents* web_contents) = 0; |
115 }; | 118 }; |
116 | 119 |
117 // This callback will be called when a challenge operation completes. If | 120 // This callback will be called when a challenge operation completes. If |
(...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
270 scoped_ptr<Delegate> default_delegate_; | 273 scoped_ptr<Delegate> default_delegate_; |
271 base::TimeDelta timeout_delay_; | 274 base::TimeDelta timeout_delay_; |
272 | 275 |
273 DISALLOW_COPY_AND_ASSIGN(PlatformVerificationFlow); | 276 DISALLOW_COPY_AND_ASSIGN(PlatformVerificationFlow); |
274 }; | 277 }; |
275 | 278 |
276 } // namespace attestation | 279 } // namespace attestation |
277 } // namespace chromeos | 280 } // namespace chromeos |
278 | 281 |
279 #endif // CHROME_BROWSER_CHROMEOS_ATTESTATION_PLATFORM_VERIFICATION_FLOW_H_ | 282 #endif // CHROME_BROWSER_CHROMEOS_ATTESTATION_PLATFORM_VERIFICATION_FLOW_H_ |
OLD | NEW |