Respect download.scheme in clone links

Gitblit-plugin did not respect gerrit.config's download.scheme
settings when passing web.otherUrls to Gitblit.  This change
attempts to evaluate download.scheme when populating
web.otherUrls. This is only interpretting download.scheme
when it is: not provided, http, or ssh.

Change-Id: Ife13c7a93aa8e1848a08429555ae1f61c0479895
diff --git a/src/main/java/com/googlesource/gerrit/plugins/gitblit/GitBlitUrlsConfig.java b/src/main/java/com/googlesource/gerrit/plugins/gitblit/GitBlitUrlsConfig.java
index 8367e79..75c681d 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/gitblit/GitBlitUrlsConfig.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/gitblit/GitBlitUrlsConfig.java
@@ -17,6 +17,8 @@
 import java.net.URI;
 import java.net.URISyntaxException;
 import java.net.UnknownHostException;
+import java.util.Arrays;
+import java.util.List;
 
 import org.eclipse.jgit.lib.Config;
 import org.slf4j.Logger;
@@ -34,17 +36,23 @@
   private String canonicalWebUrlString;
   private String sshdListenAddressString;
   private String httpdListenUrlString;
+  private List<String> downloadSchemes;
 
   public GitBlitUrlsConfig(Config config) {
     canonicalWebUrlString = config.getString("gerrit", null, "canonicalWebUrl");
     sshdListenAddressString = config.getString("sshd", null, "listenAddress");
     httpdListenUrlString = config.getString("httpd", null, "listenUrl");
+    downloadSchemes = Arrays.asList(config.getStringList("download", null, "scheme"));
   }
 
   public String getGitSshUrl() {
     if (sshdListenAddressString == null) {
       return "";
     }
+    if (!downloadSchemes.isEmpty() && !downloadSchemes.contains("ssh")) {
+      return "";
+    }
+
     String[] urlParts = sshdListenAddressString.split(":");
     if (urlParts.length < 2) {
       log.error("Invalid SSHD listenUrl: " + sshdListenAddressString);
@@ -87,6 +95,9 @@
     if (httpListenUrl == null) {
       return "";
     }
+      if (!downloadSchemes.isEmpty() && !downloadSchemes.contains("http")) {
+        return "";
+      }
 
     String httpUrl = Objects.firstNonNull(canonicalWebUrlString, httpListenUrl);
     httpUrl = httpUrl.replace("://", "://" + GITBLIT_USER + "@");