Namespace Cratis.Chronicle.Events

Classes

AppendedEvent

Represents an event that has been appended to an event log.

CompensationForAttribute

Attribute used to mark an event type as a compensation for another event type. Useful in systems that require explicit compensation records, such as ledger systems.

CompensationForAttribute<TEventType>

Attribute used to mark an event type as a compensation for TEventType. Useful in systems that require explicit compensation records, such as ledger systems.

EventAndContext

Represents an event and its context.

EventContext

Represents the context in which an event exists in - typically what it was appended with.

EventCount

Represents a count of events.

EventHash

Represents the hash of an event's content.

EventRedacted

Represents the content of a redaction event.

EventSequenceNumber

Represents the sequence number within an event log for an event.

EventSerializer

Represents an implementation of IEventSerializer.

EventSourceId

Represents the unique identifier of an instance of an event source.

EventSourceIdJsonConverterFactory

Represents a JsonConverterFactory that produces EventSourceIdJsonConverter<T> instances for any closed EventSourceId<T> type.

EventSourceIdJsonConverter<T>

Represents a JsonConverter<T> for EventSourceId<T> that serializes the typed value as a plain string for wire compatibility with EventSourceId.

EventSourceId<T>

Represents a type-safe event source identifier wrapping a strongly-typed value. The generic type parameter is passed directly to ConceptAs<T>, giving value-equality semantics over T while also supporting implicit conversion to and from the untyped EventSourceId for wire compatibility.

EventSourceName

Represents the name of a registered event source definition an event was appended through.

EventSourceType

Represents the identifier for an event source type.

EventSourceTypeAttribute

Attribute to specify the EventSourceType for a command or observer.

EventStoreAttribute

Attribute to adorn event types or an assembly to indicate that event types originate from a specific event store.

EventStoreCannotBeCombinedWithExplicitEventSequence

The exception that is thrown when an observer combines EventStoreAttribute with an explicit event sequence.

EventStreamId

Represents the unique identifier of an event stream within a EventStreamType .

EventStreamIdAttribute

Attribute to specify the EventStreamId for a reactor or command.

EventStreamType

Represents the type of an event stream.

EventStreamTypeAttribute

Attribute to specify the EventStreamType for a command, an observer or an aggregate root.

EventType

Represents the type of an event.

EventTypeAttribute

Attribute to adorn types for providing metadata about the actual EventType.

EventTypeExtensions

Extension methods for working with EventType and Type .

EventTypeGeneration

Represents the generation of an EventType.

EventTypeGenerationForAttribute

Attribute used to mark a type as representing a previous generation of another event type.

EventTypeGenerationForAttribute<TEventType>

Attribute used to mark a type as representing a previous generation of TEventType.

EventTypeGenerationForCannotBeCombinedWithEventType

The exception that is thrown when a type carries both EventTypeAttribute and EventTypeGenerationForAttribute.

EventTypeGenerationReferencesNonEventType

The exception that is thrown when a type marked with EventTypeGenerationForAttribute references a type that is not itself marked with EventTypeAttribute.

EventTypeId

Represents the concept of the unique identifier of a type of event.

EventTypes

Represents an implementation of IEventTypes.

MultipleEventStoresDefined

The exception that is thrown when an observer defines event types originating from multiple event stores.

MultipleEventTypesWithSameIdFound

Exception that gets thrown when multiple event types with the same id is found.

PublicAttribute

Attribute to adorn an event type to declare it public: part of the contract the owning service exposes.

RedactEvent

Command for redacting single event.

RedactEvents

Command for redacting events.

RedactionEventContent

Represents the content of a redaction event.

RedactionReason

Represents the concept of a reason for redacting an event.

TombstoneAttribute

Attribute to adorn types for providing metadata that tells that the event is a tombstone event type.

TypeIsNotAnEventType

Exception that gets thrown when a type is not an event type.

Interfaces

ICanProvideAdditionalEventInformation

Defines something that can provide metadata to all events being appended.

ICanProvideEventSourceId

Defines a reactor (or any object) that can provide the EventSourceId to use when appending side-effect events returned from handler methods.

ICanProvideEventStreamId

Defines a reactor that can dynamically provide the EventStreamId to use when appending side-effect events returned from handler methods.

ICanProvideSubject

Defines a reactor that can provide the Subject to associate with side-effect events returned from handler methods.

IEventSerializer

Defines a serializer of events.

IEventTypes

Defines a system to work with event types.

Enums

EventObservationState

Represents the observation state for an event.