Select Git revision
DelegatingContextAwareRunnable.java
DelegatingContextAwareRunnable.java 659 B
package de.itvsh.goofy;
import org.springframework.web.context.request.RequestAttributes;
import org.springframework.web.context.request.RequestContextHolder;
import lombok.RequiredArgsConstructor;
@RequiredArgsConstructor
class DelegatingContextAwareRunnable implements Runnable {
private final Runnable delegate;
private final RequestAttributes requestAttributes = RequestContextHolder.getRequestAttributes();
@Override
public void run() {
try {
if (requestAttributes != null) {
RequestContextHolder.setRequestAttributes(requestAttributes);
}
delegate.run();
} finally {
RequestContextHolder.resetRequestAttributes();
}
}
}