James Moger
2013-11-18 cacf8bff097fbb66a7be1bfe267b5da2605145f8
src/main/java/com/gitblit/LogoServlet.java
@@ -21,11 +21,15 @@
import java.io.InputStream;
import java.io.OutputStream;
import javax.inject.Inject;
import javax.inject.Singleton;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.gitblit.manager.IRuntimeManager;
/**
 * Handles requests for logo.png
@@ -33,19 +37,24 @@
 * @author James Moger
 *
 */
@Singleton
public class LogoServlet extends HttpServlet {
   private static final long serialVersionUID = 1L;
   private static final long lastModified = System.currentTimeMillis();
   public LogoServlet() {
   private final IRuntimeManager runtimeManager;
   @Inject
   public LogoServlet(IRuntimeManager runtimeManager) {
      super();
      this.runtimeManager = runtimeManager;
   }
   @Override
   protected long getLastModified(HttpServletRequest req) {
      File file = GitBlit.getFileOrFolder(Keys.web.headerLogo, "${baseFolder}/logo.png");
      File file = runtimeManager.getFileOrFolder(Keys.web.headerLogo, "${baseFolder}/logo.png");
      if (file.exists()) {
         return Math.max(lastModified, file.lastModified());
      } else {
@@ -59,7 +68,7 @@
      InputStream is = null;
      try {
         String contentType = null;
         File file = GitBlit.getFileOrFolder(Keys.web.headerLogo, "${baseFolder}/logo.png");
         File file = runtimeManager.getFileOrFolder(Keys.web.headerLogo, "${baseFolder}/logo.png");
         if (file.exists()) {
            // custom logo
            ServletContext context = request.getSession().getServletContext();
@@ -88,7 +97,7 @@
      } catch (Exception e) {
         e.printStackTrace();
      } finally {
         if(is != null) {
         if (is != null) {
            is.close();
         }
      }