OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 // The signin manager encapsulates some functionality tracking | 5 // The signin manager encapsulates some functionality tracking |
6 // which user is signed in. See SigninManagerBase for full description of | 6 // which user is signed in. See SigninManagerBase for full description of |
7 // responsibilities. The class defined in this file provides functionality | 7 // responsibilities. The class defined in this file provides functionality |
8 // required by all platforms except Chrome OS. | 8 // required by all platforms except Chrome OS. |
9 // | 9 // |
10 // When a user is signed in, a ClientLogin request is run on their behalf. | 10 // When a user is signed in, a ClientLogin request is run on their behalf. |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
48 class SigninManager : public SigninManagerBase, | 48 class SigninManager : public SigninManagerBase, |
49 public AccountTrackerService::Observer, | 49 public AccountTrackerService::Observer, |
50 public MergeSessionHelper::Observer { | 50 public MergeSessionHelper::Observer { |
51 public: | 51 public: |
52 // The callback invoked once the OAuth token has been fetched during signin, | 52 // The callback invoked once the OAuth token has been fetched during signin, |
53 // but before the profile transitions to the "signed-in" state. This allows | 53 // but before the profile transitions to the "signed-in" state. This allows |
54 // callers to load policy and prompt the user appropriately before completing | 54 // callers to load policy and prompt the user appropriately before completing |
55 // signin. The callback is passed the just-fetched OAuth login refresh token. | 55 // signin. The callback is passed the just-fetched OAuth login refresh token. |
56 typedef base::Callback<void(const std::string&)> OAuthTokenFetchedCallback; | 56 typedef base::Callback<void(const std::string&)> OAuthTokenFetchedCallback; |
57 | 57 |
58 // Returns true if |url| is a web signin URL and should be hosted in an | |
59 // isolated, privileged signin process. | |
60 static bool IsWebBasedSigninFlowURL(const GURL& url); | |
61 | |
62 // This is used to distinguish URLs belonging to the special web signin flow | 58 // This is used to distinguish URLs belonging to the special web signin flow |
63 // running in the special signin process from other URLs on the same domain. | 59 // running in the special signin process from other URLs on the same domain. |
64 // We do not grant WebUI privilieges / bindings to this process or to URLs of | 60 // We do not grant WebUI privilieges / bindings to this process or to URLs of |
65 // this scheme; enforcement of privileges is handled separately by | 61 // this scheme; enforcement of privileges is handled separately by |
66 // OneClickSigninHelper. | 62 // OneClickSigninHelper. |
67 static const char kChromeSigninEffectiveSite[]; | 63 static const char kChromeSigninEffectiveSite[]; |
68 | 64 |
69 SigninManager(SigninClient* client, | 65 SigninManager(SigninClient* client, |
70 ProfileOAuth2TokenService* token_service, | 66 ProfileOAuth2TokenService* token_service, |
71 AccountTrackerService* account_tracker_service); | 67 AccountTrackerService* account_tracker_service); |
(...skipping 175 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
247 bool user_info_fetched_by_account_tracker_; | 243 bool user_info_fetched_by_account_tracker_; |
248 | 244 |
249 base::WeakPtrFactory<SigninManager> weak_pointer_factory_; | 245 base::WeakPtrFactory<SigninManager> weak_pointer_factory_; |
250 | 246 |
251 DISALLOW_COPY_AND_ASSIGN(SigninManager); | 247 DISALLOW_COPY_AND_ASSIGN(SigninManager); |
252 }; | 248 }; |
253 | 249 |
254 #endif // !defined(OS_CHROMEOS) | 250 #endif // !defined(OS_CHROMEOS) |
255 | 251 |
256 #endif // COMPONENTS_SIGNIN_CORE_BROWSER_SIGNIN_MANAGER_H_ | 252 #endif // COMPONENTS_SIGNIN_CORE_BROWSER_SIGNIN_MANAGER_H_ |
OLD | NEW |