using Hangfire; using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Options; using Newsbot.Collector.Domain.Models.Config; using Newsbot.Collector.Services.Jobs; using ILogger = Grpc.Core.Logging.ILogger; namespace Newsbot.Collector.Api.Controllers; [ApiController] [Route("api/youtube")] public class YoutubeController { private readonly ILogger _logger; private readonly ConfigSectionConnectionStrings _connectionStrings; private readonly ConfigSectionYoutubeModel _config; public YoutubeController(ILogger logger, IOptions config, IOptions connectionStrings) { _logger = logger; _connectionStrings = connectionStrings.Value; _config = config.Value; } [HttpPost("check")] public void CheckYoutube() { BackgroundJob.Enqueue(x => x.InitAndExecute(new YoutubeWatcherJobOptions { DatabaseConnectionString = _connectionStrings.Database, OpenTelemetryConnectionString = _connectionStrings.OpenTelemetry, IsEnabled = _config.IsEnabled })); } }