Search in sources :

Example 1 with CompleteSeriesTmdbDTO

use of com.furyviewer.service.dto.TheMovieDB.Series.CompleteSeriesTmdbDTO in project FuryViewer by TheDoctor-95.

the class SeriesTmdbDTOService method getNumEpisodes.

/**
 * Devuelve el numero total de episodes de una season.
 * @param seriesName String | titulo de la series a buscar.
 * @param numSeason int |Numero de la season a buscar.
 * @return int | Numero total de episodios.
 */
public int getNumEpisodes(String seriesName, int numSeason) {
    int numEpisodes = -1;
    int id = getIdTmdbSeries(seriesName);
    if (id != -1) {
        try {
            Call<CompleteSeriesTmdbDTO> callSeries = apiTMDB.getCompleteSeries(id, apikey);
            Response<CompleteSeriesTmdbDTO> response = callSeries.execute();
            if (response.isSuccessful()) {
                CompleteSeriesTmdbDTO series = response.body();
                for (Season season : series.getSeasons()) {
                    if (season.getSeasonNumber() == numSeason) {
                        return season.getEpisodeCount();
                    }
                }
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    return numEpisodes;
}
Also used : CompleteSeriesTmdbDTO(com.furyviewer.service.dto.TheMovieDB.Series.CompleteSeriesTmdbDTO) IOException(java.io.IOException) Season(com.furyviewer.service.dto.TheMovieDB.Series.Season)

Example 2 with CompleteSeriesTmdbDTO

use of com.furyviewer.service.dto.TheMovieDB.Series.CompleteSeriesTmdbDTO in project FuryViewer by TheDoctor-95.

the class SeriesTmdbDTOService method getDurationEpisode.

/**
 * Devuelve la duraciĆ³n estandar de un episode.
 * @param seriesId int | id de la api de TMDB.
 * @return double | Duracion estandar de un episode.
 */
public double getDurationEpisode(int seriesId) {
    double duration = -1;
    CompleteSeriesTmdbDTO series;
    getDuration: for (int i = 0; i < 3; i++) {
        try {
            Call<CompleteSeriesTmdbDTO> callSeries = apiTMDB.getCompleteSeries(seriesId, apikey);
            Response<CompleteSeriesTmdbDTO> response = callSeries.execute();
            if (response.isSuccessful()) {
                series = response.body();
                if (series.getEpisodeRunTime() != null) {
                    duration = series.getEpisodeRunTime().get(0);
                }
            }
            // Salimos del bucle
            break getDuration;
        } catch (IOException e) {
            e.printStackTrace();
            try {
                Thread.sleep(5000L);
                System.out.println("Durmiendo el thread 5 segundos desde SeriesTmdbDTOService#getDurationEpisode");
            } catch (InterruptedException e1) {
                e1.printStackTrace();
            }
        }
    }
    return duration;
}
Also used : Response(retrofit2.Response) Call(retrofit2.Call) CompleteSeriesTmdbDTO(com.furyviewer.service.dto.TheMovieDB.Series.CompleteSeriesTmdbDTO) IOException(java.io.IOException)

Example 3 with CompleteSeriesTmdbDTO

use of com.furyviewer.service.dto.TheMovieDB.Series.CompleteSeriesTmdbDTO in project FuryViewer by TheDoctor-95.

the class SeriesTmdbDTOService method getCompanyName.

/**
 * Devuelve el nombre de la company a partir del titulo de la series.
 *
 * @param seriesName String | Series a buscar.
 * @return String | Nombre de la company.
 */
public String getCompanyName(String seriesName) {
    CompleteSeriesTmdbDTO series;
    int id = getIdTmdbSeries(seriesName);
    String companyName = null;
    if (id != -1) {
        try {
            Call<CompleteSeriesTmdbDTO> callSeries = apiTMDB.getCompleteSeries(id, apikey);
            Response<CompleteSeriesTmdbDTO> response = callSeries.execute();
            if (response.isSuccessful()) {
                series = response.body();
                companyName = series.getProductionCompanies().get(0).getName();
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    return companyName;
}
Also used : CompleteSeriesTmdbDTO(com.furyviewer.service.dto.TheMovieDB.Series.CompleteSeriesTmdbDTO) IOException(java.io.IOException)

Aggregations

CompleteSeriesTmdbDTO (com.furyviewer.service.dto.TheMovieDB.Series.CompleteSeriesTmdbDTO)3 IOException (java.io.IOException)3 Season (com.furyviewer.service.dto.TheMovieDB.Series.Season)1 Call (retrofit2.Call)1 Response (retrofit2.Response)1