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 javax.servlet.Servlet;
22 import javax.servlet.ServletConfig;
23
24 import org.apache.commons.collections.iterators.EnumerationIterator;
25
26 /***
27 * A configuration wrapper around a {@link ServletConfig}. This configuration
28 * is read only, adding or removing a property will throw an
29 * UnsupportedOperationException.
30 *
31 * @author <a href="mailto:ebourg@apache.org">Emmanuel Bourg</a>
32 * @version $Revision: 515306 $, $Date: 2007-03-06 22:15:00 +0100 (Di, 06 Mrz 2007) $
33 * @since 1.1
34 */
35 public class ServletConfiguration extends BaseWebConfiguration
36 {
37 /*** Stores a reference to the wrapped <code>ServletConfig</code>.*/
38 protected ServletConfig config;
39
40 /***
41 * Create a ServletConfiguration using the initialization parameter of
42 * the specified servlet.
43 *
44 * @param servlet the servlet
45 */
46 public ServletConfiguration(Servlet servlet)
47 {
48 this(servlet.getServletConfig());
49 }
50
51 /***
52 * Create a ServletConfiguration using the servlet initialization parameters.
53 *
54 * @param config the servlet configuration
55 */
56 public ServletConfiguration(ServletConfig config)
57 {
58 this.config = config;
59 }
60
61 public Object getProperty(String key)
62 {
63 return handleDelimiters(config.getInitParameter(key));
64 }
65
66 public Iterator getKeys()
67 {
68 return new EnumerationIterator(config.getInitParameterNames());
69 }
70 }