1 package net.pterodactylus.sone.main;
3 import static net.pterodactylus.util.template.TemplateParser.parse;
5 import java.io.InputStream;
6 import java.io.InputStreamReader;
8 import java.io.UnsupportedEncodingException;
10 import net.pterodactylus.util.io.Closer;
11 import net.pterodactylus.util.template.Template;
12 import net.pterodactylus.util.web.Page;
13 import net.pterodactylus.util.web.Request;
14 import net.pterodactylus.util.web.StaticPage;
17 * Default {@link Loaders} implementation that loads resources from the classpath.
19 * @author <a href="mailto:bombe@pterodactylus.net">David ‘Bombe’ Roden</a>
21 public class DefaultLoaders implements Loaders {
24 public Template loadTemplate(String path) {
25 InputStream templateInputStream = null;
28 templateInputStream = getClass().getResourceAsStream(path);
29 reader = new InputStreamReader(templateInputStream, "UTF-8");
31 } catch (UnsupportedEncodingException uee1) {
32 throw new RuntimeException("UTF-8 not supported.");
35 Closer.close(templateInputStream);
40 public <REQ extends Request> Page<REQ> loadStaticPage(String pathPrefix, String basePath, String mimeType) {
41 return new StaticPage<REQ>(pathPrefix, basePath, mimeType);