/** * Build a simple {@link SelectionBuilder} to match the requested {@link android.net.Uri}. This is * usually enough to support {@link #insert}, {@link #update}, and {@link #delete} operations. */ private SelectionBuilder buildSimpleSelection(Uri uri, int match) { final SelectionBuilder builder = new SelectionBuilder(); switch (match) { case PAYMENTS: { return builder.table(AppDatabase.Tables.PAYMENTS); } case PAYMENTS_ID: { final String id = AppContract.Payments.getId(uri); return builder .table(AppDatabase.Tables.PAYMENTS) .where(AppContract.Payments.ID + "=?", id); } default: { throw new UnsupportedOperationException("Unknown uri for " + match + ": " + uri); } } }