dnet-applications/libs/dnet-wf-service/src/main/java/eu/dnetlib/manager/wf/nodes/stream/StreamFilterNode.java

29 lines
615 B
Java

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;
public abstract class StreamFilterNode<T> extends AbstractJobNode {
@WfInputParam
private Stream<T> inputStream;
@WfOutputParam
private Stream<T> outputStream;
public StreamFilterNode() {
super(false);
}
abstract protected Stream<T> filterStream(Stream<T> input);
@Override
protected final void execute() {
outputStream = filterStream(inputStream);
}
}