T - the type of the values being transcodedpublic abstract class DeterministicStandardCoder<T> extends StandardCoder<T>
DeterministicStandardCoder is a StandardCoder that is
deterministic, in the sense that for objects considered equal
according to Object.equals(Object), the encoded bytes are
also equal.Coder.Context, Coder.NonDeterministicException| Modifier | Constructor and Description |
|---|---|
protected |
DeterministicStandardCoder() |
| Modifier and Type | Method and Description |
|---|---|
void |
verifyDeterministic()
Throw
Coder.NonDeterministicException if the coding is not deterministic. |
asCloudObject, consistentWithEquals, equals, getAllowedEncodings, getComponents, getEncodedElementByteSize, getEncodingId, hashCode, isRegisterByteSizeObserverCheap, registerByteSizeObserver, structuralValue, toString, verifyDeterministic, verifyDeterministicclone, finalize, getClass, notify, notifyAll, wait, wait, waitdecode, encode, getCoderArgumentspublic void verifyDeterministic()
throws Coder.NonDeterministicException
Coder.NonDeterministicException if the coding is not deterministic.
In order for a Coder to be considered deterministic,
the following must be true:
Object.equals()
or Comparable.compareTo(), if supported) have the same
encoding.
Coder always produces a canonical encoding, which is the
same for an instance of an object even if produced on different
computers at different times.
NonDeterministicException - never, unless overridden. A
DeterministicStandardCoder is presumed deterministic.Coder.NonDeterministicException - if this coder is not deterministic.