mirror of
https://gitee.com/chinabugotech/hutool.git
synced 2025-07-21 15:09:48 +08:00
fix code
This commit is contained in:
@@ -32,9 +32,9 @@ import java.nio.file.Paths;
|
|||||||
*/
|
*/
|
||||||
public class JteEngine implements TemplateEngine {
|
public class JteEngine implements TemplateEngine {
|
||||||
|
|
||||||
|
private final ContentType contentType = ContentType.Plain;
|
||||||
private TemplateConfig config = TemplateConfig.DEFAULT;
|
private TemplateConfig config = TemplateConfig.DEFAULT;
|
||||||
private gg.jte.TemplateEngine engine;
|
private gg.jte.TemplateEngine engine;
|
||||||
private final ContentType contentType = ContentType.Plain;
|
|
||||||
|
|
||||||
// --------------------------------------------------------------------------------- Constructor start
|
// --------------------------------------------------------------------------------- Constructor start
|
||||||
|
|
||||||
@@ -60,7 +60,7 @@ public class JteEngine implements TemplateEngine {
|
|||||||
* @param codeResolver {@link CodeResolver}
|
* @param codeResolver {@link CodeResolver}
|
||||||
*/
|
*/
|
||||||
public JteEngine(final CodeResolver codeResolver) {
|
public JteEngine(final CodeResolver codeResolver) {
|
||||||
createEngine(codeResolver, contentType);
|
this.engine = createEngine(codeResolver);
|
||||||
}
|
}
|
||||||
// --------------------------------------------------------------------------------- Constructor end
|
// --------------------------------------------------------------------------------- Constructor end
|
||||||
|
|
||||||
@@ -76,11 +76,13 @@ public class JteEngine implements TemplateEngine {
|
|||||||
@Override
|
@Override
|
||||||
public Template getTemplate(final String resource) {
|
public Template getTemplate(final String resource) {
|
||||||
if (TemplateConfig.ResourceMode.STRING.equals(config.getResourceMode())) {
|
if (TemplateConfig.ResourceMode.STRING.equals(config.getResourceMode())) {
|
||||||
if (!StrUtil.endWithAny(config.getPath(), ".jte", ".kte")) {
|
String path = config.getPath();
|
||||||
throw new RuntimeException("path need to end with '.jte' or '.kte'");
|
if(!StrUtil.endWithAny(path, ".jte", ".kte")){
|
||||||
|
path = StrUtil.addSuffixIfNot(StrUtil.defaultIfEmpty(path, "hutool"), ".jte");
|
||||||
}
|
}
|
||||||
createEngine(new SimpleStringCodeResolver(MapUtil.of(config.getPath(), resource)), contentType);
|
return new JteTemplate(createEngine(
|
||||||
return new JteTemplate(engine, config.getPath(), config.getCharset());
|
new SimpleStringCodeResolver(MapUtil.of(path, resource)))
|
||||||
|
, path, config.getCharset());
|
||||||
} else {
|
} else {
|
||||||
return new JteTemplate(engine, resource, config.getCharset());
|
return new JteTemplate(engine, resource, config.getCharset());
|
||||||
}
|
}
|
||||||
@@ -97,10 +99,10 @@ public class JteEngine implements TemplateEngine {
|
|||||||
private void createEngine() {
|
private void createEngine() {
|
||||||
switch (config.getResourceMode()) {
|
switch (config.getResourceMode()) {
|
||||||
case CLASSPATH:
|
case CLASSPATH:
|
||||||
createEngine(new ResourceCodeResolver(config.getPath(), JteEngine.class.getClassLoader()), contentType);
|
this.engine = createEngine(new ResourceCodeResolver(config.getPath(), JteEngine.class.getClassLoader()));
|
||||||
break;
|
break;
|
||||||
case FILE:
|
case FILE:
|
||||||
createEngine(new DirectoryCodeResolver(Paths.get(config.getPath())), contentType);
|
this.engine = createEngine(new DirectoryCodeResolver(Paths.get(config.getPath())));
|
||||||
break;
|
break;
|
||||||
case STRING:
|
case STRING:
|
||||||
// 这里无法直接创建引擎
|
// 这里无法直接创建引擎
|
||||||
@@ -114,9 +116,8 @@ public class JteEngine implements TemplateEngine {
|
|||||||
* 创建引擎 {@link gg.jte.TemplateEngine }
|
* 创建引擎 {@link gg.jte.TemplateEngine }
|
||||||
*
|
*
|
||||||
* @param codeResolver CodeResolver
|
* @param codeResolver CodeResolver
|
||||||
* @param contentType ContentType
|
|
||||||
*/
|
*/
|
||||||
private void createEngine(final CodeResolver codeResolver, final ContentType contentType) {
|
private gg.jte.TemplateEngine createEngine(final CodeResolver codeResolver) {
|
||||||
this.engine = gg.jte.TemplateEngine.create(codeResolver, contentType);
|
return gg.jte.TemplateEngine.create(codeResolver, this.contentType);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -162,10 +162,10 @@ public class TemplateFactoryTest {
|
|||||||
public void jteEngineTest() {
|
public void jteEngineTest() {
|
||||||
// 字符串模板
|
// 字符串模板
|
||||||
TemplateEngine engine = TemplateEngineFactory.createEngine(
|
TemplateEngine engine = TemplateEngineFactory.createEngine(
|
||||||
new TemplateConfig("templates.jte").setCustomEngine(JteEngine.class));
|
new TemplateConfig().setCustomEngine(JteEngine.class));
|
||||||
Template template = engine.getTemplate("@param java.util.HashMap<String, String> map\n" +
|
Template template = engine.getTemplate("@param java.util.HashMap<String, String> map\n" +
|
||||||
"<h3>${map.get(\"message\")}</h3>");
|
"<h3>${map.get(\"message\")}</h3>");
|
||||||
Map<String, String> model = new HashMap<>();
|
final Map<String, String> model = new HashMap<>();
|
||||||
model.put("message", "Hutool");
|
model.put("message", "Hutool");
|
||||||
String result = template.render(model);
|
String result = template.render(model);
|
||||||
Assertions.assertEquals("<h3>Hutool</h3>", result);
|
Assertions.assertEquals("<h3>Hutool</h3>", result);
|
||||||
|
Reference in New Issue
Block a user