public class PulsarTableSerializationSchema extends Object implements PulsarSerializationSchema<org.apache.flink.table.data.RowData>
PulsarSerializationSchema implementation for Pulsar SQL sink connector. It is
responsible for retrieving fields from Flink row and serialize into Pulsar message key or body,
and set necessary metadata fields as required.| Modifier and Type | Class and Description |
|---|---|
static interface |
PulsarTableSerializationSchema.MetadataConverter
A class to read fields from Flink row and map to a Pulsar metadata.
|
| Constructor and Description |
|---|
PulsarTableSerializationSchema(org.apache.flink.api.common.serialization.SerializationSchema<org.apache.flink.table.data.RowData> keySerialization,
org.apache.flink.table.data.RowData.FieldGetter[] keyFieldGetters,
org.apache.flink.api.common.serialization.SerializationSchema<org.apache.flink.table.data.RowData> valueSerialization,
org.apache.flink.table.data.RowData.FieldGetter[] valueFieldGetters,
PulsarWritableMetadata writableMetadata) |
| Modifier and Type | Method and Description |
|---|---|
void |
open(org.apache.flink.api.common.serialization.SerializationSchema.InitializationContext initializationContext,
PulsarSinkContext sinkContext,
SinkConfiguration sinkConfiguration)
Initialization method for the schema.
|
PulsarMessage<?> |
serialize(org.apache.flink.table.data.RowData consumedRow,
PulsarSinkContext sinkContext)
Serializes the given element into bytes and
Schema.BYTES. |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitflinkSchema, pulsarSchema, pulsarSchema, pulsarSchemapublic PulsarTableSerializationSchema(@Nullable org.apache.flink.api.common.serialization.SerializationSchema<org.apache.flink.table.data.RowData> keySerialization, org.apache.flink.table.data.RowData.FieldGetter[] keyFieldGetters, org.apache.flink.api.common.serialization.SerializationSchema<org.apache.flink.table.data.RowData> valueSerialization, org.apache.flink.table.data.RowData.FieldGetter[] valueFieldGetters, PulsarWritableMetadata writableMetadata)
public void open(org.apache.flink.api.common.serialization.SerializationSchema.InitializationContext initializationContext,
PulsarSinkContext sinkContext,
SinkConfiguration sinkConfiguration)
throws Exception
PulsarSerializationSchemaPulsarSerializationSchema.serialize(Object, PulsarSinkContext) and thus suitable for one-time setup work.
The provided SerializationSchema.InitializationContext can be used to access additional features such
as registering user metrics.
open in interface PulsarSerializationSchema<org.apache.flink.table.data.RowData>initializationContext - Contextual information that can be used during initialization.sinkContext - Runtime information i.e. partitions, subtaskId.sinkConfiguration - All the configure options for the Pulsar sink. You can add custom
options.Exceptionpublic PulsarMessage<?> serialize(org.apache.flink.table.data.RowData consumedRow, PulsarSinkContext sinkContext)
PulsarSerializationSchemaSchema.BYTES. Or you can convert it to a
new type of instance with a Schema. The return value PulsarMessage can be
built by PulsarMessageBuilder. All the methods provided in the PulsarMessageBuilder is just equals to the TypedMessageBuilder.serialize in interface PulsarSerializationSchema<org.apache.flink.table.data.RowData>consumedRow - Element to be serialized.sinkContext - Context to provide extra information.Copyright © 2014–2022 The Apache Software Foundation. All rights reserved.