}
return result;
}
public static TubesFeed getTopRate(String time, int itemPerPage, int page) {
TubesFeed result = new TubesFeed();
List<Tube> listTube = new ArrayList<Tube>();
List<Tube> listSave2DB = new ArrayList<Tube>();
int startIndex = 1;
if (page != 1) {
startIndex = itemPerPage * page;
}
try {
YouTubeQuery query = new YouTubeQuery(new URL(
"https://gdata.youtube.com/feeds/api/standardfeeds/top_rated?time="
+ time + "&start-index=" + startIndex
+ "&max-results=" + itemPerPage
+ "&orderby=viewCount&v=2"));
VideoFeed videoFeed = service.query(query, VideoFeed.class);
result.setTotalResult(videoFeed.getTotalResults());
result.setCurrentPage(page);
List<VideoEntry> videos = videoFeed.getEntries();
for (VideoEntry videoEntry : videos) {
Tube tub = new Tube();
tub.transformHalfVideoEntry(videoEntry);
tub.setStatus(2);
tub.setUpdated(Calendar.getInstance().getTime());
listTube.add(tub);
System.out.println(tub.getTubeId());
if (TubeModel.getByTubeId(tub.getTubeId()) == null) {
listSave2DB.add(tub);
System.out.println(tub.getTitle() + " ready to save !");
}
}
if (listSave2DB.size() > 0) {
TubeModel.addAll(listSave2DB);
System.out.println("Saved " + listSave2DB.size()
+ " video success !");
}
result.setListTube(listTube);
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block