public class ParseUser extends ParseObject
ParseUser
is a local representation of user data that can be saved and retrieved from
the Parse cloud.DEFAULT_PIN
Constructor and Description |
---|
ParseUser()
Constructs a new ParseUser with no data in it.
|
Modifier and Type | Method and Description |
---|---|
static ParseUser |
become(String sessionToken)
Authorize a user with a session token.
|
static Task<ParseUser> |
becomeInBackground(String sessionToken)
Authorize a user with a session token.
|
static void |
becomeInBackground(String sessionToken,
LogInCallback callback)
Authorize a user with a session token.
|
static void |
enableAutomaticUser()
Enables automatic creation of anonymous users.
|
static Task<Void> |
enableRevocableSessionInBackground()
Enables revocable sessions.
|
ParseUser |
fetch()
Fetches this object with the data from the server.
|
ParseUser |
fetchIfNeeded()
If this
ParseObject has not been fetched (i.e. |
static ParseUser |
getCurrentUser()
This retrieves the currently logged in ParseUser with a valid session, either from memory or
disk if necessary.
|
String |
getEmail()
Retrieves the email address.
|
static ParseQuery<ParseUser> |
getQuery()
Constructs a query for
ParseUser . |
String |
getSessionToken() |
String |
getUsername()
Retrieves the username.
|
boolean |
isAuthenticated()
Whether the ParseUser has been authenticated on this device.
|
boolean |
isLinked(String authType)
Indicates whether this user is linked with a third party authentication source.
|
boolean |
isNew()
Indicates whether this
ParseUser was created during this session through a call to
ParseUser.signUp() or by logging in with a linked service such as Facebook. |
Task<Void> |
linkWithInBackground(String authType,
Map<String,String> authData)
Links this user to a third party authentication source.
|
static ParseUser |
logIn(String username,
String password)
Logs in a user with a username and password.
|
static Task<ParseUser> |
logInInBackground(String username,
String password)
Logs in a user with a username and password.
|
static void |
logInInBackground(String username,
String password,
LogInCallback callback)
Logs in a user with a username and password.
|
static Task<ParseUser> |
logInWithInBackground(String authType,
Map<String,String> authData)
Logs in a user with third party authentication credentials.
|
static void |
logOut()
Logs out the currently logged in user session.
|
static Task<Void> |
logOutInBackground()
Logs out the currently logged in user session.
|
static void |
logOutInBackground(LogOutCallback callback)
Logs out the currently logged in user session.
|
void |
put(String key,
Object value)
Add a key-value pair to this object.
|
static void |
registerAuthenticationCallback(String authType,
AuthenticationCallback callback)
Registers a third party authentication callback.
|
void |
remove(String key)
Removes a key from this object's data if it exists.
|
static void |
requestPasswordReset(String email)
Requests a password reset email to be sent to the specified email address associated with the
user account.
|
static Task<Void> |
requestPasswordResetInBackground(String email)
Requests a password reset email to be sent in a background thread to the specified email
address associated with the user account.
|
static void |
requestPasswordResetInBackground(String email,
RequestPasswordResetCallback callback)
Requests a password reset email to be sent in a background thread to the specified email
address associated with the user account.
|
void |
setEmail(String email)
Sets the email address.
|
void |
setPassword(String password)
Sets the password.
|
void |
setUsername(String username)
Sets the username.
|
void |
signUp()
Signs up a new user.
|
Task<Void> |
signUpInBackground()
Signs up a new user.
|
void |
signUpInBackground(SignUpCallback callback)
Signs up a new user.
|
Task<Void> |
unlinkFromInBackground(String authType)
Unlinks this user from a third party authentication source.
|
add, addAll, addAllUnique, addUnique, containsKey, create, create, createWithoutData, createWithoutData, delete, deleteAll, deleteAllInBackground, deleteAllInBackground, deleteEventually, deleteEventually, deleteInBackground, deleteInBackground, fetchAll, fetchAllIfNeeded, fetchAllIfNeededInBackground, fetchAllIfNeededInBackground, fetchAllInBackground, fetchAllInBackground, fetchFromLocalDatastore, fetchFromLocalDatastoreInBackground, fetchIfNeededInBackground, fetchIfNeededInBackground, fetchInBackground, fetchInBackground, get, getACL, getBoolean, getBytes, getClassName, getCreatedAt, getDate, getDouble, getInt, getJSONArray, getJSONObject, getList, getLong, getMap, getNumber, getObjectId, getParseFile, getParseGeoPoint, getParseObject, getParseUser, getRelation, getString, getUpdatedAt, has, hasSameId, increment, increment, isDataAvailable, isDirty, isDirty, keySet, pin, pin, pinAll, pinAll, pinAllInBackground, pinAllInBackground, pinAllInBackground, pinAllInBackground, pinInBackground, pinInBackground, pinInBackground, pinInBackground, refresh, refreshInBackground, registerSubclass, removeAll, revert, revert, save, saveAll, saveAllInBackground, saveAllInBackground, saveEventually, saveEventually, saveInBackground, saveInBackground, setACL, setObjectId, unpin, unpin, unpinAll, unpinAll, unpinAll, unpinAll, unpinAllInBackground, unpinAllInBackground, unpinAllInBackground, unpinAllInBackground, unpinAllInBackground, unpinAllInBackground, unpinAllInBackground, unpinAllInBackground, unpinInBackground, unpinInBackground, unpinInBackground, unpinInBackground
public ParseUser()
ParseUser.signUp()
is called.public static ParseQuery<ParseUser> getQuery()
ParseUser
.ParseQuery.getQuery(Class)
public boolean isAuthenticated()
public void remove(String key)
ParseObject
remove
in class ParseObject
key
- The key to remove.public String getSessionToken()
public void setUsername(String username)
username
- The username to set.public String getUsername()
public void setPassword(String password)
password
- The password to set.public void setEmail(String email)
email
- The email address to set.public String getEmail()
public boolean isNew()
ParseUser
was created during this session through a call to
ParseUser.signUp()
or by logging in with a linked service such as Facebook.public void put(String key, Object value)
ParseObject
camelCaseLikeThis
.put
in class ParseObject
key
- Keys must be alphanumerical plus underscore, and start with a letter.value
- Values may be numerical, String
, JSONObject
, JSONArray
,
JSONObject.NULL
, or other ParseObject
s. value may not be null
.public ParseUser fetch() throws ParseException
ParseObject
fetch
in class ParseObject
ParseObject
that was fetched.ParseException
- Throws an exception if the server is inaccessible.public Task<Void> signUpInBackground()
ParseObject.save()
for new ParseUsers. This
will create a new ParseUser on the server, and also persist the session on disk so that you can
access the user using ParseUser.getCurrentUser()
.
A username and password must be set before calling signUp.
This is preferable to using ParseUser.signUp()
, unless your code is already running from a
background thread.public void signUp() throws ParseException
ParseObject.save()
for new ParseUsers. This
will create a new ParseUser on the server, and also persist the session on disk so that you can
access the user using ParseUser.getCurrentUser()
.
A username and password must be set before calling signUp.
Typically, you should use ParseUser.signUpInBackground()
instead of this, unless you are managing
your own threading.ParseException
- Throws an exception if the server is inaccessible, or if the username has already
been taken.public void signUpInBackground(SignUpCallback callback)
ParseObject.save()
for new ParseUsers. This
will create a new ParseUser on the server, and also persist the session on disk so that you can
access the user using ParseUser.getCurrentUser()
.
A username and password must be set before calling signUp.
This is preferable to using ParseUser.signUp()
, unless your code is already running from a
background thread.callback
- callback.done(user, e) is called when the signUp completes.public static Task<ParseUser> logInInBackground(String username, String password)
ParseUser.getCurrentUser()
.
This is preferable to using ParseUser.logIn(java.lang.String, java.lang.String)
, unless your code is already running from a
background thread.username
- The username to log in with.password
- The password to log in with.public static ParseUser logIn(String username, String password) throws ParseException
ParseUser.getCurrentUser()
.
Typically, you should use ParseUser.logInInBackground(java.lang.String, java.lang.String)
instead of this, unless you are managing
your own threading.username
- The username to log in with.password
- The password to log in with.ParseException
- Throws an exception if the login was unsuccessful.public static void logInInBackground(String username, String password, LogInCallback callback)
ParseUser.getCurrentUser()
.
This is preferable to using ParseUser.logIn(java.lang.String, java.lang.String)
, unless your code is already running from a
background thread.username
- The username to log in with.password
- The password to log in with.callback
- callback.done(user, e) is called when the login completes.public static Task<ParseUser> becomeInBackground(String sessionToken)
ParseUser.getCurrentUser()
.
This is preferable to using ParseUser.become(java.lang.String)
, unless your code is already running from a
background thread.sessionToken
- The session token to authorize with.public static ParseUser become(String sessionToken) throws ParseException
ParseUser.getCurrentUser()
.
Typically, you should use ParseUser.becomeInBackground(java.lang.String)
instead of this, unless you are managing
your own threading.sessionToken
- The session token to authorize with.ParseException
- Throws an exception if the authorization was unsuccessful.public static void becomeInBackground(String sessionToken, LogInCallback callback)
ParseUser.getCurrentUser()
.
This is preferable to using ParseUser.become(java.lang.String)
, unless your code is already running from a
background thread.sessionToken
- The session token to authorize with.callback
- callback.done(user, e) is called when the authorization completes.public static ParseUser getCurrentUser()
public static Task<Void> logOutInBackground()
ParseUser.getCurrentUser()
will return null
.
This is preferable to using ParseUser.logOut()
, unless your code is already running from a
background thread.public static void logOutInBackground(LogOutCallback callback)
ParseUser.getCurrentUser()
will return null
.
This is preferable to using ParseUser.logOut()
, unless your code is already running from a
background thread.public static void logOut()
ParseUser.getCurrentUser()
will return null
.
Typically, you should use ParseUser.logOutInBackground()
instead of this, unless you are
managing your own threading.
Note:: Any errors in the log out flow will be swallowed due to
backward-compatibility reasons. Please use ParseUser.logOutInBackground()
if you'd wish to
handle them.public static Task<Void> requestPasswordResetInBackground(String email)
ParseUser.requestPasswordReset(String)
, unless your code is already
running from a background thread.email
- The email address associated with the user that forgot their password.public static void requestPasswordReset(String email) throws ParseException
ParseUser.requestPasswordResetInBackground(java.lang.String)
instead of this, unless you
are managing your own threading.email
- The email address associated with the user that forgot their password.ParseException
- Throws an exception if the server is inaccessible, or if an account with that email
doesn't exist.public static void requestPasswordResetInBackground(String email, RequestPasswordResetCallback callback)
ParseUser.requestPasswordReset(String)
, unless your code is already
running from a background thread.email
- The email address associated with the user that forgot their password.callback
- callback.done(e) is called when the request completes.public ParseUser fetchIfNeeded() throws ParseException
ParseObject
ParseObject
has not been fetched (i.e. ParseObject.isDataAvailable()
returns false
),
fetches this object with the data from the server.fetchIfNeeded
in class ParseObject
ParseObject
.ParseException
- Throws an exception if the server is inaccessible.public static void registerAuthenticationCallback(String authType, AuthenticationCallback callback)
authType
- The name of the third party authentication source.callback
- The third party authentication callback to be registered.AuthenticationCallback
public static Task<ParseUser> logInWithInBackground(String authType, Map<String,String> authData)
authType
- The name of the third party authentication source.authData
- The user credentials of the third party authentication source.Task
is resolved when logging in completes.AuthenticationCallback
public boolean isLinked(String authType)
authType
- The name of the third party authentication source.true
if linked, otherwise false
.AuthenticationCallback
public Task<Void> linkWithInBackground(String authType, Map<String,String> authData)
authType
- The name of the third party authentication source.authData
- The user credentials of the third party authentication source.Task
is resolved when linking completes.AuthenticationCallback
public Task<Void> unlinkFromInBackground(String authType)
authType
- The name of the third party authentication source.Task
is resolved when unlinking completes.AuthenticationCallback
public static void enableAutomaticUser()
ParseUser.getCurrentUser()
will always have a value. The user will only be created on the server
once the user has been saved, or once an object with a relation to that user or an ACL that
refers to the user has been saved.
Note: ParseObject.saveEventually()
will not work if an item being
saved has a relation to an automatic user that has never been saved.public static Task<Void> enableRevocableSessionInBackground()
ParseSession
APIs and do not have revocable sessions enabled in your application
settings on parse.com.
Upon successful completion of this Task
, ParseSession
APIs will be available
for use.Task
that will resolve when enabling revocable session