From e462bbf2974d33f1a5a0b2a808e150aa0e22d6f4 Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gmail.com>
Date: Wed, 05 Mar 2014 21:50:16 -0500
Subject: [PATCH] Fire an event on received ticket branch updates to trigger reindex

---
 src/main/java/com/gitblit/service/MirrorService.java |   11 +++++++++++
 1 files changed, 11 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/gitblit/service/MirrorService.java b/src/main/java/com/gitblit/service/MirrorService.java
index 9833d93..1eb5420 100644
--- a/src/main/java/com/gitblit/service/MirrorService.java
+++ b/src/main/java/com/gitblit/service/MirrorService.java
@@ -38,6 +38,8 @@
 import com.gitblit.manager.IRepositoryManager;
 import com.gitblit.models.RepositoryModel;
 import com.gitblit.models.UserModel;
+import com.gitblit.tickets.BranchTicketService;
+import com.gitblit.tickets.BranchTicketService.TicketsBranchUpdated;
 import com.gitblit.utils.JGitUtils;
 
 /**
@@ -145,6 +147,7 @@
 				FetchResult result = git.fetch().setRemote(mirror.getName()).setDryRun(testing).call();
 				Collection<TrackingRefUpdate> refUpdates = result.getTrackingRefUpdates();
 				if (refUpdates.size() > 0) {
+					boolean ticketBranchUpdated = false;
 					for (TrackingRefUpdate ru : refUpdates) {
 						StringBuilder sb = new StringBuilder();
 						sb.append("updated mirror ");
@@ -161,6 +164,14 @@
 						sb.append("..");
 						sb.append(ru.getNewObjectId() == null ? "" : ru.getNewObjectId().abbreviate(7).name());
 						logger.info(sb.toString());
+						
+						if (BranchTicketService.BRANCH.equals(ru.getLocalName())) {
+							ticketBranchUpdated = true;
+						}
+					}
+					
+					if (ticketBranchUpdated) {
+						repository.fireEvent(new TicketsBranchUpdated(model));
 					}
 				}
 			} catch (Exception e) {

--
Gitblit v1.9.1