Files
Musify/Application/Contracts/Infrastructure/IProcessTrackingStore.cs
T
2026-03-20 21:40:05 +01:00

26 lines
846 B
C#

using Musify.Domain.Entities;
namespace Musify.Application.Contracts.Infrastructure
{
public interface IProcessTrackingStore
{
Task<Guid> GetOrCreateProcessAsync(
string processName,
Guid? correlationId,
Guid? conversationId,
Guid? messageId,
CancellationToken cancellationToken);
Task<Guid> StartStepAsync(
Guid processExecutionId,
string stepName,
ProcessStepComponentType componentType,
int attempt,
CancellationToken cancellationToken);
Task CompleteStepAsync(Guid processExecutionId, Guid stepExecutionId, CancellationToken cancellationToken);
Task FailStepAsync(Guid processExecutionId, Guid stepExecutionId, string errorMessage, CancellationToken cancellationToken);
}
}