public static void setCacheIcons(final Collection<Geocache> caches, final int newCacheIcon) {
        if (caches.isEmpty()) {
            return;
        }
        withAccessLock(() -> {

            final SQLiteStatement add = PreparedStatement.SET_CACHE_ICON.getStatement();

            database.beginTransaction();
            try {
                for (final Geocache cache : caches) {
                    add.bindLong(1, newCacheIcon);
                    add.bindString(2, cache.getGeocode());
                    add.execute();

                    cache.setAssignedEmoji(newCacheIcon);
                }
                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