#nullable enable
using System.Threading.Tasks;
using Jellyfin.Data.Entities;
using MediaBrowser.Controller.Authentication;
namespace Jellyfin.Server.Implementations.Users
{
    /// 
    /// An invalid authentication provider.
    /// 
    public class InvalidAuthProvider : IAuthenticationProvider
    {
        /// 
        public string Name => "InvalidOrMissingAuthenticationProvider";
        /// 
        public bool IsEnabled => false;
        /// 
        public Task Authenticate(string username, string password)
        {
            throw new AuthenticationException("User Account cannot login with this provider. The Normal provider for this user cannot be found");
        }
        /// 
        public bool HasPassword(User user)
        {
            return true;
        }
        /// 
        public Task ChangePassword(User user, string newPassword)
        {
            return Task.CompletedTask;
        }
    }
}