1 package org.weda.action;
2
3 import java.util.List;
4 import java.util.Map;
5 import java.util.Set;
6
7 /**Цель:
8 *
9 * @author Mikhail Titov
10 */
11 public interface ActionContainer {
12 /**Метод возвращает уникальное имя контейнера.
13 */
14 public String getActionContainerName();
15 /**Метод возвращает текущее состояние действий доступных для данного
16 * контейнера. Т.е. значение свойства {@link ActionState#isAvailable}
17 * <code>true</code>. Состояния глобальных действий будут
18 * присутствовать в списке в том и только том случае если данный контейнер
19 * реализует интерфейс {@link GlobalActionsProvider}.
20 * @see ActionRegistry#getActionsStates(ActionContainer)
21 */
22 public List<ActionState> getActionsStates()
23 throws ActionRegistryException;
24 /**Метод вернет <code>TRUE</code> если есть действия
25 * зарегистрированные для данного контейнера. Если контейнер реализует
26 * интерфейс {@link GlobalActionsProvider} тогда метод вернет <code>TRUE
27 * </code> если в реестре действий есть хотя бы одно глобальное действие.
28 * @see ActionRegistry#hasRegisteredActions(Class)
29 */
30 public boolean hasRegisteredActions();
31 /**Метод возвращает множество классов действий (action class) которые
32 * необходимо запретить для выполнения в данном контейнере.
33 */
34 public Set<Class> getDisabledActions();
35 /**Метод выполненяет действие
36 */
37 public ExecutedActionInfo executeAction(ActionExecutionContext context)
38 throws ActionRegistryException;
39 }