diff options
Diffstat (limited to 'gerrit-server/src/main/java/com/google/gerrit/server/git/PerThreadRequestScope.java')
-rw-r--r-- | gerrit-server/src/main/java/com/google/gerrit/server/git/PerThreadRequestScope.java | 23 |
1 files changed, 10 insertions, 13 deletions
diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/git/PerThreadRequestScope.java b/gerrit-server/src/main/java/com/google/gerrit/server/git/PerThreadRequestScope.java index 20f053abb1..a4719a911e 100644 --- a/gerrit-server/src/main/java/com/google/gerrit/server/git/PerThreadRequestScope.java +++ b/gerrit-server/src/main/java/com/google/gerrit/server/git/PerThreadRequestScope.java @@ -64,18 +64,15 @@ public class PerThreadRequestScope { } public <T> Callable<T> scope(RequestContext requestContext, Callable<T> callable) { - final Context ctx = new Context(); - final Callable<T> wrapped = context(requestContext, cleanup(callable)); - return new Callable<T>() { - @Override - public T call() throws Exception { - Context old = current.get(); - current.set(ctx); - try { - return wrapped.call(); - } finally { - current.set(old); - } + Context ctx = new Context(); + Callable<T> wrapped = context(requestContext, cleanup(callable)); + return () -> { + Context old = current.get(); + current.set(ctx); + try { + return wrapped.call(); + } finally { + current.set(old); } }; } @@ -94,7 +91,7 @@ public class PerThreadRequestScope { public static final Scope REQUEST = new Scope() { @Override - public <T> Provider<T> scope(final Key<T> key, final Provider<T> creator) { + public <T> Provider<T> scope(Key<T> key, Provider<T> creator) { return new Provider<T>() { @Override public T get() { |