List of usage examples for org.springframework.web.context.request.async DeferredResult DeferredResult
public DeferredResult()
From source file:curly.commons.rx.RxResult.java
@Loggable public static <T> DeferredResult<T> defer(Observable<T> observable) { DeferredResult<T> deferredResult = new DeferredResult<>(); observable.subscribe(deferredResult::setResult, deferredResult::setErrorResult); return deferredResult; }
From source file:com.sishuok.chapter3.web.interceptor.MyDefferedResultController.java
@RequestMapping("/myDefferedResult1") @ResponseBody/*from ww w .ja va 2 s. co m*/ public DeferredResult<String> myDefferedResult1() { final DeferredResult<String> result = new DeferredResult<String>(); new Thread(new Runnable() { @Override public void run() { try { Thread.sleep(2 * 1000L); } catch (InterruptedException e) { } System.out.println("DeferredResult?"); result.setResult("success"); } }).start(); return result; }
From source file:com.sishuok.chapter3.web.listener.ListenerController.java
@RequestMapping("/listener1") @ResponseBody/*from w w w. jav a2 s . c o m*/ public DeferredResult<String> listener1() { final DeferredResult<String> result = new DeferredResult<String>(); result.onTimeout(new Runnable() { @Override public void run() { System.out.println("==="); } }); result.onCompletion(new Runnable() { @Override public void run() { System.out.println("===?"); } }); new Thread(new Runnable() { @Override public void run() { try { Thread.sleep(2 * 1000L); } catch (InterruptedException e) { } System.out.println("DeferredResult?"); result.setResult("success"); } }).start(); return result; }
From source file:com.kixeye.chassis.transport.websocket.responseconverter.ObservableResponseConverter.java
@Override public DeferredResult<Object> convertToDeferredResult(Object response) { final DeferredResult<Object> deferredResult = new DeferredResult<>(); ((Observable<?>) response).subscribe(new Observer<Object>() { @Override//from w w w. ja va 2 s. c o m public void onCompleted() { if (!deferredResult.hasResult()) { deferredResult.setResult(null); } } @Override public void onError(Throwable e) { deferredResult.setErrorResult(e); } @Override public void onNext(Object args) { deferredResult.setResult(args); } }); return deferredResult; }
From source file:com.kixeye.chassis.transport.websocket.responseconverter.ListenableFutureResponseConverter.java
@Override public DeferredResult<Object> convertToDeferredResult(Object response) { final DeferredResult<Object> deferredResult = new DeferredResult<>(); Futures.addCallback((ListenableFuture<?>) response, new FutureCallback<Object>() { @Override/*from www. ja va2 s . co m*/ public void onSuccess(@Nullable Object result) { deferredResult.setResult(result); } @Override public void onFailure(Throwable t) { deferredResult.setErrorResult(t); } }); return deferredResult; }
From source file:com.sishuok.chapter3.web.interceptor.MyDefferedResultController.java
@RequestMapping("/myDefferedResult2") @ResponseBody/*w ww. jav a2 s . c om*/ public DeferredResult<String> myDefferedResult2() { final DeferredResult<String> result = new DeferredResult<String>(); new Thread(new Runnable() { @Override public void run() { try { Thread.sleep(31 * 1000L); } catch (InterruptedException e) { } System.out.println( "DeferredResult????"); result.setResult("success"); } }).start(); return result; }
From source file:spring.travel.site.controllers.OptionalUserController.java
<T> DeferredResult<T> withOptionalUser(Request request, OptionalUserAction<T> action) { DeferredResult<T> response = new DeferredResult<>(); if (request.getCookieValue().isPresent()) { withCookie(request, response, action); } else {//from w w w . j a v a 2s. co m withoutCookie(request, response, action); } return response; }
From source file:com.mmj.app.web.controller.comet.CometController.java
@RequestMapping(value = "/comet/connect", headers = "accept=*/*", produces = "application/json", method = RequestMethod.POST) @ResponseBody//from w w w . java 2 s .co m public DeferredResult<String> connect() { DeferredResult<String> deferredResult = new DeferredResult<String>(); ConnectVO connectVO = new ConnectVO("62", true, "/meta/connect"); deferredResult.setResult(new Gson().toJson(Arrays.asList(connectVO))); try { Thread.sleep(30000); } catch (InterruptedException e) { e.printStackTrace(); } return deferredResult; }
From source file:com.carlomicieli.jtrains.infrastructure.web.CompletableFutureReturnValueHandler.java
@Override public void handleReturnValue(Object returnValue, MethodParameter returnType, ModelAndViewContainer mavContainer, NativeWebRequest webRequest) throws Exception { final DeferredResult<Object> deferredResult = new DeferredResult<>(); final CompletableFuture<?> future = (CompletableFuture<?>) returnValue; final CompletableFuture<Object> completedFuture = future.handle((ret, err) -> { if (ret != null) { deferredResult.setResult(ret); return ret; } else {//from w ww . j a v a 2 s . c om deferredResult.setErrorResult(err); return null; } }); WebAsyncUtils.getAsyncManager(webRequest).startDeferredResultProcessing(deferredResult, mavContainer); }
From source file:org.hydroponics.web.controller.CalibreAsyncController.java
@RequestMapping("/update") @ResponseBody//w ww.j a va 2 s .co m public DeferredResult<Map<String, Object>> update() { final DeferredResult<Map<String, Object>> result = new DeferredResult<Map<String, Object>>(); this.calibreRequests.add(result); logger.fine("add deferred result"); result.onCompletion(new Runnable() { public void run() { logger.fine("remove deferred result:" + calibreRequests.size()); calibreRequests.remove(result); } }); return result; }