From 73eafddd73ab20bfae8ec7c4bacf49bd0c5725ab Mon Sep 17 00:00:00 2001
From: Lukasz Lenart
* No intended extension point - * - * + * *
- * - * * <action name="sample" class="org.martingilday.Sample"> * <interceptor-ref name="paramRemover"> - * <param name="paramNames">aParam,anotherParam</param> - * <param name="paramValues">--,-1</param> + * <param name="paramNames">aParam,anotherParam</param> + * <param name="paramValues">--,-1</param> * </interceptor-ref> * <interceptor-ref name="defaultStack" /> * ... * </action> - * - * *- * - * - * @author martin.gilday */ public class ParameterRemoverInterceptor extends AbstractInterceptor { - private static final Logger LOG = LogManager.getLogger(ParameterRemoverInterceptor.class); + private static final Logger LOG = LogManager.getLogger(ParameterRemoverInterceptor.class); - private static final long serialVersionUID = 1; + private Set
paramNames and paramValues.
+ *
+ * @see com.opensymphony.xwork2.interceptor.AbstractInterceptor
+ */
+ @Override
+ public String intercept(ActionInvocation invocation) throws Exception {
+ if (!(invocation.getAction() instanceof NoParameters)
+ && (null != this.paramNames)) {
+ ActionContext ac = invocation.getInvocationContext();
+ HttpParameters parameters = ac.getParameters();
-
- /**
- * Decide if the parameter should be removed from the parameter map based on
- * paramNames and paramValues.
- *
- * @see com.opensymphony.xwork2.interceptor.AbstractInterceptor
- */
- @Override
- public String intercept(ActionInvocation invocation) throws Exception {
- if (!(invocation.getAction() instanceof NoParameters)
- && (null != this.paramNames)) {
- ActionContext ac = invocation.getInvocationContext();
- HttpParameters parameters = ac.getParameters();
-
- if (parameters != null) {
+ if (parameters != null) {
for (String removeName : paramNames) {
- try {
- Parameter parameter = parameters.get(removeName);
- if (parameter.isDefined() && this.paramValues.contains(parameter.getValue())) {
- parameters.remove(removeName);
- }
- } catch (Exception e) {
- LOG.error("Failed to convert parameter to string", e);
- }
+ try {
+ Parameter parameter = parameters.get(removeName);
+ if (parameter.isDefined() && this.paramValues.contains(parameter.getValue())) {
+ parameters.remove(removeName);
+ }
+ } catch (Exception e) {
+ LOG.error("Failed to convert parameter to string", e);
+ }
}
- }
- }
- return invocation.invoke();
- }
+ }
+ }
+ return invocation.invoke();
+ }
- /**
- * Allows paramNames attribute to be set as comma-separated-values (csv).
- *
- * @param paramNames the paramNames to set
- */
- public void setParamNames(String paramNames) {
- this.paramNames = TextParseUtil.commaDelimitedStringToSet(paramNames);
- }
+ /**
+ * Allows paramNames attribute to be set as comma-separated-values (csv).
+ *
+ * @param paramNames the paramNames to set
+ */
+ public void setParamNames(String paramNames) {
+ this.paramNames = TextParseUtil.commaDelimitedStringToSet(paramNames);
+ }
+ /**
+ * Allows paramValues attribute to be set as a comma-separated-values (csv).
+ *
+ * @param paramValues the paramValues to set
+ */
+ public void setParamValues(String paramValues) {
+ this.paramValues = TextParseUtil.commaDelimitedStringToSet(paramValues);
+ }
- /**
- * Allows paramValues attribute to be set as a comma-separated-values (csv).
- *
- * @param paramValues the paramValues to set
- */
- public void setParamValues(String paramValues) {
- this.paramValues = TextParseUtil.commaDelimitedStringToSet(paramValues);
- }
}
-
diff --git a/core/src/main/java/org/apache/struts2/interceptor/NoParameters.java b/core/src/main/java/org/apache/struts2/action/NoParameters.java
similarity index 96%
rename from core/src/main/java/org/apache/struts2/interceptor/NoParameters.java
rename to core/src/main/java/org/apache/struts2/action/NoParameters.java
index c42aa809b..80424a5f0 100644
--- a/core/src/main/java/org/apache/struts2/interceptor/NoParameters.java
+++ b/core/src/main/java/org/apache/struts2/action/NoParameters.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.struts2.interceptor;
+package org.apache.struts2.action;
/**
* This marker interface should be implemented by actions that do not want any parameters set on