EventQueryBackend

class EventQueryBackend(store: (AggregateType) -> String? = { null }, prepare: (AggregateType) -> Unit = {}, indexes: (AggregateType, QueryIndexPlan) -> QueryIndexReport? = null, manages: (AggregateType) -> Boolean = { true }, val bindings: QueryBindings<AggregateType>)

The events query backend of the node: the bindings of each aggregate type's events backend and storage facts, none for a type no backend serves (its events are then not queried), and the store its queries run on, null for the application's own backend. For a store whose events queries manage indexes (me.ahoo.wow.query.store.EventQueries), how it prepares a type's log and manages the indexes of its access attributes at startup. It is not itself QueryBindings, so that it is never taken for the application's snapshot bindings bean.

Constructors

Link copied to clipboard
constructor(store: (AggregateType) -> String? = { null }, prepare: (AggregateType) -> Unit = {}, indexes: (AggregateType, QueryIndexPlan) -> QueryIndexReport? = null, manages: (AggregateType) -> Boolean = { true }, bindings: QueryBindings<AggregateType>)

Types

Link copied to clipboard

Properties

Link copied to clipboard
Link copied to clipboard

Whether the host manages this backend's indexes; an application's own backend manages its own.

Functions

Link copied to clipboard

The binding of type's events backend, or null when none serves them.

Link copied to clipboard

Manages plan, the indexes of type's access attributes on its events model, as its store's ddl says.

Link copied to clipboard

Whether the host manages the indexes of type's log: its events queries run on a store that manages them, not an index a Sink writes (Elasticsearch's), whose mapping indexes the attributes itself.

Link copied to clipboard

Makes sure type's log exists, so an index has a table or a collection to be on.

Link copied to clipboard

The store type's events queries run on, or null when the host does not know it.