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 through the
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
CopyOnWriteStateMap provides 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 boolean isReleased()
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–2021 The Apache Software Foundation. All rights reserved.