K- type of key
N- type of namespace
S- type of state
public class CopyOnWriteStateMapSnapshot<K,N,S> extends StateMapSnapshot<K,N,S,CopyOnWriteStateMap<K,N,S>>
IMPORTANT: Please notice that snapshot integrity of entries in this class rely on proper copy-on-write semantics
CopyOnWriteStateMap that created the snapshot object, but all objects in this snapshot must be considered
as READ-ONLY!. The reason is that the objects held by this class may or may not be deep copies of original objects
that may still used in the
CopyOnWriteStateMap. This depends for each entry on whether or not it was subject to
copy-on-write operations by the
CopyOnWriteStateMap. Phrased differently: the
copy-on-write isolation for this snapshot, but this snapshot does not isolate modifications from the
|Modifier and Type||Method and Description|
Release the snapshot.
Writes the state in this snapshot to output.
public void release()
public void writeState(TypeSerializer<K> keySerializer, TypeSerializer<N> namespaceSerializer, TypeSerializer<S> stateSerializer, @Nonnull DataOutputView dov, @Nullable StateSnapshotTransformer<S> stateSnapshotTransformer) throws IOException
keySerializer- the key serializer.
namespaceSerializer- the namespace serializer.
stateSerializer- the state serializer.
dov- the output.
stateSnapshotTransformer- state transformer, and can be null.
IOException- on write-related problems.
Copyright © 2014–2020 The Apache Software Foundation. All rights reserved.