Example #1
0
 /// <summary>
 /// Logs in a user with a username and password. On success, this saves the session to disk so you
 /// can retrieve the currently logged in user using <see cref="GetCurrentUser()"/>.
 /// </summary>
 /// <param name="sessionToken">The session token to authorize with</param>
 /// <param name="cancellationToken">The cancellation token.</param>
 /// <returns>The user if authorization was successful</returns>
 public static Task <ParseUser> BecomeAsync(this IServiceHub serviceHub, string sessionToken, CancellationToken cancellationToken = default) => serviceHub.UserController.GetUserAsync(sessionToken, serviceHub, cancellationToken).OnSuccess(t =>
 {
     ParseUser user = serviceHub.GenerateObjectFromState <ParseUser>(t.Result, "_User");
     return(SaveCurrentUserAsync(serviceHub, user).OnSuccess(_ => user));
 }).Unwrap();
Example #2
0
 /// <summary>
 /// Logs in a user with a username and password. On success, this saves the session to disk or to memory so you can retrieve the currently logged in user using <see cref="GetCurrentUser(IServiceHub)"/>.
 /// </summary>
 /// <param name="serviceHub">The <see cref="IServiceHub"/> instance to target when logging in.</param>
 /// <param name="username">The username to log in with.</param>
 /// <param name="password">The password to log in with.</param>
 /// <param name="cancellationToken">The cancellation token.</param>
 /// <returns>The newly logged-in user.</returns>
 public static Task <ParseUser> LogInAsync(this IServiceHub serviceHub, string username, string password, CancellationToken cancellationToken = default) => serviceHub.UserController.LogInAsync(username, password, serviceHub, cancellationToken).OnSuccess(task =>
 {
     ParseUser user = serviceHub.GenerateObjectFromState <ParseUser>(task.Result, "_User");
     return(SaveCurrentUserAsync(serviceHub, user).OnSuccess(_ => user));
 }).Unwrap();