| | |
| | | import java.io.IOException;
|
| | | import java.text.MessageFormat;
|
| | | import java.text.ParseException;
|
| | | import java.util.ArrayList;
|
| | | import java.util.List;
|
| | |
|
| | | import javax.servlet.ServletContext;
|
| | | import javax.servlet.ServletException;
|
| | |
| | | r.close();
|
| | | return;
|
| | | }
|
| | | response.setDateHeader("Last-Modified", JGitUtils.getCommitDate(commit).getTime());
|
| | |
|
| | | String [] encodings = GitBlit.getEncodings();
|
| | |
|
| | |
| | | byte[] content = null;
|
| | | if (StringUtils.isEmpty(resource)) {
|
| | | // find resource
|
| | | String[] files = { "index.html", "index.htm", "index.mkd" };
|
| | | for (String file : files) {
|
| | | List<String> markdownExtensions = GitBlit.getStrings(Keys.web.markdownExtensions);
|
| | | List<String> extensions = new ArrayList<String>(markdownExtensions.size() + 2);
|
| | | extensions.add("html");
|
| | | extensions.add("htm");
|
| | | extensions.addAll(markdownExtensions);
|
| | | for (String ext : extensions){
|
| | | String file = "index." + ext;
|
| | | String stringContent = JGitUtils.getStringContent(r, tree, file, encodings);
|
| | | if(stringContent == null){
|
| | | continue;
|
| | |
| | |
|
| | | try {
|
| | | // output the content
|
| | | response.setHeader("Cache-Control", "public, max-age=3600, must-revalidate");
|
| | | response.setDateHeader("Last-Modified", JGitUtils.getCommitDate(commit).getTime());
|
| | | response.getOutputStream().write(content);
|
| | | response.flushBuffer();
|
| | | } catch (Throwable t) {
|