@Override public void run() { try { ThreadLocalServiceContext.init(_serviceContext); _delegateRunnable.run(); } finally { ThreadLocalServiceContext.init(null); } }
@Override public T call() throws Exception { try { ThreadLocalServiceContext.init(_serviceContext); return _delegateCallable.call(); } finally { ThreadLocalServiceContext.init(null); } }
private ServiceContextAwareRunnable(Runnable delegateRunnable) { _delegateRunnable = delegateRunnable; _serviceContext = ThreadLocalServiceContext.getInstance(); }
private ServiceContextAwareCallable(Callable<T> delegateCallable) { _delegateCallable = delegateCallable; _serviceContext = ThreadLocalServiceContext.getInstance(); }