21 lines
677 B
C#
21 lines
677 B
C#
using FluentResults;
|
|
using NexusReader.Application.Abstractions.Messaging;
|
|
using NexusReader.Application.Abstractions.Services;
|
|
|
|
namespace NexusReader.Application.Queries.Quiz;
|
|
|
|
internal sealed class GetQuizQuestionsQueryHandler : IQueryHandler<GetQuizQuestionsQuery, QuizDto>
|
|
{
|
|
private readonly IAiGenerateQuizService _aiService;
|
|
|
|
public GetQuizQuestionsQueryHandler(IAiGenerateQuizService aiService)
|
|
{
|
|
_aiService = aiService;
|
|
}
|
|
|
|
public async Task<Result<QuizDto>> Handle(GetQuizQuestionsQuery request, CancellationToken cancellationToken)
|
|
{
|
|
return await _aiService.GenerateQuizAsync(request.ContextBlockId, cancellationToken);
|
|
}
|
|
}
|