/** * Same as {@link #copyAndRemove(Object)} but for an arbitrary number of entries. */ public CopyOnWriteHashMap<K, V> copyAndRemoveAll(Collection<?> keys) { CopyOnWriteHashMap<K, V> result = this; for (Object key : keys) { result = result.copyAndRemove(key); } return result; }
/** * Same as {@link #copyAndRemove(Object)} but for an arbitrary number of entries. */ public CopyOnWriteHashMap<K, V> copyAndRemoveAll(Collection<?> keys) { CopyOnWriteHashMap<K, V> result = this; for (Object key : keys) { result = result.copyAndRemove(key); } return result; }
/** * Same as {@link #copyAndRemove(Object)} but for an arbitrary number of entries. */ public CopyOnWriteHashMap<K, V> copyAndRemoveAll(Collection<?> keys) { CopyOnWriteHashMap<K, V> result = this; for (Object key : keys) { result = result.copyAndRemove(key); } return result; }
/** * Same as {@link #copyAndRemove(Object)} but for an arbitrary number of entries. */ public CopyOnWriteHashMap<K, V> copyAndRemoveAll(Collection<?> keys) { CopyOnWriteHashMap<K, V> result = this; for (Object key : keys) { result = result.copyAndRemove(key); } return result; }
/** * Same as {@link #copyAndRemove(Object)} but for an arbitrary number of entries. */ public CopyOnWriteHashMap<K, V> copyAndRemoveAll(Collection<?> keys) { CopyOnWriteHashMap<K, V> result = this; for (Object key : keys) { result = result.copyAndRemove(key); } return result; }
/** * Copy the current set and return a copy that removes <code>entry</code> * if it exists. */ public CopyOnWriteHashSet<T> copyAndRemove(Object entry) { final CopyOnWriteHashMap<T, Boolean> updated = map.copyAndRemove(entry); if (updated == map) { return this; } else { return new CopyOnWriteHashSet<>(updated); } }