package com.battlelancer.seriesguide.util.tasks;
import android.content.Context;
import android.support.annotation.NonNull;
import com.battlelancer.seriesguide.R;
import com.battlelancer.seriesguide.SgApp;
import com.battlelancer.seriesguide.util.MovieTools;
import com.uwetrottmann.seriesguide.backend.movies.model.Movie;
import com.uwetrottmann.trakt5.entities.SyncItems;
import com.uwetrottmann.trakt5.entities.SyncResponse;
import com.uwetrottmann.trakt5.services.Sync;
import retrofit2.Call;
public class AddMovieToWatchlistTask extends BaseMovieActionTask {
private final SgApp app;
public AddMovieToWatchlistTask(SgApp app, int movieTmdbId) {
super(app, movieTmdbId);
this.app = app;
}
@Override
protected boolean doDatabaseUpdate(Context context, int movieTmdbId) {
return app.getMovieTools().addToList(movieTmdbId, MovieTools.Lists.WATCHLIST);
}
@Override
protected void setHexagonMovieProperties(Movie movie) {
movie.setIsInWatchlist(true);
}
@NonNull
@Override
protected String getTraktAction() {
return "add movie to watchlist";
}
@NonNull
@Override
protected Call<SyncResponse> doTraktAction(Sync traktSync, SyncItems items) {
return traktSync.addItemsToWatchlist(items);
}
@Override
protected int getSuccessTextResId() {
return R.string.watchlist_added;
}
}