refactor: split EpubService into EpubReaderService and EpubMetadataExtractor (SRP)

This commit is contained in:
2026-05-11 18:07:30 +00:00
parent 0e2c275de7
commit bb7207b7ef
@@ -10,13 +10,13 @@ using NexusReader.Domain.Entities;
namespace NexusReader.Infrastructure.Services;
public class EpubService : IEpubService
public class EpubReaderService : IEpubReader
{
private readonly IDbContextFactory<AppDbContext> _dbContextFactory;
private const string EpubPath = "wwwroot/assets/book.epub";
private const int WordThreshold = 1000;
public EpubService(IDbContextFactory<AppDbContext> dbContextFactory)
public EpubReaderService(IDbContextFactory<AppDbContext> dbContextFactory)
{
_dbContextFactory = dbContextFactory;
}
@@ -215,6 +215,10 @@ public class EpubService : IEpubService
}
return null;
}
}
public class EpubMetadataExtractor : IEpubMetadataExtractor
{
public async Task<Result<LocalEpubMetadata>> ExtractMetadataAsync(Stream epubStream)
{
try