public PlaylistViewModel() { JsonFactory jsonFactory = GsonFactory.getDefaultInstance(); HttpTransport httpTransport = AndroidHttp.newCompatibleTransport(); ytApi = new YouTube.Builder(httpTransport, jsonFactory, null).setApplicationName( "Toro Youtube Demo, " + BuildConfig.VERSION_NAME).build(); disposables = new CompositeDisposable(); }
void refresh() throws IOException { Disposable disposable = // Observable.just(ytApi.playlistItems() .list(YOUTUBE_PLAYLIST_PART) .setPlaylistId(YOUTUBE_PLAYLIST_ID) .setPageToken(null) .setFields(YOUTUBE_PLAYLIST_FIELDS) .setMaxResults(YOUTUBE_PLAYLIST_MAX_RESULTS) .setKey(API_KEY) // ) .map(AbstractGoogleClientRequest::execute) .map(PlaylistItemListResponse::getItems) .flatMap(playlistItems -> Observable.fromIterable(playlistItems) .map(item -> item.getSnippet().getResourceId().getVideoId())) .toList() .map(ids -> ytApi.videos().list(YOUTUBE_VIDEOS_PART).setFields(YOUTUBE_VIDEOS_FIELDS) // .setKey(API_KEY).setId(TextUtils.join(",", ids)).execute()) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) .doOnError( throwable -> Log.e(TAG, "accept() called with: throwable = [" + throwable + "]")) .doOnSuccess( response -> Log.d(TAG, "accept() called with: response = [" + response + "]")) .onErrorReturnItem(new VideoListResponse()) // Bad work around .doOnSuccess(liveData::setValue) .subscribe(); disposables.add(disposable); } }
@Override public Insert set(String parameterName, Object value) { return (Insert) super.set(parameterName, value); } }
@Override public List set(String parameterName, Object value) { return (List) super.set(parameterName, value); } }
@Override public Delete set(String parameterName, Object value) { return (Delete) super.set(parameterName, value); } }
@Override public Insert set(String parameterName, Object value) { return (Insert) super.set(parameterName, value); } }
@Override public List set(String parameterName, Object value) { return (List) super.set(parameterName, value); } }
@Override public Delete set(String parameterName, Object value) { return (Delete) super.set(parameterName, value); } }
@Override public List set(String parameterName, Object value) { return (List) super.set(parameterName, value); } }
@Override public List set(String parameterName, Object value) { return (List) super.set(parameterName, value); } }
@Override public Delete set(String parameterName, Object value) { return (Delete) super.set(parameterName, value); } }
@Override public Insert set(String parameterName, Object value) { return (Insert) super.set(parameterName, value); } }
@Override public Delete set(String parameterName, Object value) { return (Delete) super.set(parameterName, value); } }
@Override public List set(String parameterName, Object value) { return (List) super.set(parameterName, value); } }
@Override public List set(String parameterName, Object value) { return (List) super.set(parameterName, value); } }
@Override public Rate set(String parameterName, Object value) { return (Rate) super.set(parameterName, value); } }
@Override public ReportAbuse set(String parameterName, Object value) { return (ReportAbuse) super.set(parameterName, value); } }
@Override public Update set(String parameterName, Object value) { return (Update) super.set(parameterName, value); } }
@Override public Insert set(String parameterName, Object value) { return (Insert) super.set(parameterName, value); } }
@Override public Unset set(String parameterName, Object value) { return (Unset) super.set(parameterName, value); } }