Interface SecurityContextHolderStrategy
- All Known Implementing Classes:
ListeningSecurityContextHolderStrategy,TestSecurityContextHolderStrategyAdapter
public interface SecurityContextHolderStrategy
A strategy for storing security context information against a thread.
The preferred strategy is loaded by SecurityContextHolder.
-
Method Summary
Modifier and TypeMethodDescriptionvoidClears the current context.Creates a new, empty context implementation, for use by SecurityContextRepository implementations, when creating a new context for the first time.Obtains the current context.default Supplier<SecurityContext>Obtains aSupplierthat returns the current context.voidsetContext(SecurityContext context) Sets the current context.default voidsetDeferredContext(Supplier<SecurityContext> deferredContext) Sets aSupplierthat will return the current context.
-
Method Details
-
clearContext
void clearContext()Clears the current context. -
getContext
SecurityContext getContext()Obtains the current context.- Returns:
- a context (never
null- create a default implementation if necessary)
-
getDeferredContext
Obtains aSupplierthat returns the current context.- Returns:
- a
Supplierthat returns the current context (nevernull- create a default implementation if necessary) - Since:
- 5.8
-
setContext
Sets the current context.- Parameters:
context- to the new argument (should never benull, although implementations must check ifnullhas been passed and throw anIllegalArgumentExceptionin such cases)
-
setDeferredContext
Sets aSupplierthat will return the current context. Implementations can override the default to avoid invokingSupplier.get().- Parameters:
deferredContext- aSupplierthat returns theSecurityContext- Since:
- 5.8
-
createEmptyContext
SecurityContext createEmptyContext()Creates a new, empty context implementation, for use by SecurityContextRepository implementations, when creating a new context for the first time.- Returns:
- the empty context.
-