public final class DelegatingSecurityContextRunnable extends Object implements Runnable
Runnable with logic for setting up a SecurityContext before invoking the delegate
 Runnable and then removing the SecurityContext after the delegate has completed.| Constructor and Description | 
|---|
DelegatingSecurityContextRunnable(Runnable delegate)
Creates a new  
DelegatingSecurityContextRunnable with the SecurityContext from the
 SecurityContextHolder. | 
DelegatingSecurityContextRunnable(Runnable delegate,
                                 SecurityContext securityContext)
Creates a new  
DelegatingSecurityContextRunnable with a specific SecurityContext. | 
| Modifier and Type | Method and Description | 
|---|---|
static Runnable | 
create(Runnable delegate,
      SecurityContext securityContext)
Factory method for creating a  
DelegatingSecurityContextRunnable. | 
void | 
run()  | 
public DelegatingSecurityContextRunnable(Runnable delegate, SecurityContext securityContext)
DelegatingSecurityContextRunnable with a specific SecurityContext.delegate - the delegate Runnable to run with the specified SecurityContext. Cannot be null.securityContext - the SecurityContext to establish for the delegate Runnable. Cannot be
 null.public DelegatingSecurityContextRunnable(Runnable delegate)
DelegatingSecurityContextRunnable with the SecurityContext from the
 SecurityContextHolder.delegate - the delegate Runnable to run under the current SecurityContext. Cannot be null.public static Runnable create(Runnable delegate, SecurityContext securityContext)
DelegatingSecurityContextRunnable.delegate - the original Runnable that will be delegated to after establishing a
 SecurityContext on the SecurityContextHolder. Cannot have null.securityContext - the SecurityContext to establish before invoking the delegate Runnable. If
 null, the current SecurityContext from the SecurityContextHolder will be used.