001    package com.mockrunner.mock.web;
002    
003    import java.util.Enumeration;
004    import java.util.HashMap;
005    import java.util.Map;
006    import java.util.Vector;
007    
008    import javax.servlet.ServletConfig;
009    import javax.servlet.ServletContext;
010    
011    /**
012     * Mock implementation of <code>ServletConfig</code>.
013     */
014    public class MockServletConfig implements ServletConfig
015    {
016        private ServletContext servletContext;
017        private Map initParameters;
018        private String servletName;
019        
020        public MockServletConfig()
021        {
022            initParameters = new HashMap();
023        }
024    
025        public synchronized String getServletName()
026        {
027            return servletName;
028        }
029        
030        public synchronized void setServletName(String servletName)
031        {
032            this.servletName = servletName;
033        }
034    
035        public synchronized ServletContext getServletContext()
036        {
037            return servletContext;
038        }
039        
040        public synchronized void setServletContext(ServletContext servletContext)
041        {
042            this.servletContext = servletContext;
043        }
044        
045        public synchronized void clearInitParameters()
046        {
047            initParameters.clear();
048        }
049    
050        public synchronized String getInitParameter(String name)
051        {
052            return (String)initParameters.get(name);
053        }
054        
055        public synchronized void setInitParameter(String name, String value) 
056        {
057            initParameters.put(name, value);
058        }
059        
060        public synchronized void setInitParameters(Map parameters) 
061        {
062            initParameters.putAll(parameters);
063        }
064    
065        public synchronized Enumeration getInitParameterNames()
066        {
067            return new Vector(initParameters.keySet()).elements();
068        }
069    }