Search in sources :

Example 1 with RefreshRequest

use of net.technicpack.minecraftcore.mojang.auth.request.RefreshRequest in project LauncherV3 by TechnicPack.

the class MojangAuthenticator method requestRefresh.

public AuthResponse requestRefresh(MojangUser mojangUser) throws AuthenticationException {
    RefreshRequest refreshRequest = new RefreshRequest(mojangUser.getAccessToken(), mojangUser.getClientToken());
    String data = MojangUtils.getGson().toJson(refreshRequest);
    AuthResponse response;
    try {
        String returned = postJson(AUTH_SERVER + "refresh", data);
        response = MojangUtils.getGson().fromJson(returned, AuthResponse.class);
        if (response == null) {
            throw new SessionException("Session Error. Try logging in again.");
        }
        if (response.hasError()) {
            throw new ResponseException(response.getError(), response.getErrorMessage());
        }
    } catch (IOException e) {
        throw new AuthenticationException("An error was raised while attempting to communicate with " + AUTH_SERVER + ".", e);
    }
    return response;
}
Also used : RefreshRequest(net.technicpack.minecraftcore.mojang.auth.request.RefreshRequest) ResponseException(net.technicpack.launchercore.exception.ResponseException) AuthenticationException(net.technicpack.launchercore.exception.AuthenticationException) SessionException(net.technicpack.launchercore.exception.SessionException) IOException(java.io.IOException) AuthResponse(net.technicpack.minecraftcore.mojang.auth.response.AuthResponse)

Aggregations

IOException (java.io.IOException)1 AuthenticationException (net.technicpack.launchercore.exception.AuthenticationException)1 ResponseException (net.technicpack.launchercore.exception.ResponseException)1 SessionException (net.technicpack.launchercore.exception.SessionException)1 RefreshRequest (net.technicpack.minecraftcore.mojang.auth.request.RefreshRequest)1 AuthResponse (net.technicpack.minecraftcore.mojang.auth.response.AuthResponse)1