package org.schabi.newpipe.database; import android.arch.persistence.room.Dao; import android.arch.persistence.room.Delete; import android.arch.persistence.room.Insert; import android.arch.persistence.room.OnConflictStrategy; import android.arch.persistence.room.Update; import java.util.Collection; import java.util.List; import io.reactivex.Flowable; @Dao public interface BasicDAO { /* Inserts */ @Insert(onConflict = OnConflictStrategy.FAIL) long insert(final Entity entity); @Insert(onConflict = OnConflictStrategy.FAIL) List insertAll(final Entity... entities); @Insert(onConflict = OnConflictStrategy.FAIL) List insertAll(final Collection entities); /* Searches */ Flowable> getAll(); Flowable> listByService(int serviceId); /* Deletes */ @Delete void delete(final Entity entity); @Delete int delete(final Collection entities); int deleteAll(); /* Updates */ @Update int update(final Entity entity); @Update void update(final Collection entities); }