Class AsynchronousDispatcher
java.lang.Object
org.jboss.resteasy.core.SynchronousDispatcher
org.jboss.resteasy.core.AsynchronousDispatcher
- All Implemented Interfaces:
Dispatcher
- Version:
- $Revision: 1 $
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static classprivate static class -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate Stringprivate AsynchronousDispatcher.Cacheprotected ExecutorServiceprivate Map<String, Future<MockHttpResponse>> private intprivate longprivate intFields inherited from class SynchronousDispatcher
bufferExceptionEntity, bufferExceptionEntityRead, defaultContextObjects, providerFactory, registry, requestPreprocessors, unwrappedExceptions -
Constructor Summary
ConstructorsConstructorDescriptionAsynchronousDispatcher(ResteasyProviderFactory providerFactory) AsynchronousDispatcher(ResteasyProviderFactory providerFactory, ResourceMethodRegistry registry) -
Method Summary
Modifier and TypeMethodDescriptionjavax.ws.rs.core.Responsevoidinvoke(HttpRequest in, HttpResponse response, ResourceInvoker invoker) Invoke and write responsevoidinvokeSuper(HttpRequest in, HttpResponse response, ResourceInvoker invoker) booleanvoidoneway(HttpRequest request, HttpResponse response, ResourceInvoker invoker) voidpostJob(HttpRequest request, HttpResponse response, ResourceInvoker invoker) protected javax.ws.rs.core.Responsejavax.ws.rs.core.ResponsereadAndRemove(long wait, String jobId) voidvoidsetBasePath(String basePath) Set the base path to find jobsvoidsetExecutor(ExecutorService executor) Plug in your own executor to process requestsvoidsetMaxCacheSize(int maxCacheSize) Max response cache size default is 100voidsetMaxWaitMilliSeconds(long maxWaitMilliSeconds) Maximum wait time.voidsetThreadPoolSize(int threadPoolSize) Fixed thread pool size of asynchronous deliveryvoidstart()voidstop()Methods inherited from class SynchronousDispatcher
addHttpPreprocessor, asynchronousDelivery, asynchronousExceptionDelivery, clearContextData, execute, getDefaultContextObjects, getInvoker, getProviderFactory, getRegistry, getUnwrappedExceptions, internalInvocation, invoke, invokePropagateNotFound, preprocess, preprocess, pushContextObjects, writeException, writeResponse
-
Field Details
-
executor
-
threadPoolSize
private int threadPoolSize -
jobs
-
cache
-
basePath
-
counter
-
maxWaitMilliSeconds
private long maxWaitMilliSeconds -
maxCacheSize
private int maxCacheSize
-
-
Constructor Details
-
AsynchronousDispatcher
-
AsynchronousDispatcher
public AsynchronousDispatcher(ResteasyProviderFactory providerFactory, ResourceMethodRegistry registry)
-
-
Method Details
-
setMaxCacheSize
public void setMaxCacheSize(int maxCacheSize) Max response cache size default is 100- Parameters:
maxCacheSize-
-
setMaxWaitMilliSeconds
public void setMaxWaitMilliSeconds(long maxWaitMilliSeconds) Maximum wait time. This overrides any wait query parameter- Parameters:
maxWaitMilliSeconds-
-
setBasePath
-
setThreadPoolSize
public void setThreadPoolSize(int threadPoolSize) Fixed thread pool size of asynchronous delivery- Parameters:
threadPoolSize-
-
setExecutor
Plug in your own executor to process requests- Parameters:
executor-
-
start
public void start() -
stop
public void stop() -
remove
-
readAndRemove
@Path("{job-id}") @POST public javax.ws.rs.core.Response readAndRemove(@QueryParam("wait") @DefaultValue("-1") long wait, @PathParam("job-id") String jobId) -
get
@Path("{job-id}") @GET public javax.ws.rs.core.Response get(@QueryParam("wait") @DefaultValue("-1") long wait, @PathParam("job-id") String jobId) -
process
-
isAsynchrnousRequest
-
invokeSuper
-
invoke
Description copied from class:SynchronousDispatcherInvoke and write response- Overrides:
invokein classSynchronousDispatcher- Parameters:
in-response-invoker-
-
postJob
-
oneway
-