From 4288f99d1064f0a666a5fb392cdeb8a32a9a3bd2 Mon Sep 17 00:00:00 2001 From: michaelin007 Date: Fri, 9 Feb 2024 08:50:46 +0000 Subject: [PATCH] https://jira.baeldung.com/browse/BAEL-5235 --- .../dynamicrouter/DynamicRouterBean.java | 29 ++++++++++--------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/apache-libraries-2/src/main/java/com/baeldung/dynamicrouter/DynamicRouterBean.java b/apache-libraries-2/src/main/java/com/baeldung/dynamicrouter/DynamicRouterBean.java index 8bc455353b..a28c3959a4 100644 --- a/apache-libraries-2/src/main/java/com/baeldung/dynamicrouter/DynamicRouterBean.java +++ b/apache-libraries-2/src/main/java/com/baeldung/dynamicrouter/DynamicRouterBean.java @@ -6,22 +6,23 @@ import java.util.Map; public class DynamicRouterBean { public String route(String body, @ExchangeProperties Map properties) { - int invoked = 0; - Integer current = (Integer) properties.get("invoked"); - if (current != null) { - invoked = current; - } - invoked++; + int invoked = (int) properties.getOrDefault("invoked", 0) + 1; + properties.put("invoked", invoked); - if (body.equalsIgnoreCase("mock") && invoked == 1) { - return "mock:dynamicRouter"; - } else if (body.equalsIgnoreCase("direct") && invoked == 1) { - return "mock:directDynamicRouter"; - } else if (body.equalsIgnoreCase("seda") && invoked == 1) { - return "mock:sedaDynamicRouter"; - } else if (body.equalsIgnoreCase("file") && invoked == 1) { - return "mock:fileDynamicRouter"; + if (invoked == 1) { + switch (body.toLowerCase()) { + case "mock": + return "mock:dynamicRouter"; + case "direct": + return "mock:directDynamicRouter"; + case "seda": + return "mock:sedaDynamicRouter"; + case "file": + return "mock:fileDynamicRouter"; + default: + break; + } } return null; }