Use ReceiveCommitsAdvertiseRefsHook in a chain
Replaces the manual chaining with the included facility in JGit. Change-Id: I093fbae9fe87b8e214f25f133078c6e26509f887
This commit is contained in:
@@ -74,6 +74,8 @@ import org.eclipse.jgit.revwalk.RevObject;
|
||||
import org.eclipse.jgit.revwalk.RevSort;
|
||||
import org.eclipse.jgit.revwalk.RevWalk;
|
||||
import org.eclipse.jgit.revwalk.filter.RevFilter;
|
||||
import org.eclipse.jgit.transport.AdvertiseRefsHook;
|
||||
import org.eclipse.jgit.transport.AdvertiseRefsHookChain;
|
||||
import org.eclipse.jgit.transport.PreReceiveHook;
|
||||
import org.eclipse.jgit.transport.ReceiveCommand;
|
||||
import org.eclipse.jgit.transport.ReceiveCommand.Result;
|
||||
@@ -208,7 +210,10 @@ public class ReceiveCommits implements PreReceiveHook {
|
||||
rp.setCheckReferencedObjectsAreReachable(true);
|
||||
rp.setAdvertiseRefsHook(new VisibleRefFilter(tagCache, repo, projectControl, db, false));
|
||||
}
|
||||
rp.setAdvertiseRefsHook(new ReceiveCommitsAdvertiseRefsHook(rp.getAdvertiseRefsHook()));
|
||||
List<AdvertiseRefsHook> advHooks = new ArrayList<AdvertiseRefsHook>(2);
|
||||
advHooks.add(rp.getAdvertiseRefsHook());
|
||||
advHooks.add(new ReceiveCommitsAdvertiseRefsHook());
|
||||
rp.setAdvertiseRefsHook(AdvertiseRefsHookChain.newChain(advHooks));
|
||||
|
||||
rp.setPreReceiveHook(this);
|
||||
}
|
||||
|
||||
@@ -17,7 +17,6 @@ package com.google.gerrit.server.git;
|
||||
import org.eclipse.jgit.lib.Ref;
|
||||
import org.eclipse.jgit.transport.AdvertiseRefsHook;
|
||||
import org.eclipse.jgit.transport.ReceivePack;
|
||||
import org.eclipse.jgit.transport.ServiceMayNotContinueException;
|
||||
import org.eclipse.jgit.transport.UploadPack;
|
||||
|
||||
import java.util.HashMap;
|
||||
@@ -25,12 +24,6 @@ import java.util.Map;
|
||||
|
||||
/** Exposes only the non refs/changes/ reference names. */
|
||||
public class ReceiveCommitsAdvertiseRefsHook implements AdvertiseRefsHook {
|
||||
private final AdvertiseRefsHook base;
|
||||
|
||||
public ReceiveCommitsAdvertiseRefsHook(AdvertiseRefsHook base) {
|
||||
this.base = base != null ? base : AdvertiseRefsHook.DEFAULT;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void advertiseRefs(UploadPack us) {
|
||||
throw new UnsupportedOperationException(
|
||||
|
||||
Reference in New Issue
Block a user