use of jetbrick.template.utils.finder.TemplateFileFinder in project jetbrick-template-1x by subchen.
the class JetxGenerateApp method execute.
private void execute() {
JetConfig config = new JetConfig();
config.loadFile(new File(configFile));
config.load(JetConfig.TEMPLATE_LOADER, FileSystemResourceLoader.class.getName());
config.load(JetConfig.TEMPLATE_PATH, sourcePath);
config.load(JetConfig.COMPILE_PATH, compilePath);
config.load(JetConfig.COMPILE_STRATEGY, "always");
config.load(JetConfig.COMPILE_DEBUG, "false");
JetEngine engine = new JetEngine(config);
TemplateFileFinder finder = new TemplateFileFinder(config.getTemplateSuffix());
finder.lookupFileSystem(new File(sourcePath), true);
List<String> resources = finder.getResources();
System.out.println("Find " + resources.size() + " templates to precompile ...");
int succ = 0;
int fail = 0;
long ts = System.currentTimeMillis();
for (String name : resources) {
try {
engine.getTemplate(name);
succ++;
} catch (Exception e) {
fail++;
e.printStackTrace();
if (!all) {
System.err.println();
System.err.println("Failed to compile templates.");
System.err.println("Please add -all option to compile all templates.");
System.err.println("System exit.");
System.exit(1);
}
}
}
ts = System.currentTimeMillis() - ts;
System.out.println("Completed precompile templates in " + ts + " ms, success = " + succ + ", failure = " + fail + ".");
}
use of jetbrick.template.utils.finder.TemplateFileFinder in project jetbrick-template-1x by subchen.
the class JarResourceLoader method loadAll.
@Override
public List<String> loadAll() {
TemplateFileFinder finder = new TemplateFileFinder(suffix);
finder.lookupZipFile(jarFile, entryName, true);
return finder.getResources();
}
use of jetbrick.template.utils.finder.TemplateFileFinder in project jetbrick-template-1x by subchen.
the class ClasspathResourceLoader method loadAll.
@Override
public List<String> loadAll() {
String[] packageNames = null;
if (basepath.length() > 1) {
packageNames = new String[] { basepath.substring(1).replace('/', '.') };
}
TemplateFileFinder finder = new TemplateFileFinder(suffix);
finder.lookupClasspath(packageNames, true);
return finder.getResources();
}
use of jetbrick.template.utils.finder.TemplateFileFinder in project jetbrick-template-1x by subchen.
the class WebResourceLoader method loadAll.
@Override
public List<String> loadAll() {
File dir;
String realpath = servletContext.getRealPath(basepath);
if (realpath != null) {
dir = new File(realpath);
} else {
// 该死的 weblogic,以war部署的时候,无法使用 getRealPath
try {
URL url = servletContext.getResource(basepath);
if (url == null) {
throw new RuntimeException("template.path is not found in WebResourceLoader: " + basepath);
}
dir = URLUtils.toFileObject(url);
} catch (IOException e) {
throw new RuntimeException(e);
}
}
TemplateFileFinder finder = new TemplateFileFinder(suffix);
finder.lookupFileSystem(dir, true);
return finder.getResources();
}
use of jetbrick.template.utils.finder.TemplateFileFinder in project jetbrick-template-1x by subchen.
the class FileSystemResourceLoader method loadAll.
@Override
public List<String> loadAll() {
TemplateFileFinder finder = new TemplateFileFinder(suffix);
finder.lookupFileSystem(new File(basepath), true);
return finder.getResources();
}
Aggregations