Несвязанные между собой объявления execute во многих классах Action

Здравствуйте. Я обнаружил что многие Action-классы (в частности, большинство классов из пакета com.haulmont.cuba.gui.actions.list) содержат метод execute, имеющий одно и то же назначение, но объявленный в каждом классе отдельно, что не позволяет обобщать логику взаимодействия с Action-ами.
Возможно, стоит вынести его объявление в отдельный интерфейс ExecutableAction?

Пример: перед тем как перевести пользователя на экран добавления/изменения элемента таблицы, нужно проверить, что в некотором другом поле формы значение уже установлено.

Мы можем сделать это установив listener-ы на действия table.create и table.edit, где будем проверять поле и, если оно не пусто, вызывать execute(), а в противном случае показывать уведомление. Проблема в том что логика методов идентична и отличается лишь тем что в одном методе вызывается tableCreate.execute(), а в другом tableEdit.execute(). В лучшем случае возможно вынести в отдельный метод проверку валидности поля, но это всего лишь одна строчка, которая раньше была в блоке условия if-а.

Давайте попробуем вынести.
Создайте пожалуйств тикет здесь: https://github.com/cuba-platform/cuba/issues