Namespace Cratis.Chronicle.Events.Migrations
Classes
- EventMigrationBuilder
Represents an implementation of IEventMigrationBuilder.
- EventMigrationBuilderFor<TTarget, TSource>
Represents an implementation of IEventMigrationBuilder<TTarget, TSource> that delegates to the underlying IEventMigrationBuilder.
- EventMigrationPropertyBuilder
Represents an implementation of IEventMigrationPropertyBuilder.
- EventMigrationPropertyBuilderFor<TTarget, TSource>
Represents an implementation of IEventMigrationPropertyBuilder<TTarget, TSource> that converts expression-based property accessors to PropertyName values and delegates to the underlying IEventMigrationPropertyBuilder.
- EventTypeMigration<TUpgrade, TPrevious>
Abstract base class for type-safe event type migrations between two generations. Extracts From and To from
TUpgradeandTPrevious- each resolved via EventTypeAttribute or EventTypeGenerationForAttribute<TEventType> - validates that both resolve to the same event type id, and that the upgrade generation is exactly one more than the previous generation.
- EventTypeMigrators
Represents an implementation of IEventTypeMigrators.
- EventValueMapBuilder<TUpgrade, TPrevious>
Represents an implementation of IEventValueMapBuilder<TUpgrade, TPrevious>.
- ExplicitMigrationBindingNotSupported
The exception that is thrown when a custom provider cannot identify an opaque migration requiring new owning-registry binding.
- InvalidMigrationGenerationGap
Exception thrown when the upgrade type's generation is not exactly one more than the previous type's generation.
- MigrationGenerationsMustShareEventTypeId
The exception that is thrown when the two generations referenced by an EventTypeMigration<TUpgrade, TPrevious> resolve to different event type ids.
- MultipleMigratorsForSameEventTypeGeneration
The exception that is thrown when more than one migrator defines the migration between the same pair of generations for an event type.
- PropertyExpression
Represents a property expression key produced by an IEventMigrationPropertyBuilder operation.
- PropertyName
Represents the name of a property in an event type.
- PropertySeparator
Represents the separator used when splitting a property value.
- SplitPartIndex
Represents the zero-based index of the part to extract when splitting a property value.
- ValueMapBuilder<TFrom, TTo>
Represents an implementation of IValueMapBuilder<TFrom, TTo>.
- ValueMapping
Represents a single value in a migration's value map and what that value becomes on the other side.
Interfaces
- IEventMigrationBuilder
Defines a builder for event migrations.
- IEventMigrationBuilder<TTarget, TSource>
Defines a type-safe builder for event migrations between two event type generations.
- IEventMigrationPropertyBuilder
Defines a builder for event migration property transformations.
- IEventMigrationPropertyBuilder<TTarget, TSource>
Defines a type-safe builder for event migration property transformations using expressions.
- IEventTypeMigration
Defines an event type migration.
- IEventTypeMigrationFor<TEvent>
Defines a migrator for a specific event type.
- IEventTypeMigrationFor<TUpgrade, TPrevious>
Defines a type-safe migrator between two generations of the same event type.
- IEventTypeMigrators
Defines a system that discovers and provides event type migrators.
- IEventValueMapBuilder<TUpgrade, TPrevious>
Defines a builder for the value maps of an event type migration - the values that keep their property but change what they mean between two generations.
- IValueMapBuilder<TFrom, TTo>
Defines a builder for the individual values of a property that change meaning between two event type generations.