public Map act(Redirector redirector,
SourceResolver resolver,
Map objectModel,
String source,
Parameters parameters) throws Exception {
final Map results = new HashMap();
final Response response = ObjectModelHelper.getResponse(objectModel);
// Process local configuration parameters
final String[] names = parameters.getNames();
for (int i = 0; i < names.length; i++) {
response.setHeader(names[i],parameters.getParameter(names[i]));
results.put(names[i], parameters.getParameter(names[i]));
}
// Process global defaults, that are not overridden
for (int i = 0; i < defaults.length; i++) {
if (!results.containsKey(this.defaults[i])) {
response.setHeader((String) this.defaults[i], (String) this.settings.get(defaults[i]));
results.put(this.defaults[i], this.settings.get(defaults[i]));
}
}
return Collections.unmodifiableMap(results);
}
|