View Javadoc

1   package org.weda.tapestry.component;
2   
3   import java.util.Map;
4   import org.apache.commons.logging.Log;
5   import org.apache.commons.logging.LogFactory;
6   import org.apache.tapestry.BaseComponent;
7   import org.apache.tapestry.IRequestCycle;
8   import org.apache.tapestry.annotations.Parameter;
9   import org.weda.action.ActionContainer;
10  import org.weda.action.ActionDescriptor;
11  import org.weda.action.ActionRegistryException;
12  import org.weda.action.ActionState;
13  import org.weda.action.Parameter.Direction;
14  
15  /**Абстрактный компонент для отображения действия
16   *
17   * @author tim
18   */
19  public abstract class AbstractAction extends BaseComponent{
20      private final static Log log = LogFactory.getLog(AbstractAction.class);
21      public String parameterName;
22         
23      @Parameter(required=true)
24      public abstract ActionState getActionState();
25      
26      @Parameter(required=true)
27      public abstract ActionContainer getActionContainer();
28      
29      @Parameter(required=true)
30      public abstract Map<String, Object> getActionParameters();
31      
32      @Parameter(required=true)
33      public abstract Map getObjectState();
34      
35      public boolean isReadOnlyParameter() throws Exception{
36          Direction dir = 
37                   getActionState()
38                  .getActionDescriptor()
39                  .getActionParameter(parameterName)
40                  .getDirection();
41          return dir==Direction.READ;
42      }
43      
44      public void onClick(){
45      }
46  }