using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using Microsoft.EntityFrameworkCore; using LCU.Library.Internal.ArchiverApiLib.Extensions; using LCU.Library.Internal.ArchiverApiLib.Persistence; using LCU.Library.Internal.ArchiverApiModel.Entities; namespace LCU.Library.Internal.ArchiverApiLib.Repositories { public class ApplicationMappingRepository : BaseRepository, IApplicationMappingRepository { public ApplicationMappingRepository(AppDbContext context) : base(context) { } public async Task> ListAsync() { return await _context.ApplicationMappings.IncludeAll().ToListAsync(); } public async Task FindByIdAsync(int id) { return await _context.ApplicationMappings.Where(applicationMapping => applicationMapping.ApplicationMappingId == id).IncludeAll().FirstOrDefaultAsync(); } public async Task> FindByIdentifierAsync(string identifier) { return await _context.ApplicationMappings.Where(applicationMapping => applicationMapping.Identifier == identifier).IncludeAll().ToListAsync(); } public async Task AddAsync(ApplicationMapping applicationMapping) { var result = await _context.ApplicationMappings.AddAsync(applicationMapping); return result.Entity; } public void Update(ApplicationMapping applicationMapping) { _context.ApplicationMappings.Update(applicationMapping); } public void Remove(ApplicationMapping applicationMapping) { _context.ApplicationMappings.Remove(applicationMapping); } } }