// a name
if (filterDef == null) {
filterDef = new FilterDef();
+ filterDef.setFilterName(filterName);
+ context.addFilterDef(filterDef);
} else {
if (filterDef.getFilterName() != null &&
filterDef.getFilterClass() != null) {
}
}
- // Name must already be set
if (filter == null) {
filterDef.setFilterClass(filterClass);
} else {
// a name
if (wrapper == null) {
wrapper = context.createWrapper();
+ wrapper.setName(servletName);
+ context.addChild(wrapper);
} else {
if (wrapper.getName() != null &&
wrapper.getServletClass() != null) {
}
}
- // Name must already be set
if (servlet == null) {
wrapper.setServletClass(servletClass);
} else {
@Override
public boolean setInitParameter(String name, String value) {
+
+ mergeParameters();
+
if (parameters.containsKey(name)) {
return false;
}
FilterMap filterMap = new FilterMap();
+ filterMap.setFilterName(filterDef.getFilterName());
+
if (dispatcherTypes != null) {
for (DispatcherType dispatcherType : dispatcherTypes) {
filterMap.setDispatcher(dispatcherType.name());
import java.util.Collection;
import java.util.Collections;
-import java.util.Enumeration;
import java.util.HashSet;
import java.util.Map;
import java.util.Set;
import javax.servlet.MultipartConfigElement;
-import javax.servlet.ServletConfig;
import javax.servlet.ServletRegistration;
import javax.servlet.ServletSecurityElement;
@Override
public String getInitParameter(String name) {
- return wrapper.getServlet().getServletConfig().getInitParameter(name);
+ return wrapper.findInitParameter(name);
}
@Override
public Map<String, String> getInitParameters() {
ParameterMap<String,String> result = new ParameterMap<String,String>();
- ServletConfig servletConfig = wrapper.getServlet().getServletConfig();
- Enumeration<String> parameterNames =
- servletConfig.getInitParameterNames();
- while (parameterNames.hasMoreElements()) {
- String parameterName = parameterNames.nextElement();
- result.put(parameterName,
- servletConfig.getInitParameter(parameterName));
+ String[] parameterNames = wrapper.findInitParameters();
+
+ for (String parameterName : parameterNames) {
+ result.put(parameterName, wrapper.findInitParameter(parameterName));
}
+
result.setLocked(true);
return result;
}
System.arraycopy(filterMaps, 0, results, 0, filterMapInsertPoint);
results[filterMapInsertPoint] = filterMap;
System.arraycopy(filterMaps, filterMapInsertPoint, results,
- filterMaps.length - filterMapInsertPoint+1,
- filterMapInsertPoint);
+ filterMaps.length - filterMapInsertPoint + 1,
+ filterMaps.length - filterMapInsertPoint);
filterMapInsertPoint++;
-
- results[filterMaps.length] = filterMap;
+
filterMaps = results;
}
fireContainerEvent("addFilterMap", filterMap);