Skip to content

Commit

Permalink
Polishing
Browse files Browse the repository at this point in the history
  • Loading branch information
rstoyanchev committed Jun 14, 2022
1 parent 52d0681 commit d28d603
Showing 1 changed file with 6 additions and 21 deletions.
Expand Up @@ -154,35 +154,20 @@ public void afterPropertiesSet() throws Exception {
* current application context.
*/
private void initRouterFunctions() {
List<RouterFunction<?>> routerFunctions = routerFunctions();
List<RouterFunction<?>> routerFunctions = new ArrayList<>();
detectRouterFunctions(obtainApplicationContext(), routerFunctions);
this.routerFunction = routerFunctions.stream().reduce(RouterFunction::andOther).orElse(null);
logRouterFunctions(routerFunctions);
}

private List<RouterFunction<?>> routerFunctions() {
List<RouterFunction<?>> routerFunctions = new ArrayList<>();
if (this.detectHandlerFunctionsInAncestorContexts) {
detectRouterFunctionsInAncestorContexts(obtainApplicationContext(), routerFunctions);
private void detectRouterFunctions(ApplicationContext context, List<RouterFunction<?>> routerFunctions) {
if (this.detectHandlerFunctionsInAncestorContexts && context.getParent() != null) {
detectRouterFunctions(context.getParent(), routerFunctions);
}
obtainApplicationContext()
.getBeanProvider(RouterFunction.class)
context.getBeanProvider(RouterFunction.class)
.orderedStream()
.map(router -> (RouterFunction<?>) router)
.collect(Collectors.toCollection(() -> routerFunctions));
return routerFunctions;
}

private void detectRouterFunctionsInAncestorContexts(
ApplicationContext applicationContext, List<RouterFunction<?>> routerFunctions) {

ApplicationContext parentContext = applicationContext.getParent();
if (parentContext != null) {
detectRouterFunctionsInAncestorContexts(parentContext, routerFunctions);
parentContext.getBeanProvider(RouterFunction.class)
.orderedStream()
.map(router -> (RouterFunction<?>) router)
.collect(Collectors.toCollection(() -> routerFunctions));
}
}

private void logRouterFunctions(List<RouterFunction<?>> routerFunctions) {
Expand Down

0 comments on commit d28d603

Please sign in to comment.