From 4fcac9d2cbdafb51e3ee9ca3b3da64fd86103174 Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Tue, 26 Nov 2013 15:58:15 -0500 Subject: [PATCH] Remove artifact setting from manager dialog --- src/main/java/com/gitblit/git/RepositoryResolver.java | 30 +++++++++++++++++++----------- 1 files changed, 19 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/gitblit/git/RepositoryResolver.java b/src/main/java/com/gitblit/git/RepositoryResolver.java index fb5db71..e44b153 100644 --- a/src/main/java/com/gitblit/git/RepositoryResolver.java +++ b/src/main/java/com/gitblit/git/RepositoryResolver.java @@ -23,7 +23,6 @@ import org.eclipse.jgit.errors.RepositoryNotFoundException; import org.eclipse.jgit.lib.Repository; -import org.eclipse.jgit.transport.DaemonClient; import org.eclipse.jgit.transport.resolver.FileResolver; import org.eclipse.jgit.transport.resolver.ServiceNotEnabledException; import org.slf4j.Logger; @@ -35,14 +34,14 @@ /** * Resolves repositories and grants export access. - * + * * @author James Moger * */ public class RepositoryResolver<X> extends FileResolver<X> { private final Logger logger = LoggerFactory.getLogger(RepositoryResolver.class); - + public RepositoryResolver(File repositoriesFolder) { super(repositoriesFolder, true); } @@ -54,13 +53,22 @@ public Repository open(final X req, final String name) throws RepositoryNotFoundException, ServiceNotEnabledException { Repository repo = super.open(req, name); - // XXX Set repository name for the pack factories + + // Set repository name for the pack factories // We do this because the JGit API does not have a consistent way to // retrieve the repository name from the pack factories or the hooks. - repo.getConfig().setString("gitblit", null, "repositoryName", name); + if (req instanceof HttpServletRequest) { + // http/https request + HttpServletRequest client = (HttpServletRequest) req; + client.setAttribute("gitblitRepositoryName", name); + } else if (req instanceof GitDaemonClient) { + // git request + GitDaemonClient client = (GitDaemonClient) req; + client.setRepositoryName(name); + } return repo; } - + /** * Check if this repository can be served by the requested client connection. */ @@ -71,18 +79,18 @@ String scheme = null; UserModel user = null; String origin = null; - - if (req instanceof DaemonClient) { + + if (req instanceof GitDaemonClient) { // git daemon request // this is an anonymous/unauthenticated protocol - DaemonClient client = (DaemonClient) req; + GitDaemonClient client = (GitDaemonClient) req; scheme = "git"; origin = client.getRemoteAddress().toString(); user = UserModel.ANONYMOUS; } else if (req instanceof HttpServletRequest) { // http/https request HttpServletRequest httpRequest = (HttpServletRequest) req; - scheme = httpRequest.getScheme(); + scheme = httpRequest.getScheme(); origin = httpRequest.getRemoteAddr(); user = GitBlit.self().authenticate(httpRequest); if (user == null) { @@ -96,7 +104,7 @@ scheme, repositoryName, user.username, origin)); return true; } - + // user can not access this git repo logger.warn(MessageFormat.format("{0}:// access of {1} by {2} from {3} DENIED", scheme, repositoryName, user.username, origin)); -- Gitblit v1.9.1