From d65a6baca9a20461f976a2455d70eecc7faf2db5 Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Tue, 26 Nov 2013 16:07:04 -0500 Subject: [PATCH] Update to Jetty 8.1.13 for Servlet 3 --- src/main/java/com/gitblit/LogoServlet.java | 25 +++++++++++++++---------- 1 files changed, 15 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/gitblit/LogoServlet.java b/src/main/java/com/gitblit/LogoServlet.java index c8820ed..4222f8f 100644 --- a/src/main/java/com/gitblit/LogoServlet.java +++ b/src/main/java/com/gitblit/LogoServlet.java @@ -27,39 +27,43 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import com.gitblit.manager.IRuntimeManager; + /** * Handles requests for logo.png - * + * * @author James Moger - * + * */ public class LogoServlet extends HttpServlet { - + private static final long serialVersionUID = 1L; - + private static final long lastModified = System.currentTimeMillis(); public LogoServlet() { super(); } - + @Override protected long getLastModified(HttpServletRequest req) { - File file = GitBlit.getFileOrFolder(Keys.web.headerLogo, "${baseFolder}/logo.png"); + IRuntimeManager runtimeManager = GitBlit.getManager(IRuntimeManager.class); + File file = runtimeManager.getFileOrFolder(Keys.web.headerLogo, "${baseFolder}/logo.png"); if (file.exists()) { return Math.max(lastModified, file.lastModified()); } else { return lastModified; } } - + @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { InputStream is = null; try { String contentType = null; - File file = GitBlit.getFileOrFolder(Keys.web.headerLogo, "${baseFolder}/logo.png"); + IRuntimeManager runtimeManager = GitBlit.getManager(IRuntimeManager.class); + File file = runtimeManager.getFileOrFolder(Keys.web.headerLogo, "${baseFolder}/logo.png"); if (file.exists()) { // custom logo ServletContext context = request.getSession().getServletContext(); @@ -71,11 +75,12 @@ // default logo response.setDateHeader("Last-Modified", lastModified); is = getClass().getResourceAsStream("/logo.png"); - } + } if (contentType == null) { contentType = "image/png"; } response.setContentType(contentType); + response.setHeader("Cache-Control", "public, max-age=3600, must-revalidate"); OutputStream os = response.getOutputStream(); byte[] buf = new byte[4096]; int bytesRead = is.read(buf); @@ -87,7 +92,7 @@ } catch (Exception e) { e.printStackTrace(); } finally { - if(is != null) { + if (is != null) { is.close(); } } -- Gitblit v1.9.1