| Index: components/user_manager/known_user.h
|
| diff --git a/components/user_manager/known_user.h b/components/user_manager/known_user.h
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..03528dcd0a614b37b7eaad1e86e9c58b812f54ff
|
| --- /dev/null
|
| +++ b/components/user_manager/known_user.h
|
| @@ -0,0 +1,132 @@
|
| +// Copyright 2015 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +#ifndef COMPONENTS_USER_MANAGER_KNOWN_USER_H_
|
| +#define COMPONENTS_USER_MANAGER_KNOWN_USER_H_
|
| +
|
| +#include <string>
|
| +
|
| +#include "components/user_manager/user_manager_export.h"
|
| +
|
| +class AccountId;
|
| +class PrefRegistrySimple;
|
| +
|
| +namespace base {
|
| +class DictionaryValue;
|
| +class ListValue;
|
| +class TaskRunner;
|
| +}
|
| +
|
| +namespace user_manager {
|
| +namespace known_user {
|
| +// Methods for storage/retrieval of per-user properties in Local State.
|
| +
|
| +// Performs a lookup of properties associated with |account_id|. If found,
|
| +// returns |true| and fills |out_value|. |out_value| can be NULL, if
|
| +// only existence check is required.
|
| +bool USER_MANAGER_EXPORT FindPrefs(const AccountId& account_id,
|
| + const base::DictionaryValue** out_value);
|
| +
|
| +// Updates (or creates) properties associated with |account_id| based
|
| +// on |values|. |clear| defines if existing properties are cleared (|true|)
|
| +// or if it is just a incremental update (|false|).
|
| +void USER_MANAGER_EXPORT UpdatePrefs(const AccountId& account_id,
|
| + const base::DictionaryValue& values,
|
| + bool clear);
|
| +
|
| +// Returns true if |account_id| preference by |path| does exist,
|
| +// fills in |out_value|. Otherwise returns false.
|
| +bool USER_MANAGER_EXPORT GetStringPref(const AccountId& account_id,
|
| + const std::string& path,
|
| + std::string* out_value);
|
| +
|
| +// Updates user's identified by |account_id| string preference |path|.
|
| +void USER_MANAGER_EXPORT SetStringPref(const AccountId& account_id,
|
| + const std::string& path,
|
| + const std::string& in_value);
|
| +
|
| +// Returns true if |account_id| preference by |path| does exist,
|
| +// fills in |out_value|. Otherwise returns false.
|
| +bool USER_MANAGER_EXPORT GetBooleanPref(const AccountId& account_id,
|
| + const std::string& path,
|
| + bool* out_value);
|
| +
|
| +// Updates user's identified by |account_id| boolean preference |path|.
|
| +void USER_MANAGER_EXPORT SetBooleanPref(const AccountId& account_id,
|
| + const std::string& path,
|
| + const bool in_value);
|
| +
|
| +// Returns true if |account_id| preference by |path| does exist,
|
| +// fills in |out_value|. Otherwise returns false.
|
| +bool USER_MANAGER_EXPORT GetIntegerPref(const AccountId& account_id,
|
| + const std::string& path,
|
| + int* out_value);
|
| +
|
| +// Updates user's identified by |account_id| integer preference |path|.
|
| +void USER_MANAGER_EXPORT SetIntegerPref(const AccountId& account_id,
|
| + const std::string& path,
|
| + const int in_value);
|
| +
|
| +// This call forms full account id of a known user by email and (optionally)
|
| +// gaia_id.
|
| +// This is a temporary call while migrating to AccountId.
|
| +AccountId USER_MANAGER_EXPORT GetAccountId(const std::string& user_email,
|
| + const std::string& gaia_id);
|
| +
|
| +// Updates |gaia_id| for user with |account_id|.
|
| +// TODO(alemate): Update this once AccountId contains GAIA ID
|
| +// (crbug.com/548926).
|
| +void USER_MANAGER_EXPORT UpdateGaiaID(const AccountId& account_id,
|
| + const std::string& gaia_id);
|
| +
|
| +// Find GAIA ID for user with |account_id|, fill in |out_value| and return
|
| +// true
|
| +// if GAIA ID was found or false otherwise.
|
| +// TODO(antrim): Update this once AccountId contains GAIA ID
|
| +// (crbug.com/548926).
|
| +bool USER_MANAGER_EXPORT FindGaiaID(const AccountId& account_id,
|
| + std::string* out_value);
|
| +
|
| +// Setter and getter for DeviceId known user string preference.
|
| +void USER_MANAGER_EXPORT SetDeviceId(const AccountId& account_id,
|
| + const std::string& device_id);
|
| +
|
| +std::string USER_MANAGER_EXPORT GetDeviceId(const AccountId& account_id);
|
| +
|
| +// Setter and getter for GAPSCookie known user string preference.
|
| +void USER_MANAGER_EXPORT SetGAPSCookie(const AccountId& account_id,
|
| + const std::string& gaps_cookie);
|
| +
|
| +std::string USER_MANAGER_EXPORT GetGAPSCookie(const AccountId& account_id);
|
| +
|
| +// Saves whether the user authenticates using SAML.
|
| +void USER_MANAGER_EXPORT UpdateUsingSAML(const AccountId& account_id,
|
| + const bool using_saml);
|
| +
|
| +// Returns if SAML needs to be used for authentication of the user with
|
| +// |account_id|, if it is known (was set by a |UpdateUsingSaml| call).
|
| +// Otherwise
|
| +// returns false.
|
| +bool USER_MANAGER_EXPORT IsUsingSAML(const AccountId& account_id);
|
| +
|
| +// Saves why the user has to go through re-auth flow.
|
| +void USER_MANAGER_EXPORT UpdateReauthReason(const AccountId& account_id,
|
| + const int reauth_reason);
|
| +
|
| +// Returns the reason why the user with |account_id| has to go through the
|
| +// re-auth flow. Returns true if such a reason was recorded or false
|
| +// otherwise.
|
| +bool USER_MANAGER_EXPORT FindReauthReason(const AccountId& account_id,
|
| + int* out_value);
|
| +
|
| +// Removes all user preferences associated with |account_id|.
|
| +// (This one used by user_manager only and thus not exported.)
|
| +void RemovePrefs(const AccountId& account_id);
|
| +
|
| +// Register known user prefs.
|
| +void USER_MANAGER_EXPORT RegisterPrefs(PrefRegistrySimple* registry);
|
| +}
|
| +} // namespace user_manager
|
| +
|
| +#endif // COMPONENTS_USER_MANAGER_KNOWN_USER_H_
|
|
|