From 269c5043ab8f66f67d5719ac5149a436ca1baa2b Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Fri, 29 Nov 2013 11:05:51 -0500
Subject: [PATCH] Extract Federation, Gitblit and Services manager from GitBlit singleton

---
 src/main/java/com/gitblit/LogoServlet.java |   17 +++++++++++++----
 1 files changed, 13 insertions(+), 4 deletions(-)

diff --git a/src/main/java/com/gitblit/LogoServlet.java b/src/main/java/com/gitblit/LogoServlet.java
index eb167e7..17b05cf 100644
--- a/src/main/java/com/gitblit/LogoServlet.java
+++ b/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();
 			}
 		}

--
Gitblit v1.9.1