From ddcebbd982d81dabf8cb1c89f60f9b876a23b58c Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Thu, 04 Sep 2014 13:32:44 -0400
Subject: [PATCH] Merged #149 "Repo creation with initial commit fails if user does not have an email address"

---
 src/main/java/com/gitblit/GitBlit.java |   43 +++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 43 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/gitblit/GitBlit.java b/src/main/java/com/gitblit/GitBlit.java
index 0834252..f9d9be9 100644
--- a/src/main/java/com/gitblit/GitBlit.java
+++ b/src/main/java/com/gitblit/GitBlit.java
@@ -20,6 +20,7 @@
 import java.util.Collections;
 import java.util.Comparator;
 import java.util.HashSet;
+import java.util.Iterator;
 import java.util.List;
 import java.util.Set;
 
@@ -115,6 +116,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 +265,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 +386,7 @@
 
 					// core managers
 					IRuntimeManager.class,
+					IPluginManager.class,
 					INotificationManager.class,
 					IUserManager.class,
 					IAuthenticationManager.class,
@@ -377,6 +412,10 @@
 
 		@Provides @Singleton IRuntimeManager provideRuntimeManager() {
 			return runtimeManager;
+		}
+
+		@Provides @Singleton IPluginManager providePluginManager() {
+			return pluginManager;
 		}
 
 		@Provides @Singleton INotificationManager provideNotificationManager() {
@@ -410,6 +449,7 @@
 		@Provides @Singleton NullTicketService provideNullTicketService() {
 			return new NullTicketService(
 					runtimeManager,
+					pluginManager,
 					notificationManager,
 					userManager,
 					repositoryManager);
@@ -418,6 +458,7 @@
 		@Provides @Singleton FileTicketService provideFileTicketService() {
 			return new FileTicketService(
 					runtimeManager,
+					pluginManager,
 					notificationManager,
 					userManager,
 					repositoryManager);
@@ -426,6 +467,7 @@
 		@Provides @Singleton BranchTicketService provideBranchTicketService() {
 			return new BranchTicketService(
 					runtimeManager,
+					pluginManager,
 					notificationManager,
 					userManager,
 					repositoryManager);
@@ -434,6 +476,7 @@
 		@Provides @Singleton RedisTicketService provideRedisTicketService() {
 			return new RedisTicketService(
 					runtimeManager,
+					pluginManager,
 					notificationManager,
 					userManager,
 					repositoryManager);

--
Gitblit v1.9.1