1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.apache.commons.configuration.web;
19
20 import java.util.Iterator;
21 import java.util.List;
22 import javax.servlet.FilterConfig;
23
24 import org.apache.commons.collections.iterators.EnumerationIterator;
25 import org.apache.commons.configuration.PropertyConverter;
26
27 /***
28 * A configuration wrapper around a {@link FilterConfig}. This configuration is
29 * read only, adding or removing a property will throw an
30 * UnsupportedOperationException.
31 *
32 * @author <a href="mailto:ebourg@apache.org">Emmanuel Bourg</a>
33 * @version $Revision: 439648 $, $Date: 2006-09-02 22:42:10 +0200 (Sa, 02 Sep 2006) $
34 * @since 1.1
35 */
36 public class ServletFilterConfiguration extends BaseWebConfiguration
37 {
38 /*** Stores the wrapped filter config.*/
39 protected FilterConfig config;
40
41 /***
42 * Create a ServletFilterConfiguration using the filter initialization parameters.
43 *
44 * @param config the filter configuration
45 */
46 public ServletFilterConfiguration(FilterConfig config)
47 {
48 this.config = config;
49 }
50
51 public Object getProperty(String key)
52 {
53 Object value = config.getInitParameter(key);
54 if (!isDelimiterParsingDisabled())
55 {
56 List list = PropertyConverter.split((String) value, getListDelimiter());
57 value = list.size() > 1 ? list : value;
58 }
59
60 return value;
61 }
62
63 public Iterator getKeys()
64 {
65 return new EnumerationIterator(config.getInitParameterNames());
66 }
67 }