Namespace Savvyio
The Savvyio
namespace provides the fundamental abstractions and classes for supporting a complete flow of DDD, CQRS and Event Sourcing concepts including the option to scale out using distributed subsystems.
Availability: .NET 9 and .NET 8
Extension Methods
Type | Ext | Methods |
---|---|---|
IMetadata | ⬇️ | GetCausationId , GetCorrelationId , GetMemberType , SetCausationId , SetCorrelationId , SetEventId , SetTimestamp , SetMemberType , SaveMetadata , MergeMetadata |
SavvyioOptions | ⬇️ | AddDispatchers , AddHandlers |
Task | ⬇️ | SingleOrDefaultAsync |
Classes
HandlerDiscoveryModel
Represents a model for handler services discovery.
HandlerFactory
Provides access to factory methods for creating and configuring generic handlers that supports MEP.
HandlerServiceAssemblyModel
Represents a model for handler service assemblies.
HandlerServicesDescriptor
Provides information, in a developer friendly way, about implementations of the IHandler<TRequest> interface such as name, declared members and what type of request they handle.
HandlerServiceTypeImplementationDelegatesModel
Represents a model for handler service type implementation delegates.
HandlerServiceTypeImplementationModel
Represents a model for handler service type implementations.
MetadataDictionary
Provides a default implementation of the IMetadataDictionary interface. This class cannot be inherited.
MetadataExtensions
Extension methods for the IMetadata interface.
MetadataFactory
Provides access to factory methods for maintaining metadata in models.
Request
Represents the base class from which all implementations of IRequest should derive.
SavvyioOptions
Specifies options that is related to setting up Savvy I/O services.
SavvyioOptionsExtensions
Extension methods for the SavvyioOptions class.
TaskExtensions
Extension methods for the System.Threading.Tasks.Task<TResult> class.
Interfaces
IDataSource
A marker interface that specifies the actual I/O communication with a source of data.
IHandler
A marker interface that specifies a handler.
IHandler<TRequest>
Defines a marker interface for a generic handler.
IHandlerServicesDescriptor
Defines a contract about implementations of the IHandler<TRequest> interface such as name, declared members and what type of request they handle.
IIdentity<TKey>
Defines a generic identity typically associated with a storage such as a database.
IMarshaller
Defines methods for serializing and deserializing objects to and from a System.IO.Stream.
IMetadata
Defines a generic way to associate metadata with any type of object.
IMetadataDictionary
Defines a generic way to support metadata capabilities.
IRequest
A marker interface that specifies a request/model/event.
Delegates
AsyncEventHandler<TEventArgs>
Represents the method that will handle an event when the event provides data asynchronously.