@FunctionalInterface public interface SnapshotFilter extends Predicate<DomainEventData<?>>
allow(DomainEventData) method to take snapshot data into account when
loading an aggregate. When providing an instance of this, take the following into account:
false if the snapshot data belongs to the corresponding aggregate and it does no conform to the desired format.true if the snapshot data belongs to the corresponding aggregate and conforms to the desired format.true if the snapshot data does not correspond to the desired aggregate.
Whether the DomainEventData corresponds to the right aggregate and is of the desired format, is dependent on
the Snapshotter instance being used. By default, the AggregateSnapshotter instances would be used.
In such a default set up, DomainEventData corresponding to the right aggregate means that the DomainEventData.getType() matches the aggregate's type. If DomainEventData is of the desired format
should be based on the EventData.getPayload(), which contains the entire aggregate state.
| Modifier and Type | Method and Description |
|---|---|
default boolean |
allow(DomainEventData<?> snapshotData)
Function applied to filter out snapshot data in the form of a
DomainEventData. |
static SnapshotFilter |
allowAll()
A
SnapshotFilter implementation which allows all snapshots. |
default SnapshotFilter |
combine(SnapshotFilter other)
Combines
this SnapshotFilter with the give other filter in an "AND" operation,
effectively validating whether both return true on a allow(DomainEventData) call of each. |
static SnapshotFilter |
rejectAll()
A
SnapshotFilter implementation which rejects all snapshots. |
default boolean allow(DomainEventData<?> snapshotData)
DomainEventData. Return true if the
data should be kept and false if it should be dropped.snapshotData - the snapshot data to verify for filteringtrue if the data should be kept and false if it should be droppeddefault SnapshotFilter combine(SnapshotFilter other)
this SnapshotFilter with the give other filter in an "AND" operation,
effectively validating whether both return true on a allow(DomainEventData) call of each.other - another SnapshotFilter instance to combine with this filter in an "AND" operationSnapshotFilter combining the this and other filters in an "AND" operationstatic SnapshotFilter allowAll()
SnapshotFilter implementation which allows all snapshots.SnapshotFilter implementation which allows all snapshotsstatic SnapshotFilter rejectAll()
SnapshotFilter implementation which rejects all snapshots.SnapshotFilter implementation which rejects all snapshotsCopyright © 2010–2023. All rights reserved.