package com.jakewharton.rxbinding2.support.v7.widget; import android.support.annotation.CheckResult; import android.support.annotation.NonNull; import android.support.v7.widget.RecyclerView.Adapter; import android.support.v7.widget.RecyclerView.ViewHolder; import com.jakewharton.rxbinding2.InitialValueObservable; import io.reactivex.Observable; import static com.jakewharton.rxbinding2.internal.Preconditions.checkNotNull; /** Static factory methods for creating {@linkplain Observable observables} for {@link Adapter}. */ public final class RxRecyclerViewAdapter { /** * Create an observable of data change events for {@code RecyclerView.adapter}. * <p> * <em>Note:</em> A value will be emitted immediately on subscribe. */ @CheckResult @NonNull public static <T extends Adapter<? extends ViewHolder>> InitialValueObservable<T> dataChanges( @NonNull T adapter) { checkNotNull(adapter, "adapter == null"); return new RecyclerAdapterDataChangeObservable<>(adapter); } private RxRecyclerViewAdapter() { throw new AssertionError("No instances."); } }