ElasticsearchEventStore

class ElasticsearchEventStore(elasticsearchClient: ReactiveElasticsearchClient, val batchOptions: BatchOptions? = null, refreshPolicy: Refresh = Refresh.True, batchSize: Int = DEFAULT_BATCH_SIZE, metrics: WowMetrics = WowMetrics.NONE, indexNaming: ElasticsearchIndexNaming) : AbstractEventStore

Constructors

Link copied to clipboard
constructor(elasticsearchClient: ReactiveElasticsearchClient, batchOptions: BatchOptions? = null, refreshPolicy: Refresh = Refresh.True, batchSize: Int = DEFAULT_BATCH_SIZE, metrics: WowMetrics = WowMetrics.NONE, indexNaming: ElasticsearchIndexNaming)
constructor(elasticsearchClient: ReactiveElasticsearchClient, batchOptions: BatchOptions? = null, refreshPolicy: Refresh = Refresh.True, batchSize: Int = DEFAULT_BATCH_SIZE, metrics: WowMetrics = WowMetrics.NONE)

The constructor from before the index prefix, kept for binary compatibility: Wow's unprefixed names.

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard
Link copied to clipboard

The batch writer of this store's event streams, flushed by the runtime after its dispatchers stop (me.ahoo.wow.runtime.RuntimeResources); RuntimeResource.NONE when the store writes directly.

Functions

Link copied to clipboard
open override fun close()
Link copied to clipboard
open override fun existsRequestId(aggregateId: AggregateId, requestId: String): Mono<Boolean>

A bounded lookup on the indexed requestId field instead of the interface default, which loads the whole stream. The idempotency check calls it on the command path.

Link copied to clipboard
open override fun last(aggregateId: AggregateId): Mono<DomainEventStream>
Link copied to clipboard
open override fun scanAggregateId(namedAggregate: NamedAggregate, afterId: String, limit: Int): Flux<AggregateId>