Class SocketSource
java.lang.Object
org.apache.flink.table.examples.java.connectors.SocketSource
- All Implemented Interfaces:
Serializable,org.apache.flink.api.connector.source.Source<org.apache.flink.table.data.RowData,,SocketSource.DummySplit, SocketSource.DummyCheckpoint> org.apache.flink.api.connector.source.SourceReaderFactory<org.apache.flink.table.data.RowData,,SocketSource.DummySplit> org.apache.flink.api.java.typeutils.ResultTypeQueryable<org.apache.flink.table.data.RowData>
public final class SocketSource
extends Object
implements org.apache.flink.api.connector.source.Source<org.apache.flink.table.data.RowData,SocketSource.DummySplit,SocketSource.DummyCheckpoint>, org.apache.flink.api.java.typeutils.ResultTypeQueryable<org.apache.flink.table.data.RowData>
The
SocketSource opens a socket and consumes bytes.
It splits records by the given byte delimiter (`\n` by default) and delegates the decoding to
a pluggable DeserializationSchema.
Note: This is only an example and should not be used in production. The source is not fault-tolerant and can only work with a parallelism of 1.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classPlaceholder because the SocketSource does not support fault-tolerance and thus does not require actual checkpointing.static classPlaceholder because the socket itself implicitly represents the only split and does not require an actual split object. -
Constructor Summary
ConstructorsConstructorDescriptionSocketSource(String hostname, int port, byte byteDelimiter, org.apache.flink.api.common.serialization.DeserializationSchema<org.apache.flink.table.data.RowData> deserializer) -
Method Summary
Modifier and TypeMethodDescriptionorg.apache.flink.api.connector.source.SplitEnumerator<SocketSource.DummySplit,SocketSource.DummyCheckpoint> createEnumerator(org.apache.flink.api.connector.source.SplitEnumeratorContext<SocketSource.DummySplit> enumContext) org.apache.flink.api.connector.source.SourceReader<org.apache.flink.table.data.RowData,SocketSource.DummySplit> createReader(org.apache.flink.api.connector.source.SourceReaderContext readerContext) org.apache.flink.api.connector.source.Boundednessorg.apache.flink.core.io.SimpleVersionedSerializer<SocketSource.DummyCheckpoint>org.apache.flink.api.common.typeinfo.TypeInformation<org.apache.flink.table.data.RowData>org.apache.flink.core.io.SimpleVersionedSerializer<SocketSource.DummySplit>org.apache.flink.api.connector.source.SplitEnumerator<SocketSource.DummySplit,SocketSource.DummyCheckpoint> restoreEnumerator(org.apache.flink.api.connector.source.SplitEnumeratorContext<SocketSource.DummySplit> enumContext, SocketSource.DummyCheckpoint checkpoint) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.flink.api.connector.source.Source
declareWatermarks
-
Constructor Details
-
SocketSource
public SocketSource(String hostname, int port, byte byteDelimiter, org.apache.flink.api.common.serialization.DeserializationSchema<org.apache.flink.table.data.RowData> deserializer)
-
-
Method Details
-
getProducedType
public org.apache.flink.api.common.typeinfo.TypeInformation<org.apache.flink.table.data.RowData> getProducedType()- Specified by:
getProducedTypein interfaceorg.apache.flink.api.java.typeutils.ResultTypeQueryable<org.apache.flink.table.data.RowData>
-
getBoundedness
public org.apache.flink.api.connector.source.Boundedness getBoundedness()- Specified by:
getBoundednessin interfaceorg.apache.flink.api.connector.source.Source<org.apache.flink.table.data.RowData,SocketSource.DummySplit, SocketSource.DummyCheckpoint>
-
createEnumerator
public org.apache.flink.api.connector.source.SplitEnumerator<SocketSource.DummySplit,SocketSource.DummyCheckpoint> createEnumerator(org.apache.flink.api.connector.source.SplitEnumeratorContext<SocketSource.DummySplit> enumContext) throws Exception - Specified by:
createEnumeratorin interfaceorg.apache.flink.api.connector.source.Source<org.apache.flink.table.data.RowData,SocketSource.DummySplit, SocketSource.DummyCheckpoint> - Throws:
Exception
-
restoreEnumerator
public org.apache.flink.api.connector.source.SplitEnumerator<SocketSource.DummySplit,SocketSource.DummyCheckpoint> restoreEnumerator(org.apache.flink.api.connector.source.SplitEnumeratorContext<SocketSource.DummySplit> enumContext, SocketSource.DummyCheckpoint checkpoint) throws Exception - Specified by:
restoreEnumeratorin interfaceorg.apache.flink.api.connector.source.Source<org.apache.flink.table.data.RowData,SocketSource.DummySplit, SocketSource.DummyCheckpoint> - Throws:
Exception
-
getSplitSerializer
public org.apache.flink.core.io.SimpleVersionedSerializer<SocketSource.DummySplit> getSplitSerializer()- Specified by:
getSplitSerializerin interfaceorg.apache.flink.api.connector.source.Source<org.apache.flink.table.data.RowData,SocketSource.DummySplit, SocketSource.DummyCheckpoint>
-
getEnumeratorCheckpointSerializer
public org.apache.flink.core.io.SimpleVersionedSerializer<SocketSource.DummyCheckpoint> getEnumeratorCheckpointSerializer()- Specified by:
getEnumeratorCheckpointSerializerin interfaceorg.apache.flink.api.connector.source.Source<org.apache.flink.table.data.RowData,SocketSource.DummySplit, SocketSource.DummyCheckpoint>
-
createReader
public org.apache.flink.api.connector.source.SourceReader<org.apache.flink.table.data.RowData,SocketSource.DummySplit> createReader(org.apache.flink.api.connector.source.SourceReaderContext readerContext) throws Exception - Specified by:
createReaderin interfaceorg.apache.flink.api.connector.source.SourceReaderFactory<org.apache.flink.table.data.RowData,SocketSource.DummySplit> - Throws:
Exception
-