From bc9b9bc477316162a5ffbfd580f66953f5397d74 Mon Sep 17 00:00:00 2001 From: May <50238322+thenx-wei@users.noreply.github.com> Date: Wed, 24 Jun 2020 19:54:17 +0800 Subject: [PATCH] Replace cascading if statements with switch statement Closes gh-25308 --- .../ViewControllerBeanDefinitionParser.java | 35 ++++++++++--------- 1 file changed, 18 insertions(+), 17 deletions(-) diff --git a/spring-webmvc/src/main/java/org/springframework/web/servlet/config/ViewControllerBeanDefinitionParser.java b/spring-webmvc/src/main/java/org/springframework/web/servlet/config/ViewControllerBeanDefinitionParser.java index 733822d14f..f08152d3f6 100644 --- a/spring-webmvc/src/main/java/org/springframework/web/servlet/config/ViewControllerBeanDefinitionParser.java +++ b/spring-webmvc/src/main/java/org/springframework/web/servlet/config/ViewControllerBeanDefinitionParser.java @@ -81,24 +81,25 @@ class ViewControllerBeanDefinitionParser implements BeanDefinitionParser { } String name = element.getLocalName(); - if (name.equals("view-controller")) { - if (element.hasAttribute("view-name")) { - controller.getPropertyValues().add("viewName", element.getAttribute("view-name")); - } - if (statusCode != null) { + switch (name) { + case "view-controller": + if (element.hasAttribute("view-name")) { + controller.getPropertyValues().add("viewName", element.getAttribute("view-name")); + } + if (statusCode != null) { + controller.getPropertyValues().add("statusCode", statusCode); + } + break; + case "redirect-view-controller": + controller.getPropertyValues().add("view", getRedirectView(element, statusCode, source)); + break; + case "status-controller": controller.getPropertyValues().add("statusCode", statusCode); - } - } - else if (name.equals("redirect-view-controller")) { - controller.getPropertyValues().add("view", getRedirectView(element, statusCode, source)); - } - else if (name.equals("status-controller")) { - controller.getPropertyValues().add("statusCode", statusCode); - controller.getPropertyValues().add("statusOnly", true); - } - else { - // Should never happen... - throw new IllegalStateException("Unexpected tag name: " + name); + controller.getPropertyValues().add("statusOnly", true); + break; + default: + // Should never happen... + throw new IllegalStateException("Unexpected tag name: " + name); } Map urlMap = (Map) hm.getPropertyValues().get("urlMap");