From b3db6fd2f8d6f5ac31f6e097fdacdc2085a83192 Mon Sep 17 00:00:00 2001 From: Tucker Siegel <tgsiegel@terpmail.umd.edu> Date: Thu, 6 Apr 2023 19:07:58 -0400 Subject: [PATCH] change up the filter --- .../common/filters/CaseInsensitiveFilter.java | 24 +---------- .../filters/CaseInsensitiveFilterWrapper.java | 41 +++++++++++++++++++ 2 files changed, 42 insertions(+), 23 deletions(-) create mode 100644 src/main/java/edu/umd/dawn/common/filters/CaseInsensitiveFilterWrapper.java diff --git a/src/main/java/edu/umd/dawn/common/filters/CaseInsensitiveFilter.java b/src/main/java/edu/umd/dawn/common/filters/CaseInsensitiveFilter.java index 57cc5d1..e95df9d 100644 --- a/src/main/java/edu/umd/dawn/common/filters/CaseInsensitiveFilter.java +++ b/src/main/java/edu/umd/dawn/common/filters/CaseInsensitiveFilter.java @@ -43,29 +43,7 @@ public class CaseInsensitiveFilter extends OncePerRequestFilter { } filterChain.doFilter( - new HttpServletRequestWrapper(request) { - @Override - public String getParameter(String name) { - return formattedParams.containsKey(name) - ? formattedParams.get(name)[0] - : null; - } - - @Override - public Enumeration<String> getParameterNames() { - return Collections.enumeration(formattedParams.keySet()); - } - - @Override - public String[] getParameterValues(String name) { - return formattedParams.get(name); - } - - @Override - public Map<String, String[]> getParameterMap() { - return formattedParams; - } - }, + new CaseInsensitiveFilterWrapper(request, formattedParams), response); if (invalidParameterCase.size() > 0) { diff --git a/src/main/java/edu/umd/dawn/common/filters/CaseInsensitiveFilterWrapper.java b/src/main/java/edu/umd/dawn/common/filters/CaseInsensitiveFilterWrapper.java new file mode 100644 index 0000000..9722cc0 --- /dev/null +++ b/src/main/java/edu/umd/dawn/common/filters/CaseInsensitiveFilterWrapper.java @@ -0,0 +1,41 @@ +package edu.umd.dawn.common.filters; + +import java.util.Collections; +import java.util.Enumeration; +import java.util.Map; + +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletRequestWrapper; + +public class CaseInsensitiveFilterWrapper extends HttpServletRequestWrapper { + + Map<String, String[]> formattedParams; + + public CaseInsensitiveFilterWrapper(HttpServletRequest request, Map<String, String[]> formattedParams) { + super(request); + this.formattedParams = formattedParams; + } + + @Override + public String getParameter(String name) { + return formattedParams.containsKey(name) + ? formattedParams.get(name)[0] + : null; + } + + @Override + public Enumeration<String> getParameterNames() { + return Collections.enumeration(formattedParams.keySet()); + } + + @Override + public String[] getParameterValues(String name) { + return formattedParams.get(name); + } + + @Override + public Map<String, String[]> getParameterMap() { + return formattedParams; + } + +} -- GitLab