Class ExternalSerializer<I,E>
java.lang.Object
org.apache.flink.api.common.typeutils.TypeSerializer<E>
org.apache.flink.table.runtime.typeutils.ExternalSerializer<I,E>
- Type Parameters:
I- internal data structureE- external data structure
- All Implemented Interfaces:
Serializable
@Internal
public final class ExternalSerializer<I,E>
extends org.apache.flink.api.common.typeutils.TypeSerializer<E>
A serializer that can serialize and deserialize all data structures defined by a
DataType.
This class combines DataStructureConverters and InternalSerializers into one
entity. The serialized binary format is always an internal binary format.
Serializing null in the top-level is not supported.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classTypeSerializerSnapshotforExternalSerializer. -
Method Summary
Modifier and TypeMethodDescriptionvoidcopy(org.apache.flink.core.memory.DataInputView source, org.apache.flink.core.memory.DataOutputView target) deserialize(E reuse, org.apache.flink.core.memory.DataInputView source) deserialize(org.apache.flink.core.memory.DataInputView source) org.apache.flink.api.common.typeutils.TypeSerializer<E>booleanorg.apache.flink.table.types.DataTypeintinthashCode()booleanbooleanstatic <I,E> ExternalSerializer<I, E> of(org.apache.flink.table.types.DataType dataType) Creates an instance of aExternalSerializerdefined by the givenDataType.static <I,E> ExternalSerializer<I, E> of(org.apache.flink.table.types.DataType dataType, boolean isInternalInput) Creates an instance of aExternalSerializerdefined by the givenDataType.voidorg.apache.flink.api.common.typeutils.TypeSerializerSnapshot<E>
-
Method Details
-
of
Creates an instance of aExternalSerializerdefined by the givenDataType. -
of
public static <I,E> ExternalSerializer<I,E> of(org.apache.flink.table.types.DataType dataType, boolean isInternalInput) Creates an instance of aExternalSerializerdefined by the givenDataType. -
getDataType
public org.apache.flink.table.types.DataType getDataType() -
isInternalInput
public boolean isInternalInput() -
isImmutableType
public boolean isImmutableType()- Specified by:
isImmutableTypein classorg.apache.flink.api.common.typeutils.TypeSerializer<E>
-
duplicate
- Specified by:
duplicatein classorg.apache.flink.api.common.typeutils.TypeSerializer<E>
-
createInstance
- Specified by:
createInstancein classorg.apache.flink.api.common.typeutils.TypeSerializer<E>
-
copy
- Specified by:
copyin classorg.apache.flink.api.common.typeutils.TypeSerializer<E>
-
copy
- Specified by:
copyin classorg.apache.flink.api.common.typeutils.TypeSerializer<E>
-
getLength
public int getLength()- Specified by:
getLengthin classorg.apache.flink.api.common.typeutils.TypeSerializer<E>
-
serialize
public void serialize(E record, org.apache.flink.core.memory.DataOutputView target) throws IOException - Specified by:
serializein classorg.apache.flink.api.common.typeutils.TypeSerializer<E>- Throws:
IOException
-
deserialize
- Specified by:
deserializein classorg.apache.flink.api.common.typeutils.TypeSerializer<E>- Throws:
IOException
-
deserialize
- Specified by:
deserializein classorg.apache.flink.api.common.typeutils.TypeSerializer<E>- Throws:
IOException
-
copy
public void copy(org.apache.flink.core.memory.DataInputView source, org.apache.flink.core.memory.DataOutputView target) throws IOException - Specified by:
copyin classorg.apache.flink.api.common.typeutils.TypeSerializer<E>- Throws:
IOException
-
equals
- Specified by:
equalsin classorg.apache.flink.api.common.typeutils.TypeSerializer<E>
-
hashCode
public int hashCode()- Specified by:
hashCodein classorg.apache.flink.api.common.typeutils.TypeSerializer<E>
-
snapshotConfiguration
- Specified by:
snapshotConfigurationin classorg.apache.flink.api.common.typeutils.TypeSerializer<E>
-