From 04a98505a4ab8f48aee22800fcac193d9367d0ae Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Fri, 29 Nov 2013 11:05:51 -0500 Subject: [PATCH] Refactor user services and separate authentication (issue-281) --- src/main/java/com/gitblit/git/GitblitReceivePack.java | 28 ++++++++++++++++++++-------- 1 files changed, 20 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/gitblit/git/GitblitReceivePack.java b/src/main/java/com/gitblit/git/GitblitReceivePack.java index ba200b2..95d17fa 100644 --- a/src/main/java/com/gitblit/git/GitblitReceivePack.java +++ b/src/main/java/com/gitblit/git/GitblitReceivePack.java @@ -45,6 +45,7 @@ import com.gitblit.Constants; import com.gitblit.Constants.AccessRestrictionType; import com.gitblit.GitBlit; +import com.gitblit.IStoredSettings; import com.gitblit.Keys; import com.gitblit.client.Translation; import com.gitblit.models.RepositoryModel; @@ -88,14 +89,25 @@ protected GroovyScriptEngine gse; - public GitblitReceivePack(Repository db, RepositoryModel repository, UserModel user) { + private final IStoredSettings settings; + + private final GitBlit gitblit; + + public GitblitReceivePack( + GitBlit gitblit, + Repository db, + RepositoryModel repository, + UserModel user) { + super(db); + this.settings = gitblit.getSettings(); + this.gitblit = gitblit; this.repository = repository; - this.user = user == null ? UserModel.ANONYMOUS : user; - this.groovyDir = GitBlit.getGroovyScriptsFolder(); + this.user = user; + this.groovyDir = gitblit.getHooksFolder(); try { // set Grape root - File grapeRoot = GitBlit.getFileOrFolder(Keys.groovy.grapeFolder, "${baseFolder}/groovy/grape").getAbsoluteFile(); + File grapeRoot = gitblit.getGrapesFolder(); grapeRoot.mkdirs(); System.setProperty("grape.root", grapeRoot.getAbsolutePath()); this.gse = new GroovyScriptEngine(groovyDir.getAbsolutePath()); @@ -234,7 +246,7 @@ } Set<String> scripts = new LinkedHashSet<String>(); - scripts.addAll(GitBlit.self().getPreReceiveScriptsInherited(repository)); + scripts.addAll(gitblit.getPreReceiveScriptsInherited(repository)); if (!ArrayUtils.isEmpty(repository.preReceiveScripts)) { scripts.addAll(repository.preReceiveScripts); } @@ -303,7 +315,7 @@ String msg = MessageFormat.format(template, branch); String prefix; if (StringUtils.isEmpty(repository.incrementalPushTagPrefix)) { - prefix = GitBlit.getString(Keys.git.defaultIncrementalPushTagPrefix, "r"); + prefix = settings.getString(Keys.git.defaultIncrementalPushTagPrefix, "r"); } else { prefix = repository.incrementalPushTagPrefix; } @@ -329,7 +341,7 @@ // run Groovy hook scripts Set<String> scripts = new LinkedHashSet<String>(); - scripts.addAll(GitBlit.self().getPostReceiveScriptsInherited(repository)); + scripts.addAll(gitblit.getPostReceiveScriptsInherited(repository)); if (!ArrayUtils.isEmpty(repository.postReceiveScripts)) { scripts.addAll(repository.postReceiveScripts); } @@ -444,7 +456,7 @@ } Binding binding = new Binding(); - binding.setVariable("gitblit", GitBlit.self()); + binding.setVariable("gitblit", gitblit); binding.setVariable("repository", repository); binding.setVariable("receivePack", this); binding.setVariable("user", user); -- Gitblit v1.9.1