1 package org.weda.action; 2 3 import java.util.List; 4 5 /**Цель: хранение и выполнение действий 6 * 7 * @author tim 8 */ 9 public interface ActionRegistry { 10 /**Метод возвращает список состояний действий досупных для указанного 11 * целевого объекта. Состояния глобальных действий будут 12 * присутствовать в списке в том и только том случае если целевой объект 13 * реализует интерфейс {@link GlobalActionsProvider}. 14 * @param targetObject целевой объект 15 */ 16 public List<ActionState> getActionsStates( 17 ActionContainer targetObject, Class targetClass) 18 throws ActionRegistryException; 19 /**Метод вернет <code>TRUE</code> если в реестре есть действия 20 * зарегистрированные для целевого класса. Если целевой класс реализует 21 * интерфейс {@link GlobalActionsProvider} тогда метод вернет <code>TRUE 22 * </code> если в реестре есть хотя бы одно глобальное действие. 23 * @param targetClass целевой класс. 24 */ 25 public boolean hasRegisteredActions( 26 Class targetClass, ActionContainer targetObject); 27 /**Метод выполняет действие. 28 */ 29 public ExecutedActionInfo executeAction(ActionExecutionContext context) 30 throws ActionRegistryException; 31 /**Метод возвращает информацию о последнем выполненном действии. 32 */ 33 public ExecutedActionInfo getLastExecutedActionInfo(); 34 /**Метод добавляет слушателя выполнения действий к реестру. 35 */ 36 public void addActionListener(ActionListener listener); 37 /**Метод удаляет слушателя выполнения действий из реестра. 38 */ 39 public boolean removeActionListener(ActionListener listener); 40 }