View Javadoc

1   package org.weda.action;
2   
3   import java.util.List;
4   import java.util.Set;
5   import org.weda.message.Messages;
6   
7   /**Цель: предосталение инфмации о действии.
8    *
9    * @author tim
10   */
11  public interface ActionDescriptor {
12      public void init() throws ActionDescriptorException;
13      /**Метод возвращает название действия.
14       */
15      public String getName();
16      /**Метод возвращет краткое описание действия.
17       */
18      public String getDescription();
19      /**Метод возвращает класс действия.
20       */
21      public Class getActionClass();
22      /**Метод возвращает символ при нажатии на который вместе с клавишей
23       * Alt (на PC платформе) будет выполнено действие описываемое данным
24       * дескриптором.
25       */
26      public String getAccessKey();
27      /**Метод возвращает описание свойств значения которых нужно установить 
28       * или прочитать перед выполнением действия.
29       */
30      public List<ActionParameter> getActionParameters();
31      /**Метод вернет описание параметра по его имени.
32       * @throws ActionDescriptorException если в действии нет указаного параметра.
33       */
34      public ActionParameter getActionParameter(String name) 
35          throws ActionDescriptorException;
36      /**Метод возвращает имя фрейма в котором будет отображен результат
37       * действия.
38       */
39      public String getTargetFrame();
40      /**Метод устанавливает описание свойств значения которых нужно установить 
41       * перед выполнением действия.
42       */
43      public void addActionParameter(ActionParameter actionParameter);
44      /**Метод возвращает список классов над которыми действие может 
45       * быть выполнено.
46       */
47      public Set<ActionTargetClass> getTargetClasses();
48      /**Метод возвращает действия связанные с данным.
49       */
50      public List<LinkedAction> getLinkedActions();
51      /**Метод устанавливает объект дающий доступ к локализированным сообщениям 
52       * в разрезе класса действия ({@link #getActionClass()). Т.е. 
53       * <code>messages</code> является подмножеством сообщений 
54       * <code>actions:action_class</code>
55       */
56      public void setMessages(Messages messages);
57      /**Метод добавляет пару свойство действия, значение. Значения свойств 
58       * будут установлены для действия если вызвать метод 
59       * {@link #setActionPropertiesValues}
60       */
61      public void addActionParameterValue(ActionParameterValue propertyValue);
62      /**
63       * Метод устанавливает значения свойств объекта действия.
64       * 
65       * @see #addActionPropertyValue(ActionParameterValue)
66       */
67      public void setActionParametersValues(Object action) 
68          throws ActionDescriptorException;
69  }