View Javadoc
1   // ---------- Attention: Generated code, please do not modify! -----------
2   
3   /*
4    * Licensed to the Apache Software Foundation (ASF) under one or more
5    * contributor license agreements.  See the NOTICE file distributed with
6    * this work for additional information regarding copyright ownership.
7    * The ASF licenses this file to You under the Apache License, Version 2.0
8    * (the "License"); you may not use this file except in compliance with
9    * the License.  You may obtain a copy of the License at
10   *
11   *      http://www.apache.org/licenses/LICENSE-2.0
12   *
13   * Unless required by applicable law or agreed to in writing, software
14   * distributed under the License is distributed on an "AS IS" BASIS,
15   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16   * See the License for the specific language governing permissions and
17   * limitations under the License.
18   */
19  
20  package org.apache.myfaces.tobago.component;
21  
22  import javax.faces.context.FacesContext;
23  import org.apache.myfaces.tobago.internal.component.AbstractUIOperation;
24  import org.apache.myfaces.tobago.internal.util.ArrayUtils;
25  import org.apache.myfaces.tobago.internal.util.StringUtils;
26  import org.apache.myfaces.tobago.internal.util.Deprecation;
27  import org.apache.myfaces.tobago.component.Tags;
28  import javax.annotation.Generated;
29  import javax.el.ELException;
30  import javax.faces.FacesException;
31  import java.util.Arrays;
32  import java.util.ArrayList;
33  import java.util.Collection;
34  import java.util.List;
35  import javax.el.MethodExpression;
36  import javax.el.ValueExpression;
37  
38  /**
39   An operation describes an Tobago command, which will usually executed on client side.
40  
41    ********************* <br/>
42    WARNING <br/>
43    ********************* <br/>
44    This feature is preliminary and may be subject of change in later versions!  <br/>
45    * UIComponent class, generated from template {@code component.stg} with class
46    * {@link org.apache.myfaces.tobago.internal.taglib.component.OperationTagDeclaration}.
47   */
48  @Generated("component.stg")
49  public class UIOperation
50      extends AbstractUIOperation  {
51  
52    public static final String COMPONENT_TYPE = Tags.operation.componentType();
53  
54    public static final String COMPONENT_FAMILY = "org.apache.myfaces.tobago.Operation";
55  
56  
57    enum PropertyKeys {
58      name,
59      forComponent,
60    }
61  
62    public String getFamily() {
63      return COMPONENT_FAMILY;
64    }
65  
66  
67    /**
68    Name of the operation to be executed.
69  
70    */
71    public java.lang.String getName() {
72      return (java.lang.String) getStateHelper().eval(PropertyKeys.name);
73    }
74  
75    public void setName(java.lang.String name) {
76      getStateHelper().put(PropertyKeys.name, name);
77    }
78  
79    /**
80    The id of the component the operation is related to.
81  
82    */
83    public java.lang.String getFor() {
84      return (java.lang.String) getStateHelper().eval(PropertyKeys.forComponent);
85    }
86  
87    public void setFor(java.lang.String forComponent) {
88      getStateHelper().put(PropertyKeys.forComponent, forComponent);
89    }
90  
91  
92    @Override
93    public void restoreState(FacesContext context, Object state) {
94      // FIXME HACK for mojarra SystemEventListener state restoring bug
95      pushComponentToEL(context, this);
96      super.restoreState(context, state);
97      popComponentFromEL(context);
98    }
99  
100 }