Search in sources :

Example 26 with SpotifyWebApiException

use of se.michaelthelin.spotify.exceptions.SpotifyWebApiException in project spotify-web-api-java by spotify-web-api-java.

the class GetCategoryExample method getCategory_Sync.

public static void getCategory_Sync() {
    try {
        final Category category = getCategoryRequest.execute();
        System.out.println("Name: " + category.getName());
    } catch (IOException | SpotifyWebApiException | ParseException e) {
        System.out.println("Error: " + e.getMessage());
    }
}
Also used : Category(se.michaelthelin.spotify.model_objects.specification.Category) IOException(java.io.IOException) ParseException(org.apache.hc.core5.http.ParseException) SpotifyWebApiException(se.michaelthelin.spotify.exceptions.SpotifyWebApiException)

Example 27 with SpotifyWebApiException

use of se.michaelthelin.spotify.exceptions.SpotifyWebApiException in project spotifybot by NotEchoDE.

the class BotInstance method updateTokens.

private void updateTokens() {
    if (user.spotifyTokens() == null) {
        context.getBean(BotInstanceManagementService.class).stopInstance(user);
        return;
    }
    updateTwitchToken(user.twitchTokens());
    if (user.chatAccountTokens() != null)
        updateTwitchToken(user.chatAccountTokens());
    try {
        this.spotifyApi.setRefreshToken(user.spotifyTokens().getRefreshToken());
        AuthorizationCodeRefreshRequest authorizationCodeRefreshRequest = spotifyApi.authorizationCodeRefresh().build();
        final AuthorizationCodeCredentials authorizationCodeCredentials = authorizationCodeRefreshRequest.execute();
        spotifyApi.setAccessToken(authorizationCodeCredentials.getAccessToken());
        spotifyApi.setRefreshToken(authorizationCodeCredentials.getRefreshToken());
        user.spotifyTokens().setAccessToken(authorizationCodeCredentials.getAccessToken());
        Logger.log(LogType.DEBUG, "[" + user.getId() + "] Got new Spotify Token for " + login + ", expires in: " + authorizationCodeCredentials.getExpiresIn() + " | " + authorizationCodeCredentials.getAccessToken().substring(0, 10) + "...", "Spotify", login, String.valueOf(authorizationCodeCredentials.getExpiresIn()), authorizationCodeCredentials.getAccessToken().substring(0, 10) + "...");
    } catch (BadRequestException e) {
        TokenPair spotifyTokens = user.spotifyTokens();
        user.getTokenPairs().remove(spotifyTokens);
        context.getBean(UserRepository.class).saveAndFlush(user);
        context.getBean(TokenPairRepository.class).delete(spotifyTokens);
        Logger.log(LogType.INFO, "[" + user.getId() + "] " + login + " revoked his access token so it was removed from the database.", login, "revoked", "database");
        for (BaseModule module : this.modules) module.unregister(client);
        client.getChat().leaveChannel(this.login);
        context.getBean(BotInstanceManagementService.class).stopInstance(user);
        return;
    } catch (IOException | SpotifyWebApiException | ParseException e) {
        e.printStackTrace();
    }
    context.getBean(UserRepository.class).saveAndFlush(user);
    nextCheck = System.currentTimeMillis() + TimeUnit.MINUTES.toMillis(50);
}
Also used : UserRepository(de.notecho.spotify.database.user.repository.UserRepository) BaseModule(de.notecho.spotify.bot.modules.BaseModule) BadRequestException(se.michaelthelin.spotify.exceptions.detailed.BadRequestException) IOException(java.io.IOException) ParseException(org.apache.hc.core5.http.ParseException) AuthorizationCodeRefreshRequest(se.michaelthelin.spotify.requests.authorization.authorization_code.AuthorizationCodeRefreshRequest) TokenPair(de.notecho.spotify.database.user.entities.TokenPair) BotInstanceManagementService(de.notecho.spotify.bot.BotInstanceManagementService) SpotifyWebApiException(se.michaelthelin.spotify.exceptions.SpotifyWebApiException) AuthorizationCodeCredentials(se.michaelthelin.spotify.model_objects.credentials.AuthorizationCodeCredentials)

Aggregations

IOException (java.io.IOException)27 ParseException (org.apache.hc.core5.http.ParseException)27 SpotifyWebApiException (se.michaelthelin.spotify.exceptions.SpotifyWebApiException)27 AuthorizationCodeCredentials (se.michaelthelin.spotify.model_objects.credentials.AuthorizationCodeCredentials)5 SnapshotResult (se.michaelthelin.spotify.model_objects.special.SnapshotResult)3 Playlist (se.michaelthelin.spotify.model_objects.specification.Playlist)3 User (se.michaelthelin.spotify.model_objects.specification.User)2 SpotifyToYoutubeInterpreter (de.lundy.lobster.lavaplayer.spotify.SpotifyToYoutubeInterpreter)1 BotInstanceManagementService (de.notecho.spotify.bot.BotInstanceManagementService)1 BaseModule (de.notecho.spotify.bot.modules.BaseModule)1 TokenPair (de.notecho.spotify.database.user.entities.TokenPair)1 UserRepository (de.notecho.spotify.database.user.repository.UserRepository)1 BadRequestException (se.michaelthelin.spotify.exceptions.detailed.BadRequestException)1 ClientCredentials (se.michaelthelin.spotify.model_objects.credentials.ClientCredentials)1 AudioAnalysis (se.michaelthelin.spotify.model_objects.miscellaneous.AudioAnalysis)1 CurrentlyPlaying (se.michaelthelin.spotify.model_objects.miscellaneous.CurrentlyPlaying)1 CurrentlyPlayingContext (se.michaelthelin.spotify.model_objects.miscellaneous.CurrentlyPlayingContext)1 FeaturedPlaylists (se.michaelthelin.spotify.model_objects.special.FeaturedPlaylists)1 SearchResult (se.michaelthelin.spotify.model_objects.special.SearchResult)1 Album (se.michaelthelin.spotify.model_objects.specification.Album)1