Loopback
|
Posted: Tue Jun 25, 2024 17:06 Post subject: |
|
|
Orion9 wrote: | Был один недостаток, связанный с базой. Когда скачиваешь файл и он еще недокачался, если в этот момент навести на него указатель мыши, то в базу попадут пустые поля, которые так и будут потом отображаться в подсказке при повторных наведениях. |
Суть понятна. Наверно, не только курсор навести, при настроенном наборе колонок тоже может быть.
Вообще плагин не добавляет файл в базу, если библиотека возвращает ошибку. Проблема в том, что MediaInfo на таких файлах её не возвращает. Однако поскольку тегов и прочего еще нет, добавляются пустые данные. Как отличить докачанный файл от недокачанного - вот в чём вопрос. Думаю со 100% надежностью это в принципе сделать невозможно.
Что в теории может помочь - перед добавлением в базу проверять, что все поля пустые. Если хотя бы одно поле содержит данные, значит всё в порядке.
Но тут есть сомнения:
- если MediaInfo может возвращать неполные данные (например, битрейт получен, а тег еще нет), то в таких случаях метод не поможет.
- если окажется так, что в нормальном файле действительно нет данных, для которых настроены источники, плагин будет пытаться перечитывать его каждый раз. Хотя вероятность такого представляется незначительной.
В общем, можно сделать тестовую версию и погонять ее, окажется ли метод жизнеспособным.
В любом случае это костыль. Самый надежный способ - чтобы качалка меняла расширение файла на временное до момента полного скачивания  |
|