Wednesday, September 2, 2009

Core Redesign

В связи с тем, что проект направлен на довольно сильное расширение при помощи плагинов, (в планах поддержки - hdd логические диски, CD/DVD,USB Portable Devices, FTP, Видео база, Аудио база, База документов, База изображений) пришлось сделать интерфейсы хранилищ данных более общими, из-за чего существенная часть наработок нуждается в коррекции.

Теперь хранилище данных может не хранить полное дерево каталогов у себя внутри,
для перехода по папкам организовано скрытое взаимодействие папки с хранилищем, т.е. при вызове GetSubFolder(name) папка обращается к хранилищу за объектом FolderInfo, получает его и возвращает вызывающему объекту актуальный объект с данными о папке.

Что самое замечательное в полиморфизме в данном случае - все типы хранилищ могут визуализироваться при помощи одного Viewer практически без ущерба в информативности.

No comments:

Post a Comment