From 436bd3f0ecdee282c503a9eb0f7a240b7a68ff49 Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Fri, 11 Apr 2014 14:51:50 -0400 Subject: [PATCH] Merged #6 "Support serving repositories over the SSH transport" --- src/main/java/com/gitblit/Constants.java | 23 ++++++++++++++++++++++- 1 files changed, 22 insertions(+), 1 deletions(-) diff --git a/src/main/java/com/gitblit/Constants.java b/src/main/java/com/gitblit/Constants.java index 2a98b53..af53399 100644 --- a/src/main/java/com/gitblit/Constants.java +++ b/src/main/java/com/gitblit/Constants.java @@ -423,6 +423,8 @@ public static final AccessPermission [] NEWPERMISSIONS = { EXCLUDE, VIEW, CLONE, PUSH, CREATE, DELETE, REWIND }; + public static final AccessPermission [] SSHPERMISSIONS = { VIEW, CLONE, PUSH }; + public static AccessPermission LEGACY = REWIND; public final String code; @@ -501,7 +503,7 @@ } public static enum AuthenticationType { - CREDENTIALS, COOKIE, CERTIFICATE, CONTAINER; + PUBLIC_KEY, CREDENTIALS, COOKIE, CERTIFICATE, CONTAINER; public boolean isStandard() { return ordinal() <= COOKIE.ordinal(); @@ -538,6 +540,25 @@ } } + public static enum Transport { + // ordered for url advertisements, assuming equal access permissions + SSH, HTTPS, HTTP, GIT; + + public static Transport fromString(String value) { + for (Transport t : values()) { + if (t.name().equalsIgnoreCase(value)) { + return t; + } + } + return null; + } + + public static Transport fromUrl(String url) { + String scheme = url.substring(0, url.indexOf("://")); + return fromString(scheme); + } + } + @Documented @Retention(RetentionPolicy.RUNTIME) public @interface Unused { -- Gitblit v1.9.1