package eu.ehri.project.indexing.sink.impl; import com.google.common.collect.Lists; import eu.ehri.project.indexing.sink.Sink; import java.util.List; /** * Aggregate several sink together. */ public class MultiSink<T, W extends Sink<? super T>> implements Sink<T> { private final List<W> writers; public MultiSink(List<W> writers) { this.writers = Lists.newArrayList(writers); } public void write(T t) throws SinkException { for (W writer : writers) { writer.write(t); } } public void close() throws SinkException { for (W writer : writers) { writer.close(); } } }