From 294d3803983be9216055a4b2d5638fe4a7312834 Mon Sep 17 00:00:00 2001 From: Lukasz Lenart Date: Fri, 17 May 2013 18:58:39 +0000 Subject: [PATCH] WW-4068 Extracts method to accept parameter names to allow easier overriding git-svn-id: https://svn.apache.org/repos/asf/struts/struts2/trunk@1483950 13f79535-47bb-0310-9956-ffa450edef68 --- .../interceptor/ParametersInterceptor.java | 21 ++++++++++++------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/xwork-core/src/main/java/com/opensymphony/xwork2/interceptor/ParametersInterceptor.java b/xwork-core/src/main/java/com/opensymphony/xwork2/interceptor/ParametersInterceptor.java index 24df16995..de99148d1 100644 --- a/xwork-core/src/main/java/com/opensymphony/xwork2/interceptor/ParametersInterceptor.java +++ b/xwork-core/src/main/java/com/opensymphony/xwork2/interceptor/ParametersInterceptor.java @@ -273,9 +273,6 @@ public class ParametersInterceptor extends MethodFilterInterceptor { } protected void setParameters(Object action, ValueStack stack, final Map parameters) { - ParameterNameAware parameterNameAware = (action instanceof ParameterNameAware) - ? (ParameterNameAware) action : null; - Map params; Map acceptableParameters; if (ordered) { @@ -289,11 +286,7 @@ public class ParametersInterceptor extends MethodFilterInterceptor { for (Map.Entry entry : params.entrySet()) { String name = entry.getKey(); - - boolean acceptableName = acceptableName(name) - || (parameterNameAware != null && parameterNameAware.acceptableParameterName(name)); - - if (acceptableName) { + if (isAcceptableParameter(name, action)) { acceptableParameters.put(name, entry.getValue()); } } @@ -346,6 +339,18 @@ public class ParametersInterceptor extends MethodFilterInterceptor { addParametersToContext(ActionContext.getContext(), acceptableParameters); } + /** + * Checks if name of parameter can be accepted or thrown away + * + * @param name parameter name + * @param action current action + * @return true if parameter is accepted + */ + protected boolean isAcceptableParameter(String name, Object action) { + ParameterNameAware parameterNameAware = (action instanceof ParameterNameAware) ? (ParameterNameAware) action : null; + return acceptableName(name) || (parameterNameAware != null && parameterNameAware.acceptableParameterName(name)); + } + /** * Gets an instance of the comparator to use for the ordered sorting. Override this * method to customize the ordering of the parameters as they are set to the