Interface JournalStateStore
- All Known Subinterfaces:
ExportedJournalStateStore,SubscriptionJournalStateStore
- All Known Implementing Classes:
BandanaJournalStateStore,CachingJournalStateStore,ClientSubscriptionJournalStateStore,FilesystemJournalStateStore,OpenSearchJournalStateStore,ServerSubscriptionJournalStateStore
public interface JournalStateStore
Provides per node persistence for saving the id of the most recent
entry that has been retrieved from the journal.
- Since:
- 5.6
-
Method Summary
Modifier and TypeMethodDescriptionlonggetMostRecentId(@NonNull JournalIdentifier journalId) Returns the most recent id for a journal or 0 if no id has been stored yet.voidResets the state of all journals.voidsetMostRecentId(@NonNull JournalIdentifier journalId, long id) Set the most recent identifier for a journal.
-
Method Details
-
getMostRecentId
long getMostRecentId(@NonNull JournalIdentifier journalId) throws org.springframework.dao.DataAccessException Returns the most recent id for a journal or 0 if no id has been stored yet.New journal is automatically created if a journal with the given name does not exists.
- Parameters:
journalId- id of the journal- Returns:
- most recent id for a journal or 0 if no id has been stored yet
- Throws:
org.springframework.dao.DataAccessException- if reading the id failed
-
setMostRecentId
void setMostRecentId(@NonNull JournalIdentifier journalId, long id) throws org.springframework.dao.DataAccessException Set the most recent identifier for a journal.New journal is automatically created if a journal with the given name does not exists.
Only positive identifiers (e.g. > 0) can be stored.
- Parameters:
journalId- id of the journalid- identifier to store as the most recent id- Throws:
org.springframework.dao.DataAccessException- if persisting the id failed.
-
resetAllJournalStates
void resetAllJournalStates() throws org.springframework.dao.DataAccessExceptionResets the state of all journals.After calling this method all
getMostRecentId(JournalIdentifier)calls will initially return 0.- Throws:
org.springframework.dao.DataAccessException- if reset fails
-