📄 src/Api/YouTubeAuth/YouTubeCredentialsProvider.cs
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
using System;
using System.Threading;
using System.Threading.Tasks;
using Google.Apis.Auth.OAuth2;
using Slopper.Infrastructure.YouTube;

namespace Slopper.Api.YouTubeAuth;

internal sealed class YouTubeCredentialsProvider : IYouTubeCredentialsProvider
{
    public ICredential? Credential { get; set; }

    public Task<ICredential> GetCredentials(CancellationToken cancellationToken) =>
        Task.FromResult(Credential ?? throw new Exception("YouTube credentials are not available"));
}