T - The type of elements returned by this function.public class FromElementsFunction<T> extends Object implements SourceFunction<T>, CheckpointedAsynchronously<Integer>
Upon construction, this source function serializes the elements using Flink's type information. That way, any object transport using Java serialization will not be affected by the serializability of the elements.
SourceFunction.SourceContext<T>| Constructor and Description |
|---|
FromElementsFunction(TypeSerializer<T> serializer,
Iterable<T> elements) |
FromElementsFunction(TypeSerializer<T> serializer,
T... elements) |
| Modifier and Type | Method and Description |
|---|---|
void |
cancel()
Cancels the source.
|
static <OUT> void |
checkCollection(Collection<OUT> elements,
Class<OUT> viewedAs)
Verifies that all elements in the collection are non-null, and are of the given class, or
a subclass thereof.
|
int |
getNumElements()
Gets the number of elements produced in total by this function.
|
int |
getNumElementsEmitted()
Gets the number of elements emitted so far.
|
void |
restoreState(Integer state)
Restores the state of the function or operator to that of a previous checkpoint.
|
void |
run(SourceFunction.SourceContext<T> ctx)
Starts the source.
|
Integer |
snapshotState(long checkpointId,
long checkpointTimestamp)
Gets the current state of the function of operator.
|
public FromElementsFunction(TypeSerializer<T> serializer, T... elements) throws IOException
IOExceptionpublic FromElementsFunction(TypeSerializer<T> serializer, Iterable<T> elements) throws IOException
IOExceptionpublic void run(SourceFunction.SourceContext<T> ctx) throws Exception
SourceFunctionCollector parameter to emit
elements. Sources that implement
Checkpointed must lock on the
checkpoint lock (using a synchronized block) before updating internal state and/or emitting
elements. Also, the update of state and emission of elements must happen in the same
synchronized block.run in interface SourceFunction<T>ctx - The context for interaction with the outside world.Exceptionpublic void cancel()
SourceFunctionSourceFunction.run(org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext<T>) method. You need to ensure that the source will break out of this loop. This
can be achieved by having a volatile field "isRunning" that is checked in the loop and that
is set to false in this method.cancel in interface SourceFunction<T>public int getNumElements()
public int getNumElementsEmitted()
public Integer snapshotState(long checkpointId, long checkpointTimestamp)
CheckpointedsnapshotState in interface Checkpointed<Integer>checkpointId - The ID of the checkpoint.checkpointTimestamp - The timestamp of the checkpoint, as derived by
System.currentTimeMillis() on the JobManager.public void restoreState(Integer state)
CheckpointedrestoreState in interface Checkpointed<Integer>state - The state to be restored.public static <OUT> void checkCollection(Collection<OUT> elements, Class<OUT> viewedAs)
OUT - The generic type of the collection to be checked.elements - The collection to check.viewedAs - The class to which the elements must be assignable to.Copyright © 2014–2016 The Apache Software Foundation. All rights reserved.