public interface Delta
DataOutput and DataInput parameters.| Modifier and Type | Method and Description |
|---|---|
void |
fromDelta(DataInput in)
This method is invoked on an existing application object when an update is received as a delta.
|
default boolean |
getForceRecalculateSize()
By default, entry sizes are not recalculated when deltas are applied.
|
boolean |
hasDelta()
Returns true if this object has pending changes it can write out as a delta.
|
void |
toDelta(DataOutput out)
This method is invoked on an application object at the delta sender, if GemFire determines the
presence of a delta by calling
hasDelta() on the object. |
boolean hasDelta()
void toDelta(DataOutput out) throws IOException
hasDelta() on the object. The delta is written to
the DataOutput object provided by GemFire.
Any delta state should be reset in this method.
IOExceptionvoid fromDelta(DataInput in) throws IOException, InvalidDeltaException
InvalidDeltaException when the delta in the DataInput
cannot be applied to the object. GemFire automatically handles an InvalidDeltaException
by reattempting the update by sending the full application object.IOExceptionInvalidDeltaExceptiondefault boolean getForceRecalculateSize()
There is a system property, gemfire.DELTAS_RECALCULATE_SIZE, which can be used to cause all deltas to trigger entry size recalculation when deltas are applied. By default, this is set to 'false' because of potential performance impacts when every delta triggers a recalculation.
To allow entry size recalculation on a per-delta basis, classes that extend the Delta interface should override this method to return 'true'. This may impact performance of specific delta types, but will not globally affect the performance of other Geode delta operations.