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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43 public class InsertAttributeFMModel implements TemplateDirectiveModel {
44
45
46
47
48 private org.apache.tiles.template.InsertAttributeModel model;
49
50
51
52
53
54
55
56 public InsertAttributeFMModel(org.apache.tiles.template.InsertAttributeModel model) {
57 this.model = model;
58 }
59
60
61 @SuppressWarnings("unchecked")
62 @Override
63 public void execute(Environment env, @SuppressWarnings("rawtypes") Map params, TemplateModel[] loopVars,
64 TemplateDirectiveBody body) throws TemplateException, IOException {
65 AutotagRuntime<org.apache.tiles.request.Request> runtime = new org.apache.tiles.request.freemarker.autotag.FreemarkerAutotagRuntime();
66 if (runtime instanceof TemplateDirectiveModel) {
67 ((TemplateDirectiveModel) runtime).execute(env, params, loopVars, body);
68 }
69 org.apache.tiles.request.Request request = runtime.createRequest();
70 ModelBody modelBody = runtime.createModelBody();
71 model.execute(
72 runtime.getParameter("ignore", java.lang.Boolean.class, false),
73 runtime.getParameter("preparer", java.lang.String.class, null),
74 runtime.getParameter("role", java.lang.String.class, null),
75 runtime.getParameter("defaultValue", java.lang.Object.class, null),
76 runtime.getParameter("defaultValueRole", java.lang.String.class, null),
77 runtime.getParameter("defaultValueType", java.lang.String.class, null),
78 runtime.getParameter("name", java.lang.String.class, null),
79 runtime.getParameter("value", org.apache.tiles.Attribute.class, null),
80 runtime.getParameter("flush", java.lang.Boolean.class, false),
81 request, modelBody
82 );
83 }
84 }