From 416614cdc35aff21281df7d1f359cd9f65d5af63 Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Tue, 21 May 2013 17:36:51 -0400 Subject: [PATCH] Allow clients to define supported transports --- src/main/java/com/gitblit/models/GitClientApplication.java | 20 ++++++++++++++++++++ 1 files changed, 20 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/gitblit/models/GitClientApplication.java b/src/main/java/com/gitblit/models/GitClientApplication.java index 8225da4..eb47eb1 100644 --- a/src/main/java/com/gitblit/models/GitClientApplication.java +++ b/src/main/java/com/gitblit/models/GitClientApplication.java @@ -39,6 +39,7 @@ public String cloneUrl; public String command; public String productUrl; + public String [] transports; public String[] platforms; public AccessPermission minimumPermission; public boolean isActive; @@ -60,6 +61,25 @@ return false; } + public boolean supportsTransport(String transportOrUrl) { + if (ArrayUtils.isEmpty(transports)) { + return true; + } + + String scheme = transportOrUrl; + if (transportOrUrl.indexOf(':') > -1) { + // strip scheme + scheme = transportOrUrl.substring(0, transportOrUrl.indexOf(':')); + } + + for (String transport : transports) { + if (transport.equalsIgnoreCase(scheme)) { + return true; + } + } + return false; + } + @Override public String toString() { return StringUtils.isEmpty(title) ? name : title; -- Gitblit v1.9.1