public class FilterMap implements Serializable {
- private static final long serialVersionUID = 1L;
-
+
// ------------------------------------------------------------- Properties
+ private static final long serialVersionUID = 1L;
+
/**
* The name of this filter to be executed when this mapping matches
* a particular request.
}
}
- public void addServletNames(String[] servletNames) {
- if (servletNames != null) {
- for (int i = 0; i < servletNames.length; i++) {
- addServletName(servletNames[i]);
- }
- }
- }
-
-
/**
* The flag that indicates this mapping will match all url-patterns
}
}
- public void addUrlPatterns(String[] urlPatterns) {
- if (urlPatterns != null) {
- for (int i = 0; i < urlPatterns.length; i++) {
- addURLPattern(urlPatterns[i]);
- }
- }
- }
-
/**
*
* This method will be used to set the current state of the FilterMap
else return dispatcherMapping;
}
- public void addDispatcherMapping(int dispatcherMapping) {
- // Merge the supplied mapping with the current mapping
- this.dispatcherMapping = getDispatcherMapping() | dispatcherMapping;
- }
// --------------------------------------------------------- Public Methods
public Map<String,FilterDef> getFilters() { return filters; }
// filter-mapping
- private Map<String,FilterMap> filterMaps = new HashMap<String,FilterMap>();
+ private Set<FilterMap> filterMaps = new LinkedHashSet<FilterMap>();
public void addFilterMapping(FilterMap filterMap) {
- filterMaps.put(filterMap.getFilterName(),filterMap);
+ filterMaps.add(filterMap);
}
- public Map<String,FilterMap> getFilterMappings() { return filterMaps; }
+ public Set<FilterMap> getFilterMappings() { return filterMaps; }
// listener
// TODO: description (multiple with language) is ignored
for (FilterDef filter : filters.values()) {
context.addFilterDef(filter);
}
- for (FilterMap filterMap : filterMaps.values()) {
+ for (FilterMap filterMap : filterMaps) {
context.addFilterMap(filterMap);
}
// jsp-property-group needs to be after servlet configuration
errorPages.putAll(temp.getErrorPages());
for (WebXml fragment : fragments) {
- for (String filterName : fragment.getFilterMappings().keySet()) {
- FilterMap filterMap =
- fragment.getFilterMappings().get(filterName);
+ for (FilterMap filterMap : fragment.getFilterMappings()) {
// Always additive
- if (filterMaps.containsKey(filterName)) {
- FilterMap appFilterMap = filterMaps.get(filterName);
-
- appFilterMap.addDispatcherMapping(
- filterMap.getDispatcherMapping());
- appFilterMap.addServletNames(filterMap.getServletNames());
- appFilterMap.addUrlPatterns(filterMap.getURLPatterns());
- } else {
- addFilterMapping(filterMap);
- }
+ addFilterMapping(filterMap);
}
}