List of usage examples for org.apache.commons.lang3 StringUtils isNumeric
public static boolean isNumeric(final CharSequence cs)
Checks if the CharSequence contains only Unicode digits.
From source file:org.yamj.core.api.model.dto.ApiVideoDTO.java
public void setFirstAired(String firstAired) { if (StringUtils.isNotBlank(firstAired) && firstAired.length() >= 4) { String year = firstAired.substring(0, 4); if (StringUtils.isNumeric(year)) { setVideoYear(Integer.parseInt(year)); }//from w w w . j ava 2 s . c om } }
From source file:org.yamj.core.hibernate.HibernateDao.java
/** * Convert row object to Integer./*from w w w .j a va2 s .c om*/ * * @param rowElement * @return <code>Integer</code> */ protected Integer convertRowElementToInteger(Object rowElement) { if (rowElement == null) { return Integer.valueOf(0); } else if (StringUtils.isNumeric(rowElement.toString())) { return Integer.valueOf(rowElement.toString()); } else { return Integer.valueOf(0); } }
From source file:org.yamj.core.hibernate.HibernateDao.java
/** * Convert row object to Long.//from w ww. ja v a 2 s . c o m * * @param rowElement * @return <code>Long</code> */ protected Long convertRowElementToLong(Object rowElement) { if (rowElement == null) { return Long.valueOf(0); } else if (StringUtils.isNumeric(rowElement.toString())) { return Long.valueOf(rowElement.toString()); } else { return Long.valueOf(0); } }
From source file:org.yamj.core.service.artwork.ArtworkInitialization.java
@Override public void afterPropertiesSet() throws Exception { String[] defaultProfiles = PropertyTools.getProperty("artwork.scanner.default.profiles", "").split(","); if (defaultProfiles.length > 0) { for (String defaultProfile : defaultProfiles) { String name = defaultProfile; boolean valid = true; String type = PropertyTools.getProperty("artwork.profile." + name + ".type", ArtworkType.UNKNOWN.toString()); ArtworkType artworkType = ArtworkType.fromString(type); if (ArtworkType.UNKNOWN == artworkType) { LOG.warn("Property 'artwork.profile.{}.type' denotes invalid artwork type: {}", name, type); valid = false;// w w w.j av a 2 s . c o m } String width = PropertyTools.getProperty("artwork.profile." + name + ".width"); if (!StringUtils.isNumeric(width)) { LOG.warn("Property 'artwork.profile.{}.width' is not numeric: {}", name, width); valid = false; } String height = PropertyTools.getProperty("artwork.profile." + name + ".height"); if (!StringUtils.isNumeric(width)) { LOG.warn("Property 'artwork.profile.{}.height' is not numeric: {}", name, height); valid = false; } if (!valid) { LOG.warn("Profile {} has no valid setup, so skipping", name); continue; } ArtworkProfile artworkProfile = new ArtworkProfile(); artworkProfile.setProfileName(name); artworkProfile.setArtworkType(artworkType); artworkProfile.setWidth(Integer.parseInt(width)); artworkProfile.setHeight(Integer.parseInt(height)); artworkProfile.setApplyToMovie(PropertyTools .getBooleanProperty("artwork.profile." + name + ".applyToMovie", Boolean.FALSE)); artworkProfile.setApplyToSeries(PropertyTools .getBooleanProperty("artwork.profile." + name + ".applyToSeries", Boolean.FALSE)); artworkProfile.setApplyToSeason(PropertyTools .getBooleanProperty("artwork.profile." + name + ".applyToSeason", Boolean.FALSE)); artworkProfile.setApplyToEpisode(PropertyTools .getBooleanProperty("artwork.profile." + name + ".applyToEpisode", Boolean.FALSE)); artworkProfile.setApplyToPerson(PropertyTools .getBooleanProperty("artwork.profile." + name + ".applyToPerson", Boolean.FALSE)); artworkProfile.setPreProcess( PropertyTools.getBooleanProperty("artwork.profile." + name + ".preProcess", Boolean.FALSE)); try { // call another service to handle transactions this.artworkStorageService.storeArtworkProfile(artworkProfile); } catch (Exception error) { LOG.error("Failed to store artwork profile {}", artworkProfile); LOG.warn("Storage error", error); } } } }
From source file:org.yamj.core.service.artwork.ArtworkScannerService.java
private List<ArtworkLocated> scanPhotoOnline(Artwork artwork) { LOG.debug("Scan online for photo: {}", artwork); List<ArtworkDetailDTO> photos = null; for (String prio : PHOTO_PRIORITIES) { IPhotoScanner scanner = registeredPhotoScanner.get(prio); if (scanner != null) { LOG.debug(USE_SCANNER_FOR, scanner.getScannerName(), artwork); Person person = artwork.getPerson(); if (person == null) { LOG.warn("No associated person found for artwork: {}", artwork); } else { String id = person.getPersonId(prio); LOG.info("Scanning for person ID: {}-{}", prio, id); if (StringUtils.isNumeric(id)) { photos = scanner.getPhotos(Integer.parseInt(id)); } else { // Id looks to be invalid, so look it up id = scanner.getPersonId(person); // Could check if the ID is null and then use the IMDB id if available photos = scanner.getPhotos(id); }//from ww w. j a v a 2 s . com if (CollectionUtils.isNotEmpty(photos)) { break; } } } else { LOG.warn("Desired photo scanner {} not registerd", prio); } } if (CollectionUtils.isEmpty(photos) || photos == null) { LOG.info("No photos found for: {}", artwork); return null; } if (PHOTO_MAX_RESULTS > 0 && photos.size() > PHOTO_MAX_RESULTS) { LOG.info("Limited photos to {}, actually retrieved {} for {}", PHOTO_MAX_RESULTS, photos.size(), artwork); photos = photos.subList(0, PHOTO_MAX_RESULTS); } return createLocatedArtworksOnline(artwork, photos); }
From source file:org.yamj.core.service.artwork.common.FanartTvScanner.java
@Override public List<ArtworkDetailDTO> getPosters(String id) { List<ArtworkDetailDTO> artwork = new ArrayList<ArtworkDetailDTO>(); try {/*from ww w. j a v a 2s. c o m*/ List<FanartTvArtwork> ftartwork; if (StringUtils.isNumeric(id)) { // Assume its Tmdb ftartwork = fanarttvApi.getMovieArtwork(Integer.parseInt(id), FTArtworkType.MOVIEPOSTER); } else { // Assume imdb ftartwork = fanarttvApi.getMovieArtwork(id, FTArtworkType.MOVIEPOSTER); } if (CollectionUtils.isNotEmpty(artwork)) { for (FanartTvArtwork ft : ftartwork) { ArtworkDetailDTO a = new ArtworkDetailDTO(SCANNER_ID, ft.getUrl()); a.setLanguage(ft.getLanguage()); artwork.add(a); } } } catch (FanartTvException ex) { LOG.warn("Failed to get artwork from FanartTV for ID '{}', error: {}", id, ex.getMessage()); } return artwork; }
From source file:org.yamj.core.service.artwork.common.TheMovieDbArtworkScanner.java
/** * Get a list of the artwork for a movie. * * This will get all the artwork for a specified language and the blank languages as well * * @param id/*from w w w. ja v a 2 s . c om*/ * @param language * @param artworkType * @param artworkSize * @return */ private List<ArtworkDetailDTO> getFilteredArtwork(String id, String language, ArtworkType artworkType, String artworkSize) { List<ArtworkDetailDTO> dtos = new ArrayList<ArtworkDetailDTO>(); if (StringUtils.isNumeric(id)) { int tmdbId = Integer.parseInt(id); try { // Use an empty language to get all artwork and then filter it. TmdbResultsList<Artwork> results; if (artworkType == ArtworkType.PROFILE) { results = tmdbApi.getPersonImages(tmdbId); } else { results = tmdbApi.getMovieImages(tmdbId, LANGUAGE_NONE); } List<Artwork> artworkList = results.getResults(); for (Artwork artwork : artworkList) { if (artwork.getArtworkType() == artworkType && (StringUtils.isBlank(artwork.getLanguage()) || StringUtils.equalsIgnoreCase(artwork.getLanguage(), language))) { URL artworkURL = tmdbApi.createImageUrl(artwork.getFilePath(), artworkSize); if (artworkURL == null || artworkURL.toString().endsWith("null")) { LOG.warn("{} URL is invalid and will not be used: {}", artworkType, artworkURL); } else { dtos.add(new ArtworkDetailDTO(getScannerName(), artworkURL.toString())); } } } LOG.debug("Found {} {} artworks for TMDB ID '{}' and language '{}'", dtos.size(), artworkType, tmdbId, language); } catch (MovieDbException error) { LOG.warn("Failed to get the {} URL for TMDb ID {}", artworkType, id, error); } } return dtos; }
From source file:org.yamj.core.service.artwork.common.TheMovieDbArtworkScanner.java
@Override public String getId(IMetadata metadata) { // First look to see if we have a TMDb ID as this will make looking the film up easier String tmdbID = metadata.getSourceDbId(getScannerName()); if (StringUtils.isNumeric(tmdbID)) { return tmdbID; }/*from w w w . j a va2s. c om*/ // Search based on IMDb ID String imdbID = metadata.getSourceDbId(ImdbScanner.SCANNER_ID); if (StringUtils.isNotBlank(imdbID)) { MovieDb moviedb = null; try { String defaultLanguage = configService.getProperty("themoviedb.language", "en"); moviedb = tmdbApi.getMovieInfoImdb(imdbID, defaultLanguage); } catch (MovieDbException ex) { LOG.warn("Failed to get TMDb ID for {}-{}", imdbID, ex.getMessage()); } if (moviedb != null) { tmdbID = String.valueOf(moviedb.getId()); if (StringUtils.isNumeric(tmdbID)) { metadata.setSourceDbId(getScannerName(), tmdbID); return tmdbID; } } } // Search based on title and year String title = StringUtils.isBlank(metadata.getTitleOriginal()) ? metadata.getTitle() : metadata.getTitleOriginal(); tmdbID = getId(title, metadata.getYear()); if (StringUtils.isNumeric(tmdbID)) { metadata.setSourceDbId(getScannerName(), tmdbID); return tmdbID; } LOG.warn("No TMDb id found for movie"); return null; }
From source file:org.yamj.core.service.artwork.common.TheMovieDbArtworkScanner.java
@Override public List<ArtworkDetailDTO> getPhotos(final String name) { String tmdbId;/*from w w w . j a va 2 s . c o m*/ // Check to see if we were passed the ID and not a name if (StringUtils.isNumeric(name)) { tmdbId = name; } else { tmdbId = getPersonId(name); } if (StringUtils.isNotBlank(tmdbId)) { return getPhotos(Integer.parseInt(tmdbId)); } else { return Collections.emptyList(); } }
From source file:org.yamj.core.service.artwork.online.FanartTvScanner.java
@Override public List<ArtworkDetailDTO> getPosters(VideoData videoData) { String tmdbId = tmdbScanner.getMovieId(videoData); if (StringUtils.isNumeric(tmdbId)) { return getMovieArtworkType(tmdbId, FTArtworkType.MOVIEPOSTER); }//from w w w .j av a 2 s. c o m return Collections.emptyList(); }