1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 package info.magnolia.module.blossom.support;
35
36 import java.util.Collections;
37 import java.util.Enumeration;
38 import java.util.LinkedHashMap;
39 import java.util.Map;
40 import javax.servlet.FilterConfig;
41 import javax.servlet.ServletConfig;
42 import javax.servlet.ServletContext;
43
44
45
46
47
48
49 public class CustomFilterConfig implements FilterConfig {
50
51 private String filterName;
52 private ServletContext servletContext;
53 private Map<String, String> initParameters;
54
55 public CustomFilterConfig(String filterName, ServletContext servletContext, Map<String, String> initParameters) {
56 this.filterName = filterName;
57 this.servletContext = servletContext;
58 this.initParameters = initParameters;
59 }
60
61 public CustomFilterConfig(String filterName, ServletContext servletContext) {
62 this(filterName, servletContext, new LinkedHashMap<String, String>());
63 }
64
65 public CustomFilterConfig(FilterConfig config) {
66 this(config.getFilterName(), config.getServletContext(), ServletApiUtils.initParametersToMap(config));
67 }
68
69 public CustomFilterConfig(ServletConfig config) {
70 this(config.getServletName(), config.getServletContext(), ServletApiUtils.initParametersToMap(config));
71 }
72
73 @Override
74 public String getFilterName() {
75 return filterName;
76 }
77
78 @Override
79 public ServletContext getServletContext() {
80 return servletContext;
81 }
82
83 @Override
84 public String getInitParameter(String name) {
85 return initParameters.get(name);
86 }
87
88 @Override
89 public Enumeration getInitParameterNames() {
90 return Collections.enumeration(initParameters.keySet());
91 }
92
93 public void addInitParameters(Map<String, String> map) {
94 this.initParameters.putAll(map);
95 }
96
97 public void addInitParameter(String name, String value) {
98 this.initParameters.put(name, value);
99 }
100
101 public String removeInitParameter(String name) {
102 return initParameters.remove(name);
103 }
104 }