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.public abstract class ApplicationContextServerWebExchangeMatcher<C> extends Object implements 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.ServerWebExchangeMatcher.MatchResult| Constructor and Description |
|---|
ApplicationContextServerWebExchangeMatcher(Class<? extends C> contextClass) |
| Modifier and Type | Method and Description |
|---|---|
protected Supplier<C> |
getContext(ServerWebExchange exchange) |
protected boolean |
ignoreApplicationContext(ApplicationContext applicationContext)
Returns if the
ApplicationContext should be ignored and not used for
matching. |
protected void |
initialized(Supplier<C> context)
Called once the context has been initialized.
|
reactor.core.publisher.Mono<ServerWebExchangeMatcher.MatchResult> |
matches(ServerWebExchange exchange) |
protected abstract reactor.core.publisher.Mono<ServerWebExchangeMatcher.MatchResult> |
matches(ServerWebExchange exchange,
Supplier<C> context)
Decides whether the rule implemented by the strategy matches the supplied exchange.
|
public final reactor.core.publisher.Mono<ServerWebExchangeMatcher.MatchResult> matches(ServerWebExchange exchange)
matches in interface ServerWebExchangeMatcherprotected abstract reactor.core.publisher.Mono<ServerWebExchangeMatcher.MatchResult> matches(ServerWebExchange exchange, Supplier<C> context)
exchange - the source exchangecontext - a supplier for the initialized context (may throw an exception)protected boolean ignoreApplicationContext(ApplicationContext applicationContext)
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.applicationContext - the candidate application contextprotected Supplier<C> getContext(ServerWebExchange exchange)