From f6cbed8bf3fd630f1d02832240e93fa89dd118e3 Mon Sep 17 00:00:00 2001
From: Pierre-yves Baloche <p-y.baloche@novia-systems.fr>
Date: Fri, 06 Mar 2015 11:39:39 -0500
Subject: [PATCH] Setting up a checksum on user and team instances to lower connection delay

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

diff --git a/src/main/java/com/gitblit/GitBlit.java b/src/main/java/com/gitblit/GitBlit.java
index 8179385..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;
 
@@ -264,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;
 	}
 

--
Gitblit v1.9.1