1 package org.weda.action;
2
3 /**Цель: выполнение действия над определенным объектом.
4 *
5 * @author Mikhail Titov
6 */
7 public interface Action {
8 /**Метод должен вернуть текущее состояние действия в контексте переданного
9 * контейнера.
10 */
11 public ActionState getActionState(ActionContainer targetObject)
12 throws Exception;
13 /**Метод выполняет действие над переданным в параметре объектом.
14 *@return Может вернуть ссылку на страницу на которую нужно перейти после
15 * выполнения действия.
16 */
17 public Object execute(ActionContainer targetObject) throws Exception;
18 /**Метод выполняется сразу после выполнения связанного действия.
19 * @param targetObject объект над которым выполняется действие
20 * @param linkedTargetObject объект над которым выполняло действие
21 * связанное действие
22 * @param cancelAction если <code>true</code> тогда выполнилось
23 * отменяющее связанное действие.
24 */
25 public Object afterLinkedActionExecute(
26 Object targetObject, Object linkedTargetObject
27 , boolean cancelAction)
28 throws Exception;
29 }