1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 package org.apache.tiles.autotag.jsp;
22
23 import org.apache.tiles.autotag.core.OutputLocator;
24 import org.apache.tiles.autotag.generate.TemplateGenerator;
25 import org.apache.tiles.autotag.generate.TemplateGeneratorBuilder;
26 import org.apache.tiles.autotag.generate.TemplateGeneratorFactory;
27 import org.apache.velocity.app.VelocityEngine;
28
29
30
31
32
33
34 public class JspTemplateGeneratorFactory implements TemplateGeneratorFactory {
35
36
37
38
39 private OutputLocator classesOutputLocator;
40
41
42
43
44 private OutputLocator resourcesOutputLocator;
45
46
47
48
49 private VelocityEngine velocityEngine;
50
51
52
53
54 private TemplateGeneratorBuilder templateGeneratorBuilder;
55
56
57
58
59
60
61
62
63
64 public JspTemplateGeneratorFactory(OutputLocator classesOutputLocator,
65 OutputLocator resourcesOutputLocator, VelocityEngine velocityEngine,
66 TemplateGeneratorBuilder templateGeneratorBuilder) {
67 this.classesOutputLocator = classesOutputLocator;
68 this.resourcesOutputLocator = resourcesOutputLocator;
69 this.velocityEngine = velocityEngine;
70 this.templateGeneratorBuilder = templateGeneratorBuilder;
71 }
72
73 @Override
74 public TemplateGenerator createTemplateGenerator() {
75 return templateGeneratorBuilder
76 .setClassesOutputLocator(classesOutputLocator)
77 .setResourcesOutputLocator(resourcesOutputLocator)
78 .addResourcesTemplateSuiteGenerator(
79 new TLDGenerator(velocityEngine))
80 .addClassesTemplateClassGenerator(
81 new TagClassGenerator(velocityEngine)).build();
82 }
83
84 }