From 2759b4b909ab254ca2d6e3eb55a5b2374901c91b Mon Sep 17 00:00:00 2001 From: Sam Brannen Date: Fri, 21 Jun 2019 13:49:49 +0300 Subject: [PATCH] Avoid use of Stream API in ControllerAdviceBean --- .../web/method/ControllerAdviceBean.java | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/spring-web/src/main/java/org/springframework/web/method/ControllerAdviceBean.java b/spring-web/src/main/java/org/springframework/web/method/ControllerAdviceBean.java index ca4a1d319d..3f94f316fc 100644 --- a/spring-web/src/main/java/org/springframework/web/method/ControllerAdviceBean.java +++ b/spring-web/src/main/java/org/springframework/web/method/ControllerAdviceBean.java @@ -16,9 +16,8 @@ package org.springframework.web.method; -import java.util.Arrays; +import java.util.ArrayList; import java.util.List; -import java.util.stream.Collectors; import org.springframework.beans.factory.BeanFactory; import org.springframework.beans.factory.BeanFactoryUtils; @@ -42,6 +41,7 @@ import org.springframework.web.bind.annotation.ControllerAdvice; * @author Rossen Stoyanchev * @author Brian Clozel * @author Juergen Hoeller + * @author Sam Brannen * @since 3.2 */ public class ControllerAdviceBean implements Ordered { @@ -186,10 +186,13 @@ public class ControllerAdviceBean implements Ordered { * instances. */ public static List findAnnotatedBeans(ApplicationContext context) { - return Arrays.stream(BeanFactoryUtils.beanNamesForTypeIncludingAncestors(context, Object.class)) - .filter(name -> context.findAnnotationOnBean(name, ControllerAdvice.class) != null) - .map(name -> new ControllerAdviceBean(name, context)) - .collect(Collectors.toList()); + List adviceBeans = new ArrayList<>(); + for (String name : BeanFactoryUtils.beanNamesForTypeIncludingAncestors(context, Object.class)) { + if (context.findAnnotationOnBean(name, ControllerAdvice.class) != null) { + adviceBeans.add(new ControllerAdviceBean(name, context)); + } + } + return adviceBeans; } private static int initOrderFromBean(Object bean) {