37 lines
1.0 KiB
C#
37 lines
1.0 KiB
C#
using System;
|
|
using Svrnty.CQRS.Events.Abstractions.Models;
|
|
|
|
namespace Svrnty.CQRS.Events.Abstractions.Models;
|
|
|
|
/// <summary>
|
|
/// Result of a retention policy cleanup operation.
|
|
/// Contains statistics about the cleanup process.
|
|
/// </summary>
|
|
public record RetentionCleanupResult
|
|
{
|
|
/// <summary>
|
|
/// Number of streams that were processed during cleanup.
|
|
/// </summary>
|
|
public required int StreamsProcessed { get; init; }
|
|
|
|
/// <summary>
|
|
/// Total number of events deleted across all streams.
|
|
/// </summary>
|
|
public required long EventsDeleted { get; init; }
|
|
|
|
/// <summary>
|
|
/// How long the cleanup operation took.
|
|
/// </summary>
|
|
public required TimeSpan Duration { get; init; }
|
|
|
|
/// <summary>
|
|
/// When the cleanup operation completed.
|
|
/// </summary>
|
|
public required DateTimeOffset CompletedAt { get; init; }
|
|
|
|
/// <summary>
|
|
/// Per-stream cleanup details (optional).
|
|
/// </summary>
|
|
public System.Collections.Generic.Dictionary<string, long>? EventsDeletedPerStream { get; init; }
|
|
}
|