Skip to content

Commit 88cb126

Browse files
committed
Add RequestPredicate Visitor to WebFlux.fn
This commit introduces RequestPredicates.Visitor, an implementation of the visitor pattern for RequestPredicates. Issue: SPR-17322
1 parent f3c29fe commit 88cb126

File tree

5 files changed

+493
-76
lines changed

5 files changed

+493
-76
lines changed

spring-webflux/src/main/java/org/springframework/web/reactive/function/server/RequestPredicate.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,4 +84,15 @@ default Optional<ServerRequest> nest(ServerRequest request) {
8484
return (test(request) ? Optional.of(request) : Optional.empty());
8585
}
8686

87+
/**
88+
* Accept the given visitor. Default implementation calls
89+
* {@link RequestPredicates.Visitor#unknown(RequestPredicate)}; composed {@code RequestPredicate}
90+
* implementations are expected to call {@code accept} for all components that make up this
91+
* request predicate.
92+
* @param visitor the visitor to accept
93+
*/
94+
default void accept(RequestPredicates.Visitor visitor) {
95+
visitor.unknown(this);
96+
}
97+
8798
}

0 commit comments

Comments
 (0)