TvShowResultsPage resultsPage = api.searchService().tv(searchString, 1, language, null, "phrase").execute().body(); if (resultsPage != null) { for (BaseTvShow show : ListUtils.nullSafe(resultsPage.results)) { if (verifyTvShowLanguageTitle(query, resultsPage.results, resultList)) { break;
private List<MediaArtwork> genMA(List<Entry> entries, MediaArtworkType type) { List<MediaArtwork> artworks = new ArrayList<>(); for (Entry image : ListUtils.nullSafe(entries)) { MediaArtwork ma = new MediaArtwork(providerInfo.getId(), type); ma.setDefaultUrl(BASE_URL + image.getOriginal()); ma.setPreviewUrl(BASE_URL + image.getImage()); ma.setAnimated(true); // ma.setImdbId(m.getImdbid()); ma.setLanguage(image.getLanguage().toLowerCase(Locale.ROOT)); artworks.add(ma); } return artworks; }
for (Season season : ListUtils.nullSafe(seasons)) { for (Episode episode : season.episodes) { MediaEpisode ep = new MediaEpisode(TraktMetadataProvider.providerInfo.getId());
for (MovieEntity entity : ListUtils.nullSafe(resultList.search)) { MediaSearchResult result = new MediaSearchResult(OmdbMetadataProvider.providerInfo.getId(), MediaType.MOVIE);
TvShow complete = api.tvService().tv(tmdbId, language).execute().body(); if (complete != null) { for (TvSeason season : ListUtils.nullSafe(complete.seasons)) { List<MediaEpisode> seasonEpisodes = new ArrayList<>(); TvSeason fullSeason = api.tvSeasonsService().season(tmdbId, season.season_number, language).execute().body(); if (fullSeason != null) { for (TvEpisode episode : ListUtils.nullSafe(fullSeason.episodes)) {
private List<MediaArtwork> prepareArtwork(List<Image> images, ImageType type) { List<MediaArtwork> artworks = new ArrayList<>(); for (Image image : ListUtils.nullSafe(images)) { MediaArtwork ma = new MediaArtwork(providerInfo.getId(), type.type); ma.setDefaultUrl(image.url); ma.setPreviewUrl(image.url.replace("/fanart/", "/preview/")); ma.setLanguage(image.lang); ma.setLikes(image.likes); ma.addImageSize(type.width, type.height, image.url); ma.setSizeOrder(type.sizeOrder); if ("all".equals(image.season)) { ma.setSeason(0); } else { try { ma.setSeason(Integer.valueOf(image.season)); } catch (Exception ignored) { } } artworks.add(ma); // fanart.tv only knows clearlogo; copy that for the logo type if (type.type == MediaArtworkType.CLEARLOGO) { artworks.add(new MediaArtwork(ma, MediaArtworkType.LOGO)); } } return artworks; }
for (Video video : ListUtils.nullSafe(videos)) { if (!"trailer".equalsIgnoreCase(video.type)) { continue;
CollectionResultsPage resultsPage = api.searchService().collection(searchString, 1, language).execute().body(); if (resultsPage != null) { for (BaseCollection collection : ListUtils.nullSafe(resultsPage.results)) { MediaSearchResult searchResult = new MediaSearchResult(TmdbMetadataProvider.providerInfo.getId(), MediaType.MOVIE_SET); searchResult.setId(Integer.toString(collection.id));
for (Image image : ListUtils.nullSafe(tmdbArtwork.posters)) { MediaArtwork ma = new MediaArtwork(TmdbMetadataProvider.providerInfo.getId(), MediaArtworkType.POSTER); ma.setPreviewUrl(baseUrl + "w185" + image.file_path); for (Image image : ListUtils.nullSafe(tmdbArtwork.backdrops)) { MediaArtwork ma = new MediaArtwork(TmdbMetadataProvider.providerInfo.getId(), MediaArtworkType.BACKGROUND); ma.setPreviewUrl(baseUrl + "w300" + image.file_path);
for (BaseKeyword kw : ListUtils.nullSafe(mk.keywords)) { switch (kw.name) { case "aftercreditsstinger":
for (BaseCompany company : ListUtils.nullSafe(complete.production_companies)) { md.addProductionCompany(company.name.trim()); for (CastMember castMember : ListUtils.nullSafe(complete.credits.cast)) { MediaCastMember cm = new MediaCastMember(MediaCastMember.CastType.ACTOR); cm.setName(castMember.name); for (ContentRating country : ListUtils.nullSafe(complete.content_ratings.results)) { if (options.getCountry() == null || options.getCountry().getAlpha2().compareToIgnoreCase(country.iso_3166_1) == 0) {
for (BaseMovie part : ListUtils.nullSafe(collection.parts)) { MediaMetadata mdSubItem = new MediaMetadata(TmdbMetadataProvider.providerInfo.getId()); mdSubItem.setId(TmdbMetadataProvider.providerInfo.getId(), part.id);
for (String genreAsString : ListUtils.nullSafe(movie.genres)) { md.addGenre(MediaGenres.getGenre(genreAsString)); for (CastMember cast : ListUtils.nullSafe(credits.cast)) { MediaCastMember cm = new MediaCastMember(MediaCastMember.CastType.ACTOR); cm.setName(cast.person.name); for (CrewMember crew : ListUtils.nullSafe(credits.crew.directing)) { MediaCastMember cm = new MediaCastMember(MediaCastMember.CastType.DIRECTOR); cm.setName(crew.person.name); for (CrewMember crew : ListUtils.nullSafe(credits.crew.production)) { MediaCastMember cm = new MediaCastMember(MediaCastMember.CastType.PRODUCER); cm.setName(crew.person.name); for (CrewMember crew : ListUtils.nullSafe(credits.crew.writing)) { MediaCastMember cm = new MediaCastMember(MediaCastMember.CastType.WRITER); cm.setName(crew.person.name); for (CrewMember crew : ListUtils.nullSafe(credits.crew.costumeAndMakeUp)) { MediaCastMember cm = new MediaCastMember(MediaCastMember.CastType.OTHER); cm.setName(crew.person.name); for (CrewMember crew : ListUtils.nullSafe(credits.crew.sound)) { MediaCastMember cm = new MediaCastMember(MediaCastMember.CastType.OTHER); cm.setName(crew.person.name); for (CrewMember crew : ListUtils.nullSafe(credits.crew.camera)) { MediaCastMember cm = new MediaCastMember(MediaCastMember.CastType.OTHER);
TvSeason fullSeason = api.tvSeasonsService().season(tmdbId, seasonNr, language).execute().body(); if (fullSeason != null) { for (TvEpisode ep : ListUtils.nullSafe(fullSeason.episodes)) { if (ep.season_number == seasonNr && ep.episode_number == episodeNr) { episode = ep; for (TvEpisode ep : ListUtils.nullSafe(fullSeason.episodes)) { if (ep.air_date != null) { Format formatter = new SimpleDateFormat("yyyy-MM-dd"); md.setReleaseDate(episode.air_date); for (CastMember castMember : ListUtils.nullSafe(episode.guest_stars)) { MediaCastMember cm = new MediaCastMember(MediaCastMember.CastType.ACTOR); cm.setName(castMember.name);
for (String genreAsString : ListUtils.nullSafe(show.genres)) { md.addGenre(MediaGenres.getGenre(genreAsString)); for (CastMember cast : ListUtils.nullSafe(credits.cast)) { MediaCastMember cm = new MediaCastMember(MediaCastMember.CastType.ACTOR); cm.setName(cast.person.name); for (CrewMember crew : ListUtils.nullSafe(credits.crew.directing)) { MediaCastMember cm = new MediaCastMember(MediaCastMember.CastType.DIRECTOR); cm.setName(crew.person.name); for (CrewMember crew : ListUtils.nullSafe(credits.crew.production)) { MediaCastMember cm = new MediaCastMember(MediaCastMember.CastType.PRODUCER); cm.setName(crew.person.name); for (CrewMember crew : ListUtils.nullSafe(credits.crew.writing)) { MediaCastMember cm = new MediaCastMember(MediaCastMember.CastType.WRITER); cm.setName(crew.person.name); for (CrewMember crew : ListUtils.nullSafe(credits.crew.costumeAndMakeUp)) { MediaCastMember cm = new MediaCastMember(MediaCastMember.CastType.OTHER); cm.setName(crew.person.name); for (CrewMember crew : ListUtils.nullSafe(credits.crew.sound)) { MediaCastMember cm = new MediaCastMember(MediaCastMember.CastType.OTHER); cm.setName(crew.person.name); for (CrewMember crew : ListUtils.nullSafe(credits.crew.camera)) { MediaCastMember cm = new MediaCastMember(MediaCastMember.CastType.OTHER);
for (SpokenLanguage lang : ListUtils.nullSafe(movie.spoken_languages)) { if (providerInfo.getConfig().getValueAsBool("scrapeLanguageNames")) { md.addSpokenLanguage(LanguageUtils.getLocalizedLanguageNameFromLocalizedString(options.getLanguage(), lang.name, lang.iso_639_1)); for (Country country : ListUtils.nullSafe(movie.production_countries)) { if (providerInfo.getConfig().getValueAsBool("scrapeLanguageNames")) { md.addCountry(LanguageUtils.getLocalizedCountryForLanguage(options.getLanguage(), country.name, country.iso_3166_1)); for (BaseCompany company : ListUtils.nullSafe(movie.production_companies)) { md.addProductionCompany(company.name.trim()); for (ReleaseDatesResult countries : ListUtils.nullSafe(movie.release_dates.results)) { for (ReleaseDate countryReleaseDate : ListUtils.nullSafe(countries.release_dates)) { for (CastMember castMember : ListUtils.nullSafe(movie.credits.cast)) { MediaCastMember cm = new MediaCastMember(); cm.setType(MediaCastMember.CastType.ACTOR); for (CrewMember crewMember : ListUtils.nullSafe(movie.credits.crew)) { MediaCastMember cm = new MediaCastMember(); if ("Director".equals(crewMember.job)) { for (Genre genre : ListUtils.nullSafe(movie.genres)) { md.addGenre(TmdbMetadataProvider.getTmmGenre(genre));