Class OpenSearchJournalStateStore
java.lang.Object
com.atlassian.confluence.plugins.opensearch.OpenSearchJournalStateStore
- All Implemented Interfaces:
JournalStateStore,ExportedJournalStateStore
ExportedJournalStateStore which stores journal ids in OpenSearch- Since:
- 8.6
-
Nested Class Summary
Nested Classes -
Constructor Summary
ConstructorsConstructorDescriptionOpenSearchJournalStateStore(org.opensearch.client.opensearch.OpenSearchClient openSearchClient, OpenSearchConfig openSearchConfig, io.github.resilience4j.retry.RetryRegistry retryRegistry) -
Method Summary
Modifier and TypeMethodDescriptionvoidCreates journal index after store is createdlonggetMostRecentId(@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.
-
Constructor Details
-
OpenSearchJournalStateStore
public OpenSearchJournalStateStore(org.opensearch.client.opensearch.OpenSearchClient openSearchClient, OpenSearchConfig openSearchConfig, io.github.resilience4j.retry.RetryRegistry retryRegistry)
-
-
Method Details
-
createJournalIndex
@PostConstruct public void createJournalIndex()Creates journal index after store is created -
setMostRecentId
public void setMostRecentId(@NonNull JournalIdentifier journalId, long id) throws org.springframework.dao.DataAccessException Description copied from interface:JournalStateStoreSet 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.
- Specified by:
setMostRecentIdin interfaceJournalStateStore- Parameters:
journalId- id of the journalid- identifier to store as the most recent id- Throws:
org.springframework.dao.DataAccessException- if persisting the id failed.
-
getMostRecentId
public long getMostRecentId(@NonNull JournalIdentifier journalId) throws org.springframework.dao.DataAccessException Description copied from interface:JournalStateStoreReturns 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.
- Specified by:
getMostRecentIdin interfaceJournalStateStore- 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
-
resetAllJournalStates
public void resetAllJournalStates() throws org.springframework.dao.DataAccessExceptionDescription copied from interface:JournalStateStoreResets the state of all journals.After calling this method all
JournalStateStore.getMostRecentId(JournalIdentifier)calls will initially return 0.- Specified by:
resetAllJournalStatesin interfaceJournalStateStore- Throws:
org.springframework.dao.DataAccessException- if reset fails
-