View Javadoc

1   /*
2    * $Id: DefaultTagLibrary.java 651946 2008-04-27 13:41:38Z apetrelli $
3    *
4    * Licensed to the Apache Software Foundation (ASF) under one
5    * or more contributor license agreements.  See the NOTICE file
6    * distributed with this work for additional information
7    * regarding copyright ownership.  The ASF licenses this file
8    * to you under the Apache License, Version 2.0 (the
9    * "License"); you may not use this file except in compliance
10   * with the License.  You may obtain a copy of the License at
11   *
12   *  http://www.apache.org/licenses/LICENSE-2.0
13   *
14   * Unless required by applicable law or agreed to in writing,
15   * software distributed under the License is distributed on an
16   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
17   * KIND, either express or implied.  See the License for the
18   * specific language governing permissions and limitations
19   * under the License.
20   */
21  
22  package org.apache.struts2.views;
23  
24  import java.util.Arrays;
25  import java.util.List;
26  
27  import javax.servlet.http.HttpServletRequest;
28  import javax.servlet.http.HttpServletResponse;
29  
30  import org.apache.struts2.views.freemarker.tags.StrutsModels;
31  import org.apache.struts2.views.velocity.components.ActionDirective;
32  import org.apache.struts2.views.velocity.components.ActionErrorDirective;
33  import org.apache.struts2.views.velocity.components.ActionMessageDirective;
34  import org.apache.struts2.views.velocity.components.AnchorDirective;
35  import org.apache.struts2.views.velocity.components.BeanDirective;
36  import org.apache.struts2.views.velocity.components.CheckBoxDirective;
37  import org.apache.struts2.views.velocity.components.CheckBoxListDirective;
38  import org.apache.struts2.views.velocity.components.ComboBoxDirective;
39  import org.apache.struts2.views.velocity.components.ComponentDirective;
40  import org.apache.struts2.views.velocity.components.DateDirective;
41  import org.apache.struts2.views.velocity.components.DivDirective;
42  import org.apache.struts2.views.velocity.components.DoubleSelectDirective;
43  import org.apache.struts2.views.velocity.components.FieldErrorDirective;
44  import org.apache.struts2.views.velocity.components.FileDirective;
45  import org.apache.struts2.views.velocity.components.FormDirective;
46  import org.apache.struts2.views.velocity.components.HeadDirective;
47  import org.apache.struts2.views.velocity.components.HiddenDirective;
48  import org.apache.struts2.views.velocity.components.I18nDirective;
49  import org.apache.struts2.views.velocity.components.IncludeDirective;
50  import org.apache.struts2.views.velocity.components.LabelDirective;
51  import org.apache.struts2.views.velocity.components.OptionTransferSelectDirective;
52  import org.apache.struts2.views.velocity.components.ParamDirective;
53  import org.apache.struts2.views.velocity.components.PasswordDirective;
54  import org.apache.struts2.views.velocity.components.PropertyDirective;
55  import org.apache.struts2.views.velocity.components.PushDirective;
56  import org.apache.struts2.views.velocity.components.RadioDirective;
57  import org.apache.struts2.views.velocity.components.ResetDirective;
58  import org.apache.struts2.views.velocity.components.SelectDirective;
59  import org.apache.struts2.views.velocity.components.SetDirective;
60  import org.apache.struts2.views.velocity.components.SubmitDirective;
61  import org.apache.struts2.views.velocity.components.TextAreaDirective;
62  import org.apache.struts2.views.velocity.components.TextDirective;
63  import org.apache.struts2.views.velocity.components.TextFieldDirective;
64  import org.apache.struts2.views.velocity.components.TokenDirective;
65  import org.apache.struts2.views.velocity.components.URLDirective;
66  import org.apache.struts2.views.velocity.components.UpDownSelectDirective;
67  
68  import com.opensymphony.xwork2.util.ValueStack;
69  
70  /***
71   * The default Struts tag library
72   */
73  public class DefaultTagLibrary implements TagLibrary {
74  
75      public Object getFreemarkerModels(ValueStack stack, HttpServletRequest req,
76              HttpServletResponse res) {
77          
78          return new StrutsModels(stack, req, res);
79      }
80  
81      public List<Class> getVelocityDirectiveClasses() {
82          Class[] directives = new Class[] {
83              ActionDirective.class,
84              BeanDirective.class,
85              CheckBoxDirective.class,
86              CheckBoxListDirective.class,
87              ComboBoxDirective.class,
88              ComponentDirective.class,
89              DateDirective.class,
90              DivDirective.class,
91              DoubleSelectDirective.class,
92              FileDirective.class,
93              FormDirective.class,
94              HeadDirective.class,
95              HiddenDirective.class,
96              AnchorDirective.class,
97              I18nDirective.class,
98              IncludeDirective.class,
99              LabelDirective.class,
100             ParamDirective.class,
101             PasswordDirective.class,
102             PushDirective.class,
103             PropertyDirective.class,
104             RadioDirective.class,
105             SelectDirective.class,
106             SetDirective.class,
107             SubmitDirective.class,
108             ResetDirective.class,
109             TextAreaDirective.class,
110             TextDirective.class,
111             TextFieldDirective.class,
112             TokenDirective.class,
113             URLDirective.class,
114             ActionErrorDirective.class,
115             ActionMessageDirective.class,
116             FieldErrorDirective.class,
117             OptionTransferSelectDirective.class,
118             UpDownSelectDirective.class
119         };
120         return Arrays.asList(directives);
121     }
122 
123 }