Table of Contents

Namespace Cratis.Chronicle.Projections

Classes

AddBuilder<TReadModel, TEvent, TProperty, TParentBuilder>

Represents an implementation of IAddBuilder<TReadModel, TEvent, TProperty, TParentBuilder>.

AddChildBuilder<TParentReadModel, TChildModel, TEvent>

Represents an implementation of IAddChildBuilder<TChildModel, TEvent>.

AllSetBuilder<TReadModel, TParentBuilder>

Represents an implementation of IAllSetBuilder<TReadModel, TParentBuilder>.

ChildrenBuilder<TParentReadModel, TChildReadModel>

Represents an implementation of IChildrenBuilder<TParentReadModel, TChildReadModel>.

CompositeKeyBuilder<TKeyType, TEvent>

Represents an implementation of ICompositeKeyBuilder<TKeyType, TEvent>.

CountBuilder<TReadModel, TEvent, TProperty>

Represents an implementation of IPropertyExpressionBuilder for counting.

DecrementBuilder<TReadModel, TEvent, TProperty>

Represents an implementation of IPropertyExpressionBuilder for decrementing a property.

DuplicatePropertyInProjection

The exception that is thrown when a property has been specified more than once in a projection definition.

FromBuilder<TReadModel, TEvent, TParentBuilder>

Represents an implementation of IFromBuilder<TReadModel, TEvent>.

FromEveryBuilder<TReadModel>

Represents an implementation of IFromEveryBuilder<TReadModel>.

IncrementBuilder<TReadModel, TEvent, TProperty>

Represents an implementation of IPropertyExpressionBuilder for incrementing a property.

JoinBuilder<TReadModel, TEvent, TParentBuilder>

Represents an implementation of the IJoinBuilder<TReadModel, TEvent>.

KeyAndParentKeyBuilder<TEvent, TBuilder>

Represents a builder for both key and parent key.

KeyBuilder<TEvent, TBuilder>

Represents a default implementation of IKeyBuilder<TEvent, TBuilder> that works with IEventValueExpression.

MissingAddWithExpression

Exception that gets thrown when a with expression is missing in an add mapping.

MissingIdentifiedByPropertyExpressionWhenJoiningWithEvent

Exception that is thrown when the on property expression is missing for the root projection.

MissingImmediateProjectionForModel

Exception that gets thrown when an projection is missing for a model type.

MissingOnPropertyExpressionWhenJoiningWithEvent

Exception that gets thrown when missing the on property expression when joining with specific event type.

MissingSubtractWithExpression

Exception that gets thrown when a with expression is missing in an add mapping.

MissingToExpression

Exception that gets thrown when a to expression is missing in a mapping.

MissingToExpressionForAllSet

Exception that gets thrown when a to expression is missing in a mapping.

NoAutoMapAttribute

Attribute used to disable automatic property mapping for a projection model. Can be applied at class level to prevent AutoMap from mapping properties automatically. This attribute is inherited by child projections.

OnPropertyShouldNotBeSpecifiedForChildJoin

Exception that gets thrown when on property should not be specified for child join.

OnlyEventPropertySupported

Exception that gets thrown when a target property only supports being mapped to a property on the event.

ParentKeyBuilder<TEvent, TBuilder>

Represents a default implementation of IKeyBuilder<TEvent, TBuilder> that works with IEventValueExpression.

ProjectionAttribute

Optional attribute used to adorn classes to configure a projection. The projection will have to implement IProjectionFor<TReadModel>.

ProjectionBuilderFor<TReadModel>

Represents an implementation of IProjectionBuilderFor<TReadModel>.

ProjectionBuilder<TReadModel, TBuilder>

Represents a base projection builder.

ProjectionChangeset<TReadModel>

Represents the changeset for a projection.

ProjectionHandler

Represents an implementation of IProjectionHandler.

ProjectionId

Represents the unique identifier of a projection.

ProjectionQueryResult

Represents the result of querying a projection against the event log.

ProjectionResult

Represents the result of an projection.

ProjectionResultRaw

Represents the result of an projection.

ProjectionResult<T>

Represents the result of an projection.

ProjectionSessionId

Represents a session for a projection, typically used when asking to project immediately.

ProjectionSnapshot<TReadModel>

Represents a snapshot of a projection at a specific point in time grouped by CorrelationId.

ProjectionState

Represents the state of a reducer.

ProjectionTypeExtensions

Extension methods for working with projection types.

ProjectionWaitExtensions

Helper extensions providing wait methods for projections.

Projections

Represents an implementation of IProjections.

PropertyExpression

Represents the definition of a key.

ReadModelPropertiesBuilder<TReadModel, TEvent, TBuilder, TParentBuilder>

Represents an implementation of IReadModelPropertiesBuilder<TReadModel, TEvent, TBuilder>.

RemovedWithBuilder<TReadModel, TEvent>

Represents an implementation of IRemovedWithBuilder<TReadModel, TEvent, TBuilder>.

RemovedWithJoinBuilder<TReadModel, TEvent>

Represents an implementation of IRemovedWithBuilder<TReadModel, TEvent, TBuilder>.

SetBuilder<TReadModel, TEvent, TParentBuilder>

Represents an implementation of ISetBuilder<TReadModel, TEvent, TProperty, TParentBuilder>.

SetBuilder<TReadModel, TEvent, TProperty, TParentBuilder>

Represents an implementation of ISetBuilder<TReadModel, TEvent, TProperty, TParentBuilder>.

SubtractBuilder<TReadModel, TEvent, TProperty, TParentBuilder>

Represents an implementation of ISubtractBuilder<TReadModel, TEvent, TProperty, TParentBuilder>.

UnableToQueryProjection

Exception that gets thrown when a projection query fails.

Interfaces

IAddBuilder<TReadModel, TEvent, TProperty, TParentBuilder>

Defines a builder for building add operations for properties - represented as expressions.

IAddChildBuilder<TChildModel, TEvent>

Defines a builder for building an add child operation, typically used in to a from expression.

IAllSetBuilder<TReadModel, TParentBuilder>

Defines a builder for building set operations for properties that will be applied for all events the projection is projecting from - represented as expressions.

IChildrenBuilder

Defines the base interface for children builders.

IChildrenBuilder<TParentReadModel, TChildReadModel>

Defines the builder for building out a child relationship on a model.

ICompositeKeyBuilder<TKeyType, TEvent>

Defines a builder for building a composite key with a specific type.

IFromBuilder<TReadModel, TEvent>

Defines the builder for building from expressions.

IFromEveryBuilder<TReadModel>

Defines the builder for building properties that can be set by all events.

IJoinBuilder<TReadModel, TEvent>

Defines the builder for building join expressions for relationships.

IKeyBuilder<TEvent, TBuilder>

Defines a builder for keys.

IParentKeyBuilder<TEvent, TBuilder>

Defines a builder for parent keys.

IProjection

Defines the basis of a system that can define a projection.

IProjectionBuilderFor<TReadModel>

Defines the builder for building out a IProjectionFor<TReadModel>.

IProjectionBuilder<TReadModel, TBuilder>

Defines the based builder for building out projections.

IProjectionFor<TReadModel>

Defines a system that can define a projection.

IProjectionHandler

Defines a system for handling projections.

IProjections

Defines a system that works with projections in the system.

IPropertyExpressionBuilder

Defines a builder of a property expressions.

IReadModelPropertiesBuilder<TReadModel, TEvent, TBuilder>

Defines the builder for building properties on a read model.

IRemovedWithBuilder<TReadModel, TEvent, TBuilder>

Defines a builder for building out removed with statements.

IRemovedWithJoinBuilder<TReadModel, TEvent, TBuilder>

Defines a builder for building out removed with join statements.

ISetBuilder<TReadModel, TEvent, TParentBuilder>

Defines a builder for building set operations for properties - represented as expressions.

ISetBuilder<TReadModel, TEvent, TProperty, TParentBuilder>

Defines a builder for building set operations for properties - represented as expressions.

ISubtractBuilder<TReadModel, TEvent, TProperty, TParentBuilder>

Defines a builder for building subtract operations for properties - represented as expressions.

Enums

AutoMap

Represents the auto mapping behavior.