Interface IEventSeedingBuilder

Namespace
Cratis.Chronicle.Seeding
Assembly
Cratis.Chronicle.dll

Defines a builder for seeding events in the event store.

public interface IEventSeedingBuilder
Extension Methods

Methods

ForEventSource(EventSourceId, EventStreamType, EventStreamId, IEnumerable<object>, EventSourceType?)

Seeds events onto an event stream.

IEventSeedingBuilder ForEventSource(EventSourceId eventSourceId, EventStreamType eventStreamType, EventStreamId eventStreamId, IEnumerable<object> events, EventSourceType? eventSourceType = null)

Parameters

eventSourceId EventSourceId

The event source identifier.

eventStreamType EventStreamType

The stream type.

eventStreamId EventStreamId

The stream identifier.

events IEnumerable<object>

The events to seed.

eventSourceType EventSourceType

The optional source type.

Returns

IEventSeedingBuilder

The builder for continuation.

Exceptions

EventSeedingRoutingNotSupported

The implementation does not support routing.

ForEventSource(EventSourceId, IEnumerable<object>)

Seed events for a specific event source id with multiple event types. By default, seed data applies to all namespaces globally.

IEventSeedingBuilder ForEventSource(EventSourceId eventSourceId, IEnumerable<object> events)

Parameters

eventSourceId EventSourceId

The event source id to seed for.

events IEnumerable<object>

Collection of events to seed.

Returns

IEventSeedingBuilder

The builder for continuation.

ForEvents(IEnumerable<EventForEventSourceId>)

Seeds individually routed events, merging their tags with event-type tags.

IEventSeedingBuilder ForEvents(IEnumerable<EventForEventSourceId> events)

Parameters

events IEnumerable<EventForEventSourceId>

The routed events.

Returns

IEventSeedingBuilder

The builder for continuation.

Exceptions

EventSeedingRoutingNotSupported

The implementation does not support routing.

ForNamespace(EventStoreNamespaceName)

Configure seed data to be specific to a namespace.

IEventSeedingScopeBuilder ForNamespace(EventStoreNamespaceName @namespace)

Parameters

namespace EventStoreNamespaceName

The namespace to seed for.

Returns

IEventSeedingScopeBuilder

A scoped builder for namespace-specific seed data.

For<TEvent>(EventSourceId, EventStreamType, EventStreamId, IEnumerable<TEvent>, EventSourceType?)

Seeds events of one type onto an event stream.

IEventSeedingBuilder For<TEvent>(EventSourceId eventSourceId, EventStreamType eventStreamType, EventStreamId eventStreamId, IEnumerable<TEvent> events, EventSourceType? eventSourceType = null) where TEvent : class

Parameters

eventSourceId EventSourceId

The event source identifier.

eventStreamType EventStreamType

The stream type.

eventStreamId EventStreamId

The stream identifier.

events IEnumerable<TEvent>

The events to seed.

eventSourceType EventSourceType

The optional source type.

Returns

IEventSeedingBuilder

The builder for continuation.

Type Parameters

TEvent

The event type.

Exceptions

EventSeedingRoutingNotSupported

The implementation does not support routing.

For<TEvent>(EventSourceId, IEnumerable<TEvent>)

Seed events for a specific event type and event source id. By default, seed data applies to all namespaces globally.

IEventSeedingBuilder For<TEvent>(EventSourceId eventSourceId, IEnumerable<TEvent> events) where TEvent : class

Parameters

eventSourceId EventSourceId

The event source id to seed for.

events IEnumerable<TEvent>

Collection of events to seed.

Returns

IEventSeedingBuilder

The builder for continuation.

Type Parameters

TEvent

Type of event to seed.