public static void removeFromList(final Collection<Geocache> caches, final int oldListId) {
        withAccessLock(() -> {

            init();

            final SQLiteStatement remove = PreparedStatement.REMOVE_FROM_LIST.getStatement();

            database.beginTransaction();
            try {
                for (final Geocache cache : caches) {
                    remove.bindLong(1, oldListId);
                    remove.bindString(2, cache.getGeocode());
                    remove.execute();
                    cache.getLists().remove(oldListId);
                }
                database.setTransactionSuccessful();
            } finally {
                database.endTransaction();
            }
        });
    }
@param listId  List to change
@param prevent value
@return Number of lists changed
main/src/main/java/cgeo/geocaching/storage/DataStore.java