Files
schengen-visa/SchengenVisaApi/ApplicationLayer/Services/AuthServices/LoginService/LoginService.cs
2024-08-26 11:33:31 +03:00

19 lines
748 B
C#

using ApplicationLayer.Services.AuthServices.LoginService.Exceptions;
using ApplicationLayer.Services.AuthServices.NeededServices;
namespace ApplicationLayer.Services.AuthServices.LoginService;
/// <inheritdoc cref="ILoginService"/>
public class LoginService(IUsersRepository users, ITokenGenerator tokenGenerator) : ILoginService
{
async Task<string> ILoginService.LoginAsync(string email, string password, CancellationToken cancellationToken)
{
var user = await users.FindByEmailAsync(email, cancellationToken);
if (user is null || user.Password != password)
{
throw new IncorrectLoginDataException();
}
return tokenGenerator.CreateToken(user);
}
}