Robotico.Events 1.0.4
Robotico.Events
Reference Robotico.Events when you use Domain Events. Interfaces: IDomainEvent, IEventDispatcher (DispatchAsync returns Result).
Robotico dependencies
flowchart LR A[Robotico.Events] --> B[Robotico.Result]
Related packages (reuse where it fits)
| Package | Use with Events |
|---|---|
| Robotico.Mediator | Implement IEventDispatcher by sending the domain event as IRequest via IMediator.SendAsync (recommended). |
| Robotico.Resilience | Retry or circuit breaker around dispatch when handlers are unreliable. |
| Robotico.Validation | Validate event payload before dispatching (e.g. IValidator<TEvent>). |
| Robotico.Option | Optional event metadata (e.g. correlation id, timestamp) as Option<T>; composes better than nullable. |
| Robotico.Domain | Optional: base domain events on Domain types; use in docs/samples. |
Quick start
Define an event and inject IEventDispatcher:
public sealed record OrderPlaced(Guid OrderId) : IDomainEvent;
// In your application code:
Result result = await _eventDispatcher.DispatchAsync(new OrderPlaced(order.Id), cancellationToken);
if (result.IsError()) { /* handle failure */ }
Implement IEventDispatcher (e.g. with Robotico.Mediator: event as IRequest, handler returns Result). See docs/design.adoc for design and related packages.
Installation
dotnet add package Robotico.Events
Building and testing
dotnet restore
dotnet build -c Release
dotnet test -c Release --verbosity normal
With coverage (Coverlet):
dotnet test -c Release --collect:"XPlat Code Coverage" --results-directory ./coverage
CI enforces 90% line coverage and runs a trim-validate build. Versioning: SemVer.
License
See repository license file.
Showing the top 20 packages that depend on Robotico.Events.
| Packages | Downloads |
|---|---|
|
Robotico.Events.Mediator
IEventDispatcher implementation that dispatches domain events via IMediator.SendAsync. Depends on Robotico.Events, Robotico.Mediator, Robotico.Result.
|
3 |
|
Robotico.Events.InMemory
In-memory IEventDispatcher for tests and demos. Depends on Robotico.Events, Robotico.Result.
|
1 |