in core-android/src/main/java/com/uber/sdk/android/core/auth/AuthUtils.java [196:220]
static Intent parseTokenUriToIntent(@NonNull Uri uri) throws LoginAuthenticationException {
final long expiresIn;
try {
expiresIn = Long.valueOf(uri.getQueryParameter(KEY_EXPIRATION_TIME));
} catch (NumberFormatException ex) {
throw new LoginAuthenticationException(AuthenticationError.INVALID_RESPONSE);
}
final String accessToken = uri.getQueryParameter(KEY_TOKEN);
final String refreshToken = uri.getQueryParameter(KEY_REFRESH_TOKEN);
final String scope = uri.getQueryParameter(KEY_SCOPES);
final String tokenType = uri.getQueryParameter(KEY_TOKEN_TYPE);
if (TextUtils.isEmpty(accessToken) || TextUtils.isEmpty(scope) || TextUtils.isEmpty(tokenType)) {
throw new LoginAuthenticationException(AuthenticationError.INVALID_RESPONSE);
}
Intent data = new Intent();
data.putExtra(LoginManager.EXTRA_ACCESS_TOKEN, accessToken);
data.putExtra(LoginManager.EXTRA_REFRESH_TOKEN, refreshToken);
data.putExtra(LoginManager.EXTRA_SCOPE, scope);
data.putExtra(LoginManager.EXTRA_EXPIRES_IN, expiresIn);
data.putExtra(LoginManager.EXTRA_TOKEN_TYPE, tokenType);
return data;
}