Class ApplicationContextServerWebExchangeMatcher<C>

java.lang.Object
org.springframework.boot.security.reactive.ApplicationContextServerWebExchangeMatcher<C>
Type Parameters:
C - the type of the context that the match method actually needs to use. Can be an ApplicationContext or a class of an existing bean.
All Implemented Interfaces:
org.springframework.security.web.server.util.matcher.ServerWebExchangeMatcher
Direct Known Subclasses:
EndpointRequest.EndpointServerWebExchangeMatcher, EndpointRequest.LinksServerWebExchangeMatcher

public abstract class ApplicationContextServerWebExchangeMatcher<C> extends Object implements org.springframework.security.web.server.util.matcher.ServerWebExchangeMatcher
ApplicationContext backed ServerWebExchangeMatcher. Can work directly with the ApplicationContext, obtain an existing bean or create a new bean that is autowired in the usual way.
Since:
2.0.0
Author:
Madhura Bhave
  • Constructor Details

    • ApplicationContextServerWebExchangeMatcher

      public ApplicationContextServerWebExchangeMatcher(Class<? extends C> contextClass)
  • Method Details

    • matches

      public final reactor.core.publisher.Mono<org.springframework.security.web.server.util.matcher.ServerWebExchangeMatcher.MatchResult> matches(ServerWebExchange exchange)
      Specified by:
      matches in interface org.springframework.security.web.server.util.matcher.ServerWebExchangeMatcher
    • matches

      protected abstract reactor.core.publisher.Mono<org.springframework.security.web.server.util.matcher.ServerWebExchangeMatcher.MatchResult> matches(ServerWebExchange exchange, Supplier<C> context)
      Decides whether the rule implemented by the strategy matches the supplied exchange.
      Parameters:
      exchange - the source exchange
      context - a supplier for the initialized context (may throw an exception)
      Returns:
      if the exchange matches
    • ignoreApplicationContext

      protected boolean ignoreApplicationContext(ApplicationContext applicationContext)
      Returns if the ApplicationContext should be ignored and not used for matching. If this method returns true then the context will not be used and the matches method will return false.
      Parameters:
      applicationContext - the candidate application context
      Returns:
      if the application context should be ignored
      Since:
      2.2.5
    • getContext

      protected Supplier<C> getContext(ServerWebExchange exchange)
    • initialized

      protected void initialized(Supplier<C> context)
      Called once the context has been initialized.
      Parameters:
      context - a supplier for the initialized context (may throw an exception)