DigitalData.Auth/src/DigitalData.Auth.API/Services/ConfiguredConsumerService.cs

22 lines
836 B
C#

using DigitalData.Auth.API.Entities;
using DigitalData.Auth.API.Services.Contracts;
using Microsoft.Extensions.Options;
namespace DigitalData.Auth.API.Services
{
public class ConfiguredConsumerService : IConsumerService
{
private readonly IEnumerable<Consumer> _consumers;
public ConfiguredConsumerService(IOptions<List<Consumer>> consumeroptions)
{
_consumers = consumeroptions.Value;
}
public Task<Consumer?> ReadByIdAsync(int id) => Task.Run(() => _consumers.FirstOrDefault(api => api.Id == id));
public Task<Consumer?> ReadByNameAsync(string name) => Task.Run(() => _consumers.FirstOrDefault(api => api.Name == name));
public async Task<bool> VerifyAsync(string name, string password) => (await ReadByNameAsync(name))?.Password == password;
}
}