From 1b34b05f5b8d2d0fd51819b286e22d7ddd27cb27 Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Thu, 03 Jul 2014 16:20:37 -0400 Subject: [PATCH] Embrace @Inject for Managers, Servlets, and Filters --- src/main/java/com/gitblit/GitBlit.java | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 45 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/gitblit/GitBlit.java b/src/main/java/com/gitblit/GitBlit.java index 0834252..8bfa043 100644 --- a/src/main/java/com/gitblit/GitBlit.java +++ b/src/main/java/com/gitblit/GitBlit.java @@ -20,9 +20,11 @@ import java.util.Collections; import java.util.Comparator; import java.util.HashSet; +import java.util.Iterator; import java.util.List; import java.util.Set; +import javax.inject.Inject; import javax.inject.Singleton; import javax.servlet.http.HttpServletRequest; @@ -69,6 +71,7 @@ private ITicketService ticketService; + @Inject public GitBlit( IRuntimeManager runtimeManager, IPluginManager pluginManager, @@ -115,6 +118,21 @@ @Override public boolean isServingRepositories() { return servicesManager.isServingRepositories(); + } + + @Override + public boolean isServingHTTP() { + return servicesManager.isServingHTTP(); + } + + @Override + public boolean isServingGIT() { + return servicesManager.isServingGIT(); + } + + @Override + public boolean isServingSSH() { + return servicesManager.isServingSSH(); } protected Object [] getModules() { @@ -249,6 +267,24 @@ } }); + // consider the user's transport preference + RepositoryUrl preferredUrl = null; + Transport preferredTransport = user.getPreferences().getTransport(); + if (preferredTransport != null) { + Iterator<RepositoryUrl> itr = list.iterator(); + while (itr.hasNext()) { + RepositoryUrl url = itr.next(); + if (url.transport.equals(preferredTransport)) { + itr.remove(); + preferredUrl = url; + break; + } + } + } + if (preferredUrl != null) { + list.add(0, preferredUrl); + } + return list; } @@ -352,6 +388,7 @@ // core managers IRuntimeManager.class, + IPluginManager.class, INotificationManager.class, IUserManager.class, IAuthenticationManager.class, @@ -377,6 +414,10 @@ @Provides @Singleton IRuntimeManager provideRuntimeManager() { return runtimeManager; + } + + @Provides @Singleton IPluginManager providePluginManager() { + return pluginManager; } @Provides @Singleton INotificationManager provideNotificationManager() { @@ -410,6 +451,7 @@ @Provides @Singleton NullTicketService provideNullTicketService() { return new NullTicketService( runtimeManager, + pluginManager, notificationManager, userManager, repositoryManager); @@ -418,6 +460,7 @@ @Provides @Singleton FileTicketService provideFileTicketService() { return new FileTicketService( runtimeManager, + pluginManager, notificationManager, userManager, repositoryManager); @@ -426,6 +469,7 @@ @Provides @Singleton BranchTicketService provideBranchTicketService() { return new BranchTicketService( runtimeManager, + pluginManager, notificationManager, userManager, repositoryManager); @@ -434,6 +478,7 @@ @Provides @Singleton RedisTicketService provideRedisTicketService() { return new RedisTicketService( runtimeManager, + pluginManager, notificationManager, userManager, repositoryManager); -- Gitblit v1.9.1