package org.infinispan.commons.util; import java.util.function.Function; /** * A iterator that maps each value to the output of the Function. Note that the remove is supported if the iterator * originally supported remove. * @author William Burns * @since 8.0 */ public class CloseableIteratorMapper<E, S> extends IteratorMapper<E, S> implements CloseableIterator<S> { private final CloseableIterator<? extends E> iterator; public CloseableIteratorMapper(CloseableIterator<? extends E> iterator, Function<? super E, ? extends S> function) { super(iterator, function); this.iterator = iterator; } @Override public void close() { iterator.close(); } }