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.FilterConfig;
009    import javax.servlet.ServletContext;
010    
011    /**
012     * Mock implementation of <code>FilterConfig</code>.
013     */
014    public class MockFilterConfig implements FilterConfig
015    {
016        private ServletContext context;
017        private Map initParameters;
018        private String name;
019        
020        public MockFilterConfig()
021        {
022            initParameters = new HashMap();
023        }
024    
025        public synchronized void setupServletContext(ServletContext context)
026        {
027            this.context = context;
028        }
029    
030        public synchronized String getFilterName()
031        {
032            return name;
033        }
034        
035        public synchronized void setFilterName(String name)
036        {
037            this.name = name;
038        }
039    
040        public synchronized ServletContext getServletContext()
041        {
042            return context;
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    }