package com.qianwen.smartman.common.request; import java.util.Collections; import java.util.Enumeration; import java.util.HashMap; import java.util.List; import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequestWrapper; public class HeaderHttpServletRequestWrapper extends HttpServletRequestWrapper { private Map headers; public HeaderHttpServletRequestWrapper(HttpServletRequest request) { super(request); this.headers = new HashMap<>(); } public void addHeader(String name, String value) { this.headers.put(name, value); } public String getHeader(String name) { String value = super.getHeader(name); if (this.headers.containsKey(name)) { value = this.headers.get(name); } return value; } public Enumeration getHeaderNames() { List names = Collections.list(super.getHeaderNames()); names.addAll(this.headers.keySet()); return Collections.enumeration(names); } public Enumeration getHeaders(String name) { List list = Collections.list(super.getHeaders(name)); if (this.headers.containsKey(name)) { list.add(this.headers.get(name)); } return Collections.enumeration(list); } }