Files
Hy2026/backend/Infrastructure/Events/LoggingSubmissionEventPublisher.cs
T
Rafał Tyński cadc321d96 feat(backend): add problem/need submission module with workflow and events
Add submission CRUD with pagination and role scoping, challenge/location binding, automatic keyword extraction, a validated status workflow, and domain events for matchmaking and notifications. Create a problem record together with each submission.
2026-10-04 02:22:00 +02:00

31 lines
1010 B
C#

using Microsoft.Extensions.Logging;
using TarninaHub.Application.Abstractions;
namespace TarninaHub.Infrastructure.Events;
/// <summary>
/// Placeholder publisher: logs domain events. Will be replaced/wired to
/// matchmaking (steps 14-15) and notifications (step 17).
/// </summary>
public sealed class LoggingSubmissionEventPublisher : ISubmissionEventPublisher
{
private readonly ILogger<LoggingSubmissionEventPublisher> _logger;
public LoggingSubmissionEventPublisher(ILogger<LoggingSubmissionEventPublisher> logger)
{
_logger = logger;
}
public Task PublishAsync(SubmissionEvent submissionEvent, CancellationToken cancellationToken)
{
_logger.LogInformation(
"Domain event {EventType} for {SubmissionId} (status: {Status}, actor: {ActorId})",
submissionEvent.Type,
submissionEvent.SubmissionId,
submissionEvent.Status,
submissionEvent.ActorId ?? "system");
return Task.CompletedTask;
}
}