Implement exactRef in FilteredRefDatabase The default implementation of exactRef is slower than it needs to be implement exactRef directly to simplify and get a potential speedup. Change-Id: If9fd1dbdedeefb863349d85bf353c2bda43e304d
diff --git a/src/main/java/com/googlesource/gerrit/plugins/gitiles/FilteredRepository.java b/src/main/java/com/googlesource/gerrit/plugins/gitiles/FilteredRepository.java index 6ddd490..098910c 100644 --- a/src/main/java/com/googlesource/gerrit/plugins/gitiles/FilteredRepository.java +++ b/src/main/java/com/googlesource/gerrit/plugins/gitiles/FilteredRepository.java
@@ -191,6 +191,15 @@ } @Override + public Ref exactRef(String name) throws IOException { + Ref ref = delegate.exactRef(name); + if (ref == null) { + return null; + } + return refFilter.filter(ImmutableMap.of(name, ref), true).get(name); + } + + @Override public Ref getRef(String name) throws IOException { Ref ref = delegate.getRef(name); if (ref == null) {