Package org.springframework.web.context.request

# Interface AsyncWebRequestInterceptor

All Superinterfaces:
  `WebRequestInterceptor`

public interface AsyncWebRequestInterceptor extends WebRequestInterceptor
Extends `WebRequestInterceptor` with a callback method invoked during asynchronous request handling.

When a handler starts asynchronous request handling, the DispatcherServlet exits without invoking `postHandle` and `afterCompletion`, as it normally does, since the results of request handling (for example, ModelAndView) are not available in the current thread and handling is not yet complete. In such scenarios, the `afterConcurrentHandlingStarted(WebRequest)` method is invoked instead allowing implementations to perform tasks such as cleaning up thread bound attributes.

When asynchronous handling completes, the request is dispatched to the container for further processing. At this stage the DispatcherServlet invokes `preHandle`, `postHandle` and `afterCompletion` as usual.

Since:
  3.2
Author:
  Rossen Stoyanchev
See Also:
  - `WebAsyncManager`

## Method Summary

Modifier and Type
Method
Description
`void`
`afterConcurrentHandlingStarted(WebRequest request)`
Called instead of `postHandle` and `afterCompletion`, when the handler started handling the request concurrently.

### Methods inherited from interface org.springframework.web.context.request.WebRequestInterceptor

`afterCompletion, postHandle, preHandle`

## Method Details

### afterConcurrentHandlingStarted

void afterConcurrentHandlingStarted(WebRequest request)
Called instead of `postHandle` and `afterCompletion`, when the handler started handling the request concurrently.

Parameters:
  `request` - the current request