Index: chrome/browser/signin/easy_unlock_service_signin_chromeos.h |
diff --git a/chrome/browser/signin/easy_unlock_service_signin_chromeos.h b/chrome/browser/signin/easy_unlock_service_signin_chromeos.h |
index ef2f7cfa3207e8e9cc63abca1744ed10ec8b438b..980afc5169d422c691d833294b4f0cc0a15f147e 100644 |
--- a/chrome/browser/signin/easy_unlock_service_signin_chromeos.h |
+++ b/chrome/browser/signin/easy_unlock_service_signin_chromeos.h |
@@ -8,14 +8,24 @@ |
#include <string> |
#include "base/macros.h" |
+#include "base/memory/scoped_ptr.h" |
+#include "base/memory/weak_ptr.h" |
+#include "chrome/browser/chromeos/login/easy_unlock/easy_unlock_types.h" |
#include "chrome/browser/signin/easy_unlock_service.h" |
+namespace base { |
+class DictionaryValue; |
+class ListValue; |
+} |
+ |
// EasyUnlockService instance that should be used for signin profile. |
class EasyUnlockServiceSignin : public EasyUnlockService { |
public: |
explicit EasyUnlockServiceSignin(Profile* profile); |
virtual ~EasyUnlockServiceSignin(); |
+ void SetAssociatedUser(const std::string& user_id); |
+ |
private: |
// EasyUnlockService implementation: |
virtual EasyUnlockService::Type GetType() const OVERRIDE; |
@@ -30,9 +40,27 @@ class EasyUnlockServiceSignin : public EasyUnlockService { |
virtual void RunTurnOffFlow() OVERRIDE; |
virtual void ResetTurnOffFlow() OVERRIDE; |
virtual TurnOffFlowStatus GetTurnOffFlowStatus() const OVERRIDE; |
+ virtual std::string GetChallenge() const OVERRIDE; |
virtual bool IsAllowedInternal() OVERRIDE; |
virtual void InitializeInternal() OVERRIDE; |
+ // Fetches |remote_devices_| info from cryptohome keys. |
+ void FetchCryptohomeKeys(); |
+ |
+ // Callback invoked when the cryptohome keys are fetched. |
+ void OnCryptohomeKeysFetched( |
+ bool success, |
+ const chromeos::EasyUnlockDeviceKeyDataList& devices); |
+ |
+ // User id of the associated user. |
+ std::string user_id_; |
+ |
+ // Remote devices of the associated user. |
+ chromeos::EasyUnlockDeviceKeyDataList remote_devices_; |
+ scoped_ptr<base::ListValue> remote_devices_value_; |
+ |
+ base::WeakPtrFactory<EasyUnlockServiceSignin> weak_ptr_factory_; |
+ |
DISALLOW_COPY_AND_ASSIGN(EasyUnlockServiceSignin); |
}; |