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

29 lines
606 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 StreamMapperNode<T, K> extends AbstractJobNode {
@WfInputParam
private Stream<T> inputStream;
@WfOutputParam
private Stream<K> outputStream;
public StreamMapperNode() {
super(false);
}
abstract protected Stream<K> mapStream(Stream<T> input);
@Override
protected void execute() {
outputStream = mapStream(inputStream);
}
}