Class ValueAndTimestampSerializer<V>
- java.lang.Object
-
- org.apache.kafka.streams.state.internals.ValueAndTimestampSerializer<V>
-
- All Implemented Interfaces:
java.io.Closeable
,java.lang.AutoCloseable
,org.apache.kafka.common.serialization.Serializer<ValueAndTimestamp<V>>
,WrappingNullableSerializer<ValueAndTimestamp<V>,java.lang.Void,V>
public class ValueAndTimestampSerializer<V> extends java.lang.Object implements WrappingNullableSerializer<ValueAndTimestamp<V>,java.lang.Void,V>
-
-
Field Summary
Fields Modifier and Type Field Description org.apache.kafka.common.serialization.Serializer<V>
valueSerializer
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
static boolean
compareValuesAndCheckForIncreasingTimestamp(byte[] left, byte[] right)
void
configure(java.util.Map<java.lang.String,?> configs, boolean isKey)
byte[]
serialize(java.lang.String topic, ValueAndTimestamp<V> data)
byte[]
serialize(java.lang.String topic, V data, long timestamp)
void
setIfUnset(org.apache.kafka.common.serialization.Serializer<java.lang.Void> defaultKeySerializer, org.apache.kafka.common.serialization.Serializer<V> defaultValueSerializer)
-
-
-
Field Detail
-
valueSerializer
public final org.apache.kafka.common.serialization.Serializer<V> valueSerializer
-
-
Method Detail
-
compareValuesAndCheckForIncreasingTimestamp
public static boolean compareValuesAndCheckForIncreasingTimestamp(byte[] left, byte[] right)
- Parameters:
left
- the serialized byte array of the old record in state storeright
- the serialized byte array of the new record being processed- Returns:
- true if the two serialized values are the same (excluding timestamp) or if the timestamp of right is less than left (indicating out of order record) false otherwise
-
configure
public void configure(java.util.Map<java.lang.String,?> configs, boolean isKey)
- Specified by:
configure
in interfaceorg.apache.kafka.common.serialization.Serializer<V>
-
serialize
public byte[] serialize(java.lang.String topic, ValueAndTimestamp<V> data)
- Specified by:
serialize
in interfaceorg.apache.kafka.common.serialization.Serializer<V>
-
serialize
public byte[] serialize(java.lang.String topic, V data, long timestamp)
-
close
public void close()
- Specified by:
close
in interfacejava.lang.AutoCloseable
- Specified by:
close
in interfacejava.io.Closeable
- Specified by:
close
in interfaceorg.apache.kafka.common.serialization.Serializer<V>
-
setIfUnset
public void setIfUnset(org.apache.kafka.common.serialization.Serializer<java.lang.Void> defaultKeySerializer, org.apache.kafka.common.serialization.Serializer<V> defaultValueSerializer)
- Specified by:
setIfUnset
in interfaceWrappingNullableSerializer<ValueAndTimestamp<V>,java.lang.Void,V>
-
-