| | |
| | |
|
| | | /**
|
| | | * Serves the content of a gh-pages branch.
|
| | | * |
| | | *
|
| | | * @author James Moger
|
| | | * |
| | | *
|
| | | */
|
| | | public class PagesServlet extends HttpServlet {
|
| | |
|
| | |
| | |
|
| | | /**
|
| | | * Returns an url to this servlet for the specified parameters.
|
| | | * |
| | | *
|
| | | * @param baseURL
|
| | | * @param repository
|
| | | * @param path
|
| | |
| | | /**
|
| | | * Retrieves the specified resource from the gh-pages branch of the
|
| | | * repository.
|
| | | * |
| | | *
|
| | | * @param request
|
| | | * @param response
|
| | | * @throws javax.servlet.ServletException
|
| | |
| | | r.close();
|
| | | return;
|
| | | }
|
| | | response.setDateHeader("Last-Modified", JGitUtils.getCommitDate(commit).getTime());
|
| | |
|
| | | String [] encodings = GitBlit.getEncodings();
|
| | |
|
| | |
| | | if (StringUtils.isEmpty(resource)) {
|
| | | // find resource
|
| | | List<String> markdownExtensions = GitBlit.getStrings(Keys.web.markdownExtensions);
|
| | | List<String> extensions = new ArrayList<String>(markdownExtensions.size() + 1);
|
| | | 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;
|
| | |
| | |
|
| | | 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) {
|