Отображение списка папок/файлов в Table

Добрый день.
Мне необходимо получить структуру определенной папки на жестком диске, вывести её в Table и выполнить некоторые действия при клике пользователя по строкам.

Я опытным путем пришел к работающему решению.

Меня смущает то, что пришлось связаться с KeyValueCollection в качестве DataContainer.
В итоге потерял в строгой типизации - приходится вручную следить за наименованием и типом полей в контейнере.

В качестве DataContainer выбираю KeyValueCollection
image

При инициализации формы мы через java.io.File API получаем список папок/файлов и мапим их в KeyValueEntity
image

При выборе строки мы из KeyValueEntity получаем имя файла/папки
image

Меня смущает маппинг из File → KeyValueEntity с последующим ручным получением полей в нестроготипизированном стиле.

Есть ли какое то решение при котором я источником данных буду указывать именно Set<File>, в таблице буду ссылаться на геттеры File и в обработчике TableSelection буду работать в File ?

Возможно вам подойдут неперсистентные сущности.