本文整理了Java中javax.ws.rs.container.AsyncResponse.cancel()
方法的一些代码示例,展示了AsyncResponse.cancel()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。AsyncResponse.cancel()
方法的具体详情如下:
包路径:javax.ws.rs.container.AsyncResponse
类名称:AsyncResponse
方法名:cancel
[英]Cancel the suspended request processing.
When a request processing is cancelled using this method, the JAX-RS implementation MUST indicate to the client that the request processing has been cancelled by sending back a javax.ws.rs.core.Response.Status#SERVICE_UNAVAILABLEerror response.
Invoking a cancel(...) method multiple times to cancel request processing has the same effect as canceling the request processing only once. Invoking a cancel(...) method on an asynchronous response instance that has already been cancelled or resumed has no effect and the method call is ignored while returning true, in case the request has been cancelled previously. Otherwise, in case the request has been resumed regularly (using a resume(...) method) or resumed due to a time-out, method returns false.
[中]取消挂起的请求处理。
当使用此方法取消请求处理时,JAX-RS实现必须通过发送回javax来向客户机指示请求处理已被取消。ws。rs.core。回答状态#服务_不可用错误响应。
调用取消(…)多次取消请求处理的方法与仅取消一次请求处理的效果相同。调用取消(…)已取消或恢复的异步响应实例上的方法无效,如果请求先前已取消,则在返回true时将忽略该方法调用。否则,如果请求已定期恢复(使用恢复(…)方法)或由于超时而恢复,方法返回false。
代码示例来源:origin: jersey/jersey
@Override
public void run() {
try {
suspended.put(ar);
LOGGER.log(DEBUG, "GET <{0}> context {1} scheduled for resume.",
new Object[] {messageId, ar.toString()});
} catch (InterruptedException ex) {
LOGGER.log(Level.SEVERE,
"Waiting for a message pick-up interrupted. Cancelling context" + ar.toString(), ex);
ar.cancel(); // close the open connection
}
}
});
代码示例来源:origin: jersey/jersey
@Override
public void run() {
try {
final String message = messages.take();
LOGGER.log(DEBUG, "Resuming GET <{0}> context {1} with a message {2} on thread {3}.",
new Object[]{messageId, ar.toString(), message, Thread.currentThread().getName()});
ar.resume(message);
} catch (InterruptedException ex) {
LOGGER.log(Level.SEVERE,
"Waiting for a message pick-up interrupted. Cancelling context" + ar.toString(), ex);
ar.cancel(); // close the open connection
}
}
});
代码示例来源:origin: camunda/camunda-bpm-platform
protected void removeDuplicates() {
for (FetchAndLockRequest newRequest : newRequests) {
// remove any request from pendingRequests with the same worker id
Iterator<FetchAndLockRequest> iterator = pendingRequests.iterator();
while (iterator.hasNext()) {
FetchAndLockRequest pendingRequest = iterator.next();
if (pendingRequest.getDto().getWorkerId().equals(newRequest.getDto().getWorkerId())) {
AsyncResponse asyncResponse = pendingRequest.getAsyncResponse();
asyncResponse.cancel();
iterator.remove();
}
}
}
}
代码示例来源:origin: SmartDataAnalytics/jena-sparql-api
@Override
public void run() {
try {
delegate.run();
} catch(Exception e) {
asyncResponse.cancel();
throw new RuntimeException(e);
}
}
}
代码示例来源:origin: apache/cxf
@Override
public void onError(Throwable t) {
if (t instanceof CancellationException) {
ar.cancel();
} else {
ar.resume(t);
}
}
代码示例来源:origin: apache/cxf
@Override
public void handleTimeout(AsyncResponse asyncResponse) {
asyncResponse.cancel(10);
}
代码示例来源:origin: org.apache.cxf/cxf-rt-rs-extension-reactivestreams
@Override
public void onError(Throwable t) {
if (t instanceof CancellationException) {
ar.cancel();
} else {
ar.resume(t);
}
}
代码示例来源:origin: com.xorlev.grpc-jersey/jersey-rpc-support
@Override
public void onError(Throwable t) {
closed = true;
Optional<Response> response = ErrorHandler
.handleUnaryError(t, httpHeaderClientInterceptor.getHttpResponseHeaders());
if (response.isPresent()) {
asyncResponse.resume(response.get());
} else {
asyncResponse.cancel();
}
}
代码示例来源:origin: apache/cxf
@GET
@Path("cancelvoid")
public String cancel(@QueryParam("stage") String stage) {
AsyncResponse response = takeAsyncResponse(stage);
boolean ret = response.cancel();
ret &= response.cancel();
addResponse(response, stage);
return ret ? TRUE : FALSE;
}
内容来源于网络,如有侵权,请联系作者删除!