Class DelegatingSecurityContextExecutorService
- java.lang.Object
 - 
- org.springframework.security.concurrent.DelegatingSecurityContextExecutor
 - 
- org.springframework.security.concurrent.DelegatingSecurityContextExecutorService
 
 
 
- 
- All Implemented Interfaces:
 java.util.concurrent.Executor,java.util.concurrent.ExecutorService
- Direct Known Subclasses:
 DelegatingSecurityContextScheduledExecutorService
public class DelegatingSecurityContextExecutorService extends DelegatingSecurityContextExecutor implements java.util.concurrent.ExecutorService
AnExecutorServicewhich wraps eachRunnablein aDelegatingSecurityContextRunnableand eachCallablein aDelegatingSecurityContextCallable.- Since:
 - 3.2
 
 
- 
- 
Constructor Summary
Constructors Constructor Description DelegatingSecurityContextExecutorService(java.util.concurrent.ExecutorService delegate)Creates a newDelegatingSecurityContextExecutorServicethat uses the currentSecurityContextfrom theSecurityContextHolder.DelegatingSecurityContextExecutorService(java.util.concurrent.ExecutorService delegateExecutorService, SecurityContext securityContext)Creates a newDelegatingSecurityContextExecutorServicethat uses the specifiedSecurityContext. 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanawaitTermination(long timeout, java.util.concurrent.TimeUnit unit)java.util.ListinvokeAll(java.util.Collection tasks)java.util.ListinvokeAll(java.util.Collection tasks, long timeout, java.util.concurrent.TimeUnit unit)java.lang.ObjectinvokeAny(java.util.Collection tasks)java.lang.ObjectinvokeAny(java.util.Collection tasks, long timeout, java.util.concurrent.TimeUnit unit)booleanisShutdown()booleanisTerminated()voidshutdown()java.util.List<java.lang.Runnable>shutdownNow()java.util.concurrent.Future<?>submit(java.lang.Runnable task)<T> java.util.concurrent.Future<T>submit(java.lang.Runnable task, T result)<T> java.util.concurrent.Future<T>submit(java.util.concurrent.Callable<T> task)protected java.lang.Runnablewrap(java.lang.Runnable delegate)protected <T> java.util.concurrent.Callable<T>wrap(java.util.concurrent.Callable<T> delegate)- 
Methods inherited from class org.springframework.security.concurrent.DelegatingSecurityContextExecutor
execute, getDelegateExecutor 
 - 
 
 - 
 
- 
- 
Constructor Detail
- 
DelegatingSecurityContextExecutorService
public DelegatingSecurityContextExecutorService(java.util.concurrent.ExecutorService delegateExecutorService, SecurityContext securityContext)Creates a newDelegatingSecurityContextExecutorServicethat uses the specifiedSecurityContext.- Parameters:
 delegateExecutorService- theExecutorServiceto delegate to. Cannot be null.securityContext- theSecurityContextto use for eachDelegatingSecurityContextRunnableand eachDelegatingSecurityContextCallable.
 
- 
DelegatingSecurityContextExecutorService
public DelegatingSecurityContextExecutorService(java.util.concurrent.ExecutorService delegate)
Creates a newDelegatingSecurityContextExecutorServicethat uses the currentSecurityContextfrom theSecurityContextHolder.- Parameters:
 delegate- theExecutorServiceto delegate to. Cannot be null.
 
 - 
 
- 
Method Detail
- 
shutdown
public final void shutdown()
- Specified by:
 shutdownin interfacejava.util.concurrent.ExecutorService
 
- 
shutdownNow
public final java.util.List<java.lang.Runnable> shutdownNow()
- Specified by:
 shutdownNowin interfacejava.util.concurrent.ExecutorService
 
- 
isShutdown
public final boolean isShutdown()
- Specified by:
 isShutdownin interfacejava.util.concurrent.ExecutorService
 
- 
isTerminated
public final boolean isTerminated()
- Specified by:
 isTerminatedin interfacejava.util.concurrent.ExecutorService
 
- 
awaitTermination
public final boolean awaitTermination(long timeout, java.util.concurrent.TimeUnit unit) throws java.lang.InterruptedException- Specified by:
 awaitTerminationin interfacejava.util.concurrent.ExecutorService- Throws:
 java.lang.InterruptedException
 
- 
submit
public final <T> java.util.concurrent.Future<T> submit(java.util.concurrent.Callable<T> task)
- Specified by:
 submitin interfacejava.util.concurrent.ExecutorService
 
- 
submit
public final <T> java.util.concurrent.Future<T> submit(java.lang.Runnable task, T result)- Specified by:
 submitin interfacejava.util.concurrent.ExecutorService
 
- 
submit
public final java.util.concurrent.Future<?> submit(java.lang.Runnable task)
- Specified by:
 submitin interfacejava.util.concurrent.ExecutorService
 
- 
invokeAll
public final java.util.List invokeAll(java.util.Collection tasks) throws java.lang.InterruptedException- Specified by:
 invokeAllin interfacejava.util.concurrent.ExecutorService- Throws:
 java.lang.InterruptedException
 
- 
invokeAll
public final java.util.List invokeAll(java.util.Collection tasks, long timeout, java.util.concurrent.TimeUnit unit) throws java.lang.InterruptedException- Specified by:
 invokeAllin interfacejava.util.concurrent.ExecutorService- Throws:
 java.lang.InterruptedException
 
- 
invokeAny
public final java.lang.Object invokeAny(java.util.Collection tasks) throws java.lang.InterruptedException, java.util.concurrent.ExecutionException- Specified by:
 invokeAnyin interfacejava.util.concurrent.ExecutorService- Throws:
 java.lang.InterruptedExceptionjava.util.concurrent.ExecutionException
 
- 
invokeAny
public final java.lang.Object invokeAny(java.util.Collection tasks, long timeout, java.util.concurrent.TimeUnit unit) throws java.lang.InterruptedException, java.util.concurrent.ExecutionException, java.util.concurrent.TimeoutException- Specified by:
 invokeAnyin interfacejava.util.concurrent.ExecutorService- Throws:
 java.lang.InterruptedExceptionjava.util.concurrent.ExecutionExceptionjava.util.concurrent.TimeoutException
 
- 
wrap
protected final java.lang.Runnable wrap(java.lang.Runnable delegate)
 
- 
wrap
protected final <T> java.util.concurrent.Callable<T> wrap(java.util.concurrent.Callable<T> delegate)
 
 - 
 
 -