Давайте для прошлой работы сделаем суррогатное состояние-обертку над таблицей, с методом getCurrentTable(). А для этой работы пусть MultiFileShellState extends TableState. И никто ничего не заметит.