@Override public void onSwiped(RecyclerView.ViewHolder holder, int swipeDir) { Uri uri = ContentUris.withAppendedId(HistoryProvider.Columns.CONTENT_URI, holder.getItemId()); ContentValues values = null; Cursor cursor = mResolver.query(uri, null, null, null, null); if (cursor != null) { if (cursor.moveToFirst()) { values = new ContentValues(); DatabaseUtils.cursorRowToContentValues(cursor, values); } cursor.close(); } mResolver.delete(uri, null, null); if (values != null && mDeleteListener != null) { mDeleteListener.onItemDeleted(values); } }
@Override public void onQueryComplete(int token, Object cookie, Cursor cursor) { int rowsReturned = cursor == null ? 0 : cursor.getCount(); if (rowsReturned != 1) { throw new SQLiteDatabaseCorruptException ("Returned " + rowsReturned + " rows for uri " + uri + "where 1 expected."); } cursor.moveToFirst(); final ContentValues values = new ContentValues(); DatabaseUtils.cursorRowToContentValues(cursor, values); values.remove(FilteredNumberCompat.getIdColumnName()); startDelete(NO_TOKEN, new Listener() { @Override public void onDeleteComplete(int token, Object cookie, int result) { if (listener != null) { listener.onUnblockComplete(result, values); } } }, uri, null, null); } }, uri, null, null, null, null);
PinSpec(@NonNull Cursor cursor) { ContentValues contentValues = new ContentValues(); DatabaseUtils.cursorRowToContentValues(cursor, contentValues); setId(contentValues.getAsLong(PinDatabase.COLUMN_ID)); setTitle(contentValues.getAsString(PinDatabase.COLUMN_TITLE)); setContent(contentValues.getAsString(PinDatabase.COLUMN_CONTENT)); setVisibility(contentValues.getAsInteger(PinDatabase.COLUMN_VISIBILITY)); setPriority(contentValues.getAsInteger(PinDatabase.COLUMN_PRIORITY)); setPersistent(contentValues.getAsInteger(PinDatabase.COLUMN_PERSISTENT) != 0); setShowActions(contentValues.getAsInteger(PinDatabase.COLUMN_SHOW_ACTIONS) != 0); }