1
2
3
4 package org.apache.tiles.freemarker.template;
5
6 import java.io.IOException;
7 import java.util.Map;
8
9 import org.apache.tiles.autotag.core.runtime.ModelBody;
10 import org.apache.tiles.autotag.core.runtime.AutotagRuntime;
11
12 import freemarker.core.Environment;
13 import freemarker.template.TemplateDirectiveBody;
14 import freemarker.template.TemplateDirectiveModel;
15 import freemarker.template.TemplateException;
16 import freemarker.template.TemplateModel;
17
18
19
20
21
22
23
24
25
26
27
28 public class PutListAttributeFMModel implements TemplateDirectiveModel {
29
30
31
32
33 private org.apache.tiles.template.PutListAttributeModel model;
34
35
36
37
38
39
40
41 public PutListAttributeFMModel(org.apache.tiles.template.PutListAttributeModel model) {
42 this.model = model;
43 }
44
45
46 @SuppressWarnings("unchecked")
47 @Override
48 public void execute(Environment env, @SuppressWarnings("rawtypes") Map params, TemplateModel[] loopVars,
49 TemplateDirectiveBody body) throws TemplateException, IOException {
50 AutotagRuntime<org.apache.tiles.request.Request> runtime = new org.apache.tiles.request.freemarker.autotag.FreemarkerAutotagRuntime();
51 if (runtime instanceof TemplateDirectiveModel) {
52 ((TemplateDirectiveModel) runtime).execute(env, params, loopVars, body);
53 }
54 org.apache.tiles.request.Request request = runtime.createRequest();
55 ModelBody modelBody = runtime.createModelBody();
56 model.execute(
57 runtime.getParameter("name", java.lang.String.class, null),
58 runtime.getParameter("role", java.lang.String.class, null),
59 runtime.getParameter("inherit", java.lang.Boolean.class, false),
60 runtime.getParameter("cascade", java.lang.Boolean.class, false),
61 request, modelBody
62 );
63 }
64 }