package eu.dnetlib.manager.wf.nodes.stream; import java.util.stream.Stream; import eu.dnetlib.manager.wf.annotations.WfInputParam; import eu.dnetlib.manager.wf.annotations.WfOutputParam; import eu.dnetlib.manager.wf.nodes.AbstractJobNode; import eu.dnetlib.manager.wf.workflows.procs.Token; public abstract class StreamFilterNode extends AbstractJobNode { @WfInputParam private Stream inputStream; @WfOutputParam private Stream outputStream; public StreamFilterNode() { super(false); } abstract protected Stream filterStream(Stream input, Token token); @Override protected final void execute(final Token token) { outputStream = filterStream(inputStream, token); } }