From f01bc58183dca2378ffe931315396583d053c6be Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Tue, 16 Jul 2013 09:35:31 -0400 Subject: [PATCH] Reset dashboard and activity commit cache on branch REWIND or DELETE --- src/main/java/com/gitblit/git/ReceiveHook.java | 17 +++++++++++++++++ 1 files changed, 17 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/gitblit/git/ReceiveHook.java b/src/main/java/com/gitblit/git/ReceiveHook.java index e0b7798..d75a238 100644 --- a/src/main/java/com/gitblit/git/ReceiveHook.java +++ b/src/main/java/com/gitblit/git/ReceiveHook.java @@ -36,6 +36,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import com.gitblit.Constants; import com.gitblit.Constants.AccessRestrictionType; import com.gitblit.GitBlit; import com.gitblit.Keys; @@ -44,6 +45,7 @@ import com.gitblit.models.UserModel; import com.gitblit.utils.ArrayUtils; import com.gitblit.utils.ClientLogger; +import com.gitblit.utils.CommitCache; import com.gitblit.utils.JGitUtils; import com.gitblit.utils.RefLogUtils; import com.gitblit.utils.StringUtils; @@ -186,6 +188,21 @@ return; } } + + // reset branch commit cache on REWIND and DELETE + for (ReceiveCommand cmd : commands) { + String ref = cmd.getRefName(); + if (ref.startsWith(Constants.R_HEADS)) { + switch (cmd.getType()) { + case UPDATE_NONFASTFORWARD: + case DELETE: + CommitCache.instance().clear(repository.name, ref); + break; + default: + break; + } + } + } Set<String> scripts = new LinkedHashSet<String>(); scripts.addAll(GitBlit.self().getPreReceiveScriptsInherited(repository)); -- Gitblit v1.9.1