@Override public void synchronizeMovie(String movieId, List<MovieInfo> movieInfoList) { Movie movie = this.entityManager.find(MovieImpl.class, movieId); if (movie != null) { List<? extends MovieInfo> existMovieInfoList = movie.getInfo(); loop: for (MovieInfo movieInfo : movieInfoList) { if (existMovieInfoList != null && !existMovieInfoList.isEmpty()) { for (MovieInfo existMovieInfo : existMovieInfoList) { if (existMovieInfo.getProviderName().equalsIgnoreCase(movieInfo.getProviderName())) { continue loop; } } } // Not exist in databased movie.addInfo(movieInfo); } this.entityManager.merge(movie); } }