
io.ray.streaming.api.function.internal.CollectionSourceFunction Maven / Gradle / Ivy
package io.ray.streaming.api.function.internal;
import io.ray.streaming.api.function.impl.SourceFunction;
import java.util.ArrayList;
import java.util.Collection;
/**
* The SourceFunction that fetch data from a Java Collection object.
*
* @param Type of the data output by the source.
*/
public class CollectionSourceFunction implements SourceFunction {
private Collection values;
public CollectionSourceFunction(Collection values) {
this.values = values;
}
@Override
public void init(int parallel, int index) {
}
@Override
public void run(SourceContext ctx) throws Exception {
for (T value : values) {
ctx.collect(value);
}
// empty collection
values = new ArrayList<>();
}
@Override
public void close() {
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy