Концепция Локальной коллекции
| |
1_абрам | Дата: Вторник, 30.07.2013, 15:55 | Сообщение # 31 |
Генералиссимус
Группа: Друзья
Сообщений: 1207
Статус: Offline
| Цитата (drserj) Вот тут-то и проблемс... Если я отметил в архиве только часть книг? Распаковывать и копировать? Как-то не очень.... Именно в обработке и проблема.... Да и переименовывать такой архив во что? А если файл с таким именем уже существует, но это другой файл? Да распаковывать и копировать не хочется. Два варианта, либо вообще исключить 7, либо упростить обработку 7. Для 7:
Действия при нахождении дубликата
3. Файл обрабатывается как обычный.
База
1. Добавлять в таблицу сканирования
Обработка
База 1. Добавляется в базу автоматически
Действия при обработке 3. Без обработки
Т.е. архив не изменяется, доступ к книжкам из архива, и все отмеченные книжки с описаниями переносятся в базу (без отслеживания дубликатов). Второй вариант предпочтителен, т.к. иногда хочется залить подборку локументов в один архив.
Добавлено (30.07.2013, 14:55) ---------------------------------------------
Цитата (drserj) Но в процессе сканирования и в процессе обработки тоже будут дубли
Предлагаю похерить, не так часто это бывает. Потом можно вручную убрать дубли.
|
|
| |
drserj | Дата: Вторник, 30.07.2013, 16:30 | Сообщение # 32 |
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Статус: Offline
| Вот и я думаю, а не сильно ли много обработки.... Наверно надо тупо всё, что с описанием (дубль, не дубль) тупо добавлять в базу без всяких вариантов, остальное висит в отсеве на дообработку. Перемещать - вручную. Переименовывать - до сканирования. Если сканируется папка основная или прописанная в настройках - игнорировать обработанные файлы, обрабатывать только новые. Если кто переименовал уже обработанный файл - сам виноват Вопрос только в том, если в папке сканирования (произвольной) имеется файл с существующим в базе именем... что тогда делать? Или вообще, имеются в разных папках файлы с одинаковым именем... Внутри может быть и разное содержимое, но имя архива - то же...
drSerj
|
|
| |
1_абрам | Дата: Вторник, 30.07.2013, 18:09 | Сообщение # 33 |
Генералиссимус
Группа: Друзья
Сообщений: 1207
Статус: Offline
| Цитата (drserj) Наверно надо тупо всё, что с описанием (дубль, не дубль) тупо добавлять в базу без всяких вариантов, остальное висит в отсеве на дообработку. Перемещать - вручную. Переименовывать - до сканирования. Надеюсь это ты импеешь в виду выделенный случай архивов 7 ?
|
|
| |
drserj | Дата: Среда, 31.07.2013, 09:49 | Сообщение # 34 |
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Статус: Offline
| Цитата (1_абрам) Надеюсь это ты импеешь в виду выделенный случай архивов 7 ? Да нет, вообще... В конце-концов, можно потом удавить...
drSerj
|
|
| |
1_абрам | Дата: Среда, 31.07.2013, 13:33 | Сообщение # 35 |
Генералиссимус
Группа: Друзья
Сообщений: 1207
Статус: Offline
| А напиши, как созреешь, новый вариант в стиле сообщения 22.
Сообщение отредактировал 1_абрам - Среда, 31.07.2013, 13:34 |
|
| |
drserj | Дата: Среда, 31.07.2013, 14:16 | Сообщение # 36 |
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Статус: Offline
| Сканирование
Папки 1. Основная папка с файлами (./lib/библиотека) 2. Подключенные папки локальной коллекции 3. Папки, неизвестные программе
Файлы 1. Файл FB2 2. Файл не FB2 без описания 3. Файл не FB2 с описанием 4. Файл FB2 в архиве 5. Файл не FB2 без описания в архиве 6. Файл не FB2 с описанием в архиве 7. Несколько файлов в архиве (2 файла, но без FBD или больше 2х файлов)
Описание 1. Файл содержит описание 2. Файл не содержит описания
База 1. Добавлять в таблицу сканирования 2. Не добавлять в таблицу сканирования
Обработка
База 1. Добавляется в базу автоматически (Если есть описание) 2. Не добавляется в базу (Если нет описания)
Т.е. убрать все эти разборы с дублями, с версиями, и т.д.
Отсканировал. Выбрал то что хочешь добавить. Обработал. Всё что с описанием - в базу, всё что без описания - в отсев на ручную доработку.
Единственный нюанс - при сканировании, если папка входит в список имеющихся в настройке - проверять, имеется ли такой архив или файл и исключать такие из списка сканирования.
Правда, тут имеется проблема. Если в разных каталогах будут архивы с одинаковым именем - что делать? Ведь у нас нет ни размера архива, ни его местоположения, ни МД5. Есть только информация о файлах (может и не всех) внутри него.
drSerj
|
|
| |
1_абрам | Дата: Четверг, 01.08.2013, 10:55 | Сообщение # 37 |
Генералиссимус
Группа: Друзья
Сообщений: 1207
Статус: Offline
| Цитата (drserj) Правда, тут имеется проблема. Если в разных каталогах будут архивы с одинаковым именем - что делать? Ведь у нас нет ни размера архива, ни его местоположения, ни МД5. Есть только информация о файлах (может и не всех) внутри него.
А как тебе такое решение. Отслеживать и удалять дубли книг по базе. При этом отслеживаются только книжки с непустыми мд5. Для книжек, расположенных в архивах поле мд5 (если оно пусто) заполнять при открытии или загрузке книжки. Очень логично и единообразно все получается.
Я правильно понимаю, что теперь все книжки никуда не перемещаюся, не переиминовываются и хранятся в местах, куда их залил пользователь?.
Сообщение отредактировал 1_абрам - Четверг, 01.08.2013, 10:59 |
|
| |
drserj | Дата: Четверг, 01.08.2013, 11:07 | Сообщение # 38 |
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Статус: Offline
| Цитата (1_абрам) А как тебе такое решение. Отслеживать и удалять дубли книг по базе. А я так и написал... А пустых МД5 не будет, он просчитывается еще на момент сканирования. Единственное что, куда это всунуть? Отдельным плагином не хочется, а этот функционал только для приватной библиотеки, так что и в основную программу не надобно совать... В форме импорта - как-то нелогично. Цитата (1_абрам) Я правильно понимаю, что теперь все книжки никуда не перемещаюся, не переиминовываются и хранятся в местах, куда их залил пользователь?. Ну, я пришел к выводу, что так правильнее. Тут ведь прелесть в чем, ты можешь потом, после добавления, либо переместить в любую из прописанных папок, либо добавить эту папку в настройках. Причем, внутри прописанных папок можно создать подкаталоги, и в них тоже будет осуществляться поиск.
Но, вопрос о файлах с одинаковыми именами в разных папках остается открытым. Как тут быть?
drSerj
|
|
| |
1_абрам | Дата: Четверг, 01.08.2013, 11:42 | Сообщение # 39 |
Генералиссимус
Группа: Друзья
Сообщений: 1207
Статус: Offline
| Цитата (drserj) Ну, я пришел к выводу, что так правильнее. А на эффективности (скорости доступа к файлам) это не не скажется? А какой теперь смысл в 1. Основная папка с файлами (./lib/библиотека) ?Добавлено (01.08.2013, 10:42) ---------------------------------------------
Цитата (drserj) Но, вопрос о файлах с одинаковыми именами в разных папках остается открытым. Как тут быть?
Так ведь они при несовпадающих мд5 будут удалены ("Отслеживать и удалять дубли книг по базе." )
|
|
| |
drserj | Дата: Четверг, 01.08.2013, 11:44 | Сообщение # 40 |
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Статус: Offline
| Цитата (1_абрам) А на эффективности (скорости доступа к файлам) это не не скажется? А с какого бодуна? Алгоритм поиска не меняется. Как был проход по всем папкам, так и останется. Цитата (1_абрам) А какой теперь смысл в 1. Основная папка с файлами (./lib/библиотека) ?
Для совместимости с остальными библиотеками По-умолчанию эта папка является основной папкой для библиотеки.
Всё-таки меня интересует вопрос с одинаковыми именами в разных папках.
drSerj
|
|
| |
1_абрам | Дата: Четверг, 01.08.2013, 11:48 | Сообщение # 41 |
Генералиссимус
Группа: Друзья
Сообщений: 1207
Статус: Offline
| Цитата (drserj) так что и в основную программу не надобно совать... Да нормально это почему бы не поискать дубли на флибусте (ну нет их там, ну и что). Оптимально сделать эту функцию доступной только для приватных библиотек.
|
|
| |
drserj | Дата: Четверг, 01.08.2013, 11:56 | Сообщение # 42 |
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Статус: Offline
| Цитата (1_абрам) Да нормально это почему бы не поискать дубли на флибусте (ну нет их там, ну и что). Оптимально сделать эту функцию доступной только для приватных библиотек. Посмотрю.. Есть идея впихнуть это как актуализацию...
drSerj
|
|
| |
1_абрам | Дата: Четверг, 01.08.2013, 13:41 | Сообщение # 43 |
Генералиссимус
Группа: Друзья
Сообщений: 1207
Статус: Offline
| Цитата (1_абрам) Так ведь они при несовпадающих мд5 будут удалены ("Отслеживать и удалять дубли книг по базе." )
|
|
| |
drserj | Дата: Четверг, 01.08.2013, 13:56 | Сообщение # 44 |
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Статус: Offline
| Я же сказал выше, уберу вообще работу с дублями... Иначе, слишком много вариантов, слишком много настроек, слишком много будет недовольств, почему так а не иначе. Добавляем в базу всё, что парсится. Всё, что не парсится - в отсев на доработку. А уже в актуализации можно будет добавить поиск дублей.
drSerj
|
|
| |
1_абрам | Дата: Четверг, 01.08.2013, 15:17 | Сообщение # 45 |
Генералиссимус
Группа: Друзья
Сообщений: 1207
Статус: Offline
| Цитата (drserj) в актуализации можно будет добавить поиск дублей
Так я именно это и имел в виду, поиск дублей книг после добавления в базу. Но ты же пишешь: "Всё-таки меня интересует вопрос с одинаковыми именами в разных папках.", в чем проблема то?
|
|
| |
|