Java 类org.springframework.web.context.request.async.CallableProcessingInterceptor 实例源码

项目:spring4-understanding    文件:MvcNamespaceTests.java   
@Test
public void testAsyncSupportOptions() throws Exception {
    loadBeanDefinitions("mvc-config-async-support.xml", 15);

    RequestMappingHandlerAdapter adapter = appContext.getBean(RequestMappingHandlerAdapter.class);
    assertNotNull(adapter);

    DirectFieldAccessor fieldAccessor = new DirectFieldAccessor(adapter);
    assertEquals(ConcurrentTaskExecutor.class, fieldAccessor.getPropertyValue("taskExecutor").getClass());
    assertEquals(2500L, fieldAccessor.getPropertyValue("asyncRequestTimeout"));

    CallableProcessingInterceptor[] callableInterceptors =
            (CallableProcessingInterceptor[]) fieldAccessor.getPropertyValue("callableInterceptors");
    assertEquals(1, callableInterceptors.length);

    DeferredResultProcessingInterceptor[] deferredResultInterceptors =
            (DeferredResultProcessingInterceptor[]) fieldAccessor.getPropertyValue("deferredResultInterceptors");
    assertEquals(1, deferredResultInterceptors.length);
}
项目:class-guard    文件:MvcNamespaceTests.java   
@Test
public void testAsyncSupportOptions() throws Exception {
    loadBeanDefinitions("mvc-config-async-support.xml", 13);

    RequestMappingHandlerAdapter adapter = appContext.getBean(RequestMappingHandlerAdapter.class);
    assertNotNull(adapter);

    DirectFieldAccessor fieldAccessor = new DirectFieldAccessor(adapter);
    assertEquals(ConcurrentTaskExecutor.class, fieldAccessor.getPropertyValue("taskExecutor").getClass());
    assertEquals(2500L, fieldAccessor.getPropertyValue("asyncRequestTimeout"));

    CallableProcessingInterceptor[] callableInterceptors =
            (CallableProcessingInterceptor[]) fieldAccessor.getPropertyValue("callableInterceptors");
    assertEquals(1, callableInterceptors.length);

    DeferredResultProcessingInterceptor[] deferredResultInterceptors =
            (DeferredResultProcessingInterceptor[]) fieldAccessor.getPropertyValue("deferredResultInterceptors");
    assertEquals(1, deferredResultInterceptors.length);
}
项目:class-guard    文件:WebMvcConfigurationSupportExtensionTests.java   
@SuppressWarnings("unchecked")
@Test
public void requestMappingHandlerAdapter() throws Exception {
    RequestMappingHandlerAdapter adapter = webConfig.requestMappingHandlerAdapter();

    // ConversionService
    String actual = webConfig.mvcConversionService().convert(new TestBean(), String.class);
    assertEquals("converted", actual);

    // Message converters
    assertEquals(1, adapter.getMessageConverters().size());

    DirectFieldAccessor fieldAccessor = new DirectFieldAccessor(adapter);

    // Custom argument resolvers and return value handlers
    List<HandlerMethodArgumentResolver> argResolvers =
        (List<HandlerMethodArgumentResolver>) fieldAccessor.getPropertyValue("customArgumentResolvers");
    assertEquals(1, argResolvers.size());

    List<HandlerMethodReturnValueHandler> handlers =
        (List<HandlerMethodReturnValueHandler>) fieldAccessor.getPropertyValue("customReturnValueHandlers");
    assertEquals(1, handlers.size());

    // Async support options
    assertEquals(ConcurrentTaskExecutor.class, fieldAccessor.getPropertyValue("taskExecutor").getClass());
    assertEquals(2500L, fieldAccessor.getPropertyValue("asyncRequestTimeout"));

    CallableProcessingInterceptor[] callableInterceptors =
            (CallableProcessingInterceptor[]) fieldAccessor.getPropertyValue("callableInterceptors");
    assertEquals(1, callableInterceptors.length);

    DeferredResultProcessingInterceptor[] deferredResultInterceptors =
            (DeferredResultProcessingInterceptor[]) fieldAccessor.getPropertyValue("deferredResultInterceptors");
    assertEquals(1, deferredResultInterceptors.length);

    assertEquals(false, fieldAccessor.getPropertyValue("ignoreDefaultModelOnRedirect"));
}
项目:Harvest-JP    文件:TimeoutCallableProcessingInterceptor.java   
@Override
public <T> Object handleTimeout(NativeWebRequest request, Callable<T> task) throws Exception {
    final HttpServletResponse servletResponse = request.getNativeResponse(HttpServletResponse.class);
    if (!servletResponse.isCommitted()) {
        servletResponse.sendError(HttpStatus.SERVICE_UNAVAILABLE.value());
    }

    return CallableProcessingInterceptor.RESPONSE_HANDLED;
}
项目:spring4-understanding    文件:RequestMappingHandlerAdapter.java   
/**
 * Configure {@code CallableProcessingInterceptor}'s to register on async requests.
 * @param interceptors the interceptors to register
 */
public void setCallableInterceptors(List<CallableProcessingInterceptor> interceptors) {
    Assert.notNull(interceptors);
    this.callableInterceptors = interceptors.toArray(new CallableProcessingInterceptor[interceptors.size()]);
}
项目:spring4-understanding    文件:AsyncSupportConfigurer.java   
protected List<CallableProcessingInterceptor> getCallableInterceptors() {
    return this.callableInterceptors;
}
项目:spring4-understanding    文件:WebMvcConfigurationSupportExtensionTests.java   
@SuppressWarnings("unchecked")
@Test
public void requestMappingHandlerAdapter() throws Exception {
    RequestMappingHandlerAdapter adapter = this.config.requestMappingHandlerAdapter();

    // ConversionService
    String actual = this.config.mvcConversionService().convert(new TestBean(), String.class);
    assertEquals("converted", actual);

    // Message converters
    assertEquals(2, adapter.getMessageConverters().size());
    assertEquals(StringHttpMessageConverter.class, adapter.getMessageConverters().get(0).getClass());
    assertEquals(MappingJackson2HttpMessageConverter.class, adapter.getMessageConverters().get(1).getClass());
    ObjectMapper objectMapper = ((MappingJackson2HttpMessageConverter)adapter.getMessageConverters().get(1)).getObjectMapper();
    assertFalse(objectMapper.getDeserializationConfig().isEnabled(MapperFeature.DEFAULT_VIEW_INCLUSION));
    assertFalse(objectMapper.getSerializationConfig().isEnabled(MapperFeature.DEFAULT_VIEW_INCLUSION));
    assertFalse(objectMapper.getDeserializationConfig().isEnabled(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES));

    DirectFieldAccessor fieldAccessor = new DirectFieldAccessor(adapter);

    // Custom argument resolvers and return value handlers
    List<HandlerMethodArgumentResolver> argResolvers =
        (List<HandlerMethodArgumentResolver>) fieldAccessor.getPropertyValue("customArgumentResolvers");
    assertEquals(1, argResolvers.size());

    List<HandlerMethodReturnValueHandler> handlers =
        (List<HandlerMethodReturnValueHandler>) fieldAccessor.getPropertyValue("customReturnValueHandlers");
    assertEquals(1, handlers.size());

    // Async support options
    assertEquals(ConcurrentTaskExecutor.class, fieldAccessor.getPropertyValue("taskExecutor").getClass());
    assertEquals(2500L, fieldAccessor.getPropertyValue("asyncRequestTimeout"));

    CallableProcessingInterceptor[] callableInterceptors =
            (CallableProcessingInterceptor[]) fieldAccessor.getPropertyValue("callableInterceptors");
    assertEquals(1, callableInterceptors.length);

    DeferredResultProcessingInterceptor[] deferredResultInterceptors =
            (DeferredResultProcessingInterceptor[]) fieldAccessor.getPropertyValue("deferredResultInterceptors");
    assertEquals(1, deferredResultInterceptors.length);

    assertEquals(false, fieldAccessor.getPropertyValue("ignoreDefaultModelOnRedirect"));
}
项目:spring4-understanding    文件:AsyncControllerJavaConfigTests.java   
@Bean
public CallableProcessingInterceptor callableInterceptor() {
    return Mockito.mock(CallableProcessingInterceptor.class);
}
项目:class-guard    文件:RequestMappingHandlerAdapter.java   
/**
 * Configure {@code CallableProcessingInterceptor}'s to register on async requests.
 * @param interceptors the interceptors to register
 */
public void setCallableInterceptors(List<CallableProcessingInterceptor> interceptors) {
    Assert.notNull(interceptors);
    this.callableInterceptors = interceptors.toArray(new CallableProcessingInterceptor[interceptors.size()]);
}
项目:class-guard    文件:AsyncSupportConfigurer.java   
protected List<CallableProcessingInterceptor> getCallableInterceptors() {
    return this.callableInterceptors;
}
项目:spring4-understanding    文件:AsyncSupportConfigurer.java   
/**
 * Configure lifecycle interceptors with callbacks around concurrent request
 * execution that starts when a controller returns a
 * {@link java.util.concurrent.Callable}.
 *
 * @param interceptors the interceptors to register
 */
public AsyncSupportConfigurer registerCallableInterceptors(CallableProcessingInterceptor... interceptors) {
    Assert.notNull(interceptors, "Interceptors are required");
    this.callableInterceptors.addAll(Arrays.asList(interceptors));
    return this;
}
项目:class-guard    文件:AsyncSupportConfigurer.java   
/**
 * Configure lifecycle interceptors with callbacks around concurrent request
 * execution that starts when a controller returns a
 * {@link java.util.concurrent.Callable}.
 *
 * @param interceptors the interceptors to register
 */
public AsyncSupportConfigurer registerCallableInterceptors(CallableProcessingInterceptor... interceptors) {
    Assert.notNull(interceptors, "Interceptors are required");
    this.callableInterceptors.addAll(Arrays.asList(interceptors));
    return this;
}