Advertisement
Guest User

Untitled

a guest
Mar 25th, 2017
129
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Scala 1.49 KB | None | 0 0
  1. // /auth - generate random token username/password || username/rememberToken. Token length - 20
  2.   // user_id, token, rememberToken
  3.   def authorizeUser(username: String, password: String, remember: Boolean): ServiceResponse[UserAuthData] =
  4.     authServiceClient.checkCredentials(username, password)
  5.       .flatMapT {
  6.         case userId if remember =>
  7.           generateRememberToken(userId).mapT(Option.apply).flatMapT(saveClientToken(userId, _))
  8.         case userId =>
  9.           saveClientToken(userId, None)
  10.       }
  11.  
  12.   def authorizeUser(username: String, rememberToken: String): ServiceResponse[UserAuthData] =
  13.     tokenServiceClient.validateToken(rememberToken, rememberAuthOp)
  14.       .flatMapT(saveClientToken(_, Some(rememberToken)))
  15.  
  16.   // /join - token, serverAuthId
  17.   // {"id":"OK"}
  18.   // on error: {error: bad login, message: bad login}
  19.   def linkServerAuthTokenToUserId(token: String, serverAuthToken: String): ServiceResponse[Unit] =
  20.     tokenServiceClient.validateToken(token, launcherAuthOp)
  21.       .flatMapT(tokenServiceClient.saveToken(serverAuthToken, _, serverAuthOp, DateTime.now().plusHours(12).getMillis))
  22.       .mapT(_ => ())
  23.  
  24.   // /check - username, serverAuthId
  25.   // json with user data
  26.   // on error: {error: bad login, message: bad login}
  27.   def resolveUserByServerAuthToken(username: String, serverAuthToken: String): ServiceResponse[LauncherSession] =
  28.     tokenServiceClient.validateToken(serverAuthToken, serverAuthOp)
  29.                       .flatMapT(buildLauncherSession)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement