async Task <BookFile> ReadBookFile(string path) { string ext = Path.GetExtension(path); IBookFileReader reader = _lookup[ext]; try { BookFile book = await Task.Run(() => reader.Read(path)); _messages.Write("Read {0}", path); return(book); } catch (Exception ex) { _messages.WriteError(ex, "reading {0}", path); return(null); } }
void AddReader(string fileExt, IBookFileReader reader) { var epubFiles = new FileFinder(_folderPath, fileExt); var epubList = new BookFileList(epubFiles, reader); _providers.Add(epubList); }
public BookFileList(IFileListProvider fileList, IBookFileReader reader) { _reader = reader; _fileList = fileList; }
public void AddReader(IBookFileReader reader) { _readers.Add(reader); }